From 8766bd14e632728c01d932ecff733ec72af01211 Mon Sep 17 00:00:00 2001 From: rafael Date: Tue, 28 Jun 2022 15:54:37 +0200 Subject: [PATCH 1/2] add resources to the build job --- reframe/core/pipeline.py | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/reframe/core/pipeline.py b/reframe/core/pipeline.py index 9a8f94f608..c119085ffd 100644 --- a/reframe/core/pipeline.py +++ b/reframe/core/pipeline.py @@ -1779,6 +1779,11 @@ def compile(self): f'systems/0/partitions/@{self.current_partition.name}' f'/time_limit') ) + # Get job options from managed resources and prepend them to + # build_job_opts. We want any user supplied options to be able to + # override those set by the framework. + resources_opts = self._map_resources_to_options() + self._build_job.options = resources_opts + self._build_job.options with osext.change_dir(self._stagedir): # Prepare build job build_commands = [ @@ -1921,11 +1926,7 @@ def _get_cp_env(): # Get job options from managed resources and prepend them to # job_opts. We want any user supplied options to be able to # override those set by the framework. - resources_opts = [] - for r, v in self.extra_resources.items(): - resources_opts.extend( - self._current_partition.get_resource(r, **v)) - + resources_opts = self._map_resources_to_options() self._job.options = resources_opts + self._job.options with osext.change_dir(self._stagedir): try: @@ -1949,6 +1950,14 @@ def _get_cp_env(): if self.job.sched_flex_alloc_nodes: self.num_tasks = self.job.num_tasks + def _map_resources_to_options(self): + resources_opts = [] + for r, v in self.extra_resources.items(): + resources_opts.extend( + self._current_partition.get_resource(r, **v)) + + return resources_opts + @final def compile_complete(self): '''Check if the build phase has completed. From 8e864ac38a82be91866e083620546cf1d863dbb0 Mon Sep 17 00:00:00 2001 From: Vasileios Karakasis Date: Tue, 12 Jul 2022 12:35:57 +0300 Subject: [PATCH 2/2] Minor style changes --- reframe/core/pipeline.py | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/reframe/core/pipeline.py b/reframe/core/pipeline.py index c119085ffd..8612e0e0a8 100644 --- a/reframe/core/pipeline.py +++ b/reframe/core/pipeline.py @@ -1782,7 +1782,7 @@ def compile(self): # Get job options from managed resources and prepend them to # build_job_opts. We want any user supplied options to be able to # override those set by the framework. - resources_opts = self._map_resources_to_options() + resources_opts = self._map_resources_to_jobopts() self._build_job.options = resources_opts + self._build_job.options with osext.change_dir(self._stagedir): # Prepare build job @@ -1926,7 +1926,7 @@ def _get_cp_env(): # Get job options from managed resources and prepend them to # job_opts. We want any user supplied options to be able to # override those set by the framework. - resources_opts = self._map_resources_to_options() + resources_opts = self._map_resources_to_jobopts() self._job.options = resources_opts + self._job.options with osext.change_dir(self._stagedir): try: @@ -1950,11 +1950,10 @@ def _get_cp_env(): if self.job.sched_flex_alloc_nodes: self.num_tasks = self.job.num_tasks - def _map_resources_to_options(self): + def _map_resources_to_jobopts(self): resources_opts = [] for r, v in self.extra_resources.items(): - resources_opts.extend( - self._current_partition.get_resource(r, **v)) + resources_opts += self._current_partition.get_resource(r, **v) return resources_opts