diff --git a/autosubmit/job/job_packages.py b/autosubmit/job/job_packages.py index 11d206d15b076797916a7be9c92f005113016d5f..3bcd70ec57bccafd09944c189ecc5e14f570b85d 100644 --- a/autosubmit/job/job_packages.py +++ b/autosubmit/job/job_packages.py @@ -381,7 +381,8 @@ class JobPackageVertical(JobPackageThread): def _common_script_content(self): return self.platform.wrapper.vertical(self._name, self._queue, self._project, self._wallclock, self._num_processors, - self._jobs_scripts, self._job_dependency, expid=self._expid) + self._jobs_scripts, self._job_dependency, expid=self._expid, + rootdir=self.platform.root_dir) class JobPackageHorizontal(JobPackageThread): @@ -402,4 +403,5 @@ class JobPackageHorizontal(JobPackageThread): def _common_script_content(self): return self.platform.wrapper.horizontal(self._name, self._queue, self._project, self._wallclock, self._num_processors, len(self.jobs), self._jobs_scripts, - self._job_dependency, expid=self._expid) + self._job_dependency, expid=self._expid, + rootdir=self.platform.root_dir) diff --git a/autosubmit/platforms/wrappers/ec_wrapper.py b/autosubmit/platforms/wrappers/ec_wrapper.py index 71ffdf57c3a93cbac834b6af06dcc5bf2afe385a..418c8af3ab13f7257d56780573e63cb75a2bbc81 100644 --- a/autosubmit/platforms/wrappers/ec_wrapper.py +++ b/autosubmit/platforms/wrappers/ec_wrapper.py @@ -21,6 +21,7 @@ import textwrap # TODO: Refactor with kwargs +# TODO: Project is not EC_billing_account, use budget class EcWrapper(object): """Class to handle wrappers on ECMWF platform""" @@ -35,8 +36,8 @@ class EcWrapper(object): #PBS -N {0} #PBS -q {1} #PBS -l EC_billing_account={2} - #PBS -o $SCRATCH/{6}/LOG_{6}/{0}.out - #PBS -o $SCRATCH/{6}/LOG_{6}/{0}.err + #PBS -o {8}/LOG_{6}/{0}.out + #PBS -e {8}/LOG_{6}/{0}.err #PBS -l walltime={3}:00 #PBS -l EC_total_tasks={4} #PBS -l EC_hyperthreads=1 @@ -66,12 +67,13 @@ class EcWrapper(object): echo "The job $script has been COMPLETED" else echo "The job $script has FAILED" + exit 1 fi i=$((i+1)) done """.format(filename, queue, project, wallclock, num_procs, ' '.join(str(s) for s in job_scripts), kwargs['expid'], - cls.dependency_directive(dependency))) + cls.dependency_directive(dependency), kwargs['rootdir'])) @classmethod def horizontal(cls, filename, queue, project, wallclock, num_procs, _, job_scripts, dependency, **kwargs): @@ -84,8 +86,8 @@ class EcWrapper(object): #PBS -N {0} #PBS -q {1} #PBS -l EC_billing_account={2} - #PBS -o $SCRATCH/{6}/LOG_{6}/{0}.out - #PBS -e $SCRATCH/{6}/LOG_{6}/{0}.err + #PBS -o {8}/LOG_{6}/{0}.out + #PBS -e {8}/LOG_{6}/{0}.err #PBS -l walltime={3}:00 #PBS -l EC_total_tasks={4} #PBS -l EC_hyperthreads=1 @@ -125,7 +127,7 @@ class EcWrapper(object): done """.format(filename, queue, project, wallclock, num_procs, ' '.join(str(s) for s in job_scripts), kwargs['expid'], - cls.dependency_directive(dependency))) + cls.dependency_directive(dependency), kwargs['rootdir'])) @classmethod def dependency_directive(cls, dependency):