From abcd944175c1f2a783969dc71cc29915c4e8759a Mon Sep 17 00:00:00 2001
From: ahmedk <karim.ahmed@xfel.eu>
Date: Thu, 25 Nov 2021 10:32:06 +0100
Subject: [PATCH] Fix / report_slurm_partition to switch requirements for xcal
 and users

---
 src/xfel_calibrate/calibrate.py   | 5 +++--
 src/xfel_calibrate/nb_args.py     | 3 +++
 webservice/config/webservice.yaml | 2 ++
 3 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/src/xfel_calibrate/calibrate.py b/src/xfel_calibrate/calibrate.py
index 26e45f0fe..4a2f521ef 100755
--- a/src/xfel_calibrate/calibrate.py
+++ b/src/xfel_calibrate/calibrate.py
@@ -238,7 +238,7 @@ def run_finalize(fmt_args, temp_path, job_list, sequential=False):
             '--open-mode=append',  # So we can see if it's preempted & requeued
             '--job-name', 'xfel-cal-finalize',
             '--time', finalize_time_limit,
-            '--partition', 'upex-middle',
+            '--partition', fmt_args['report_partition'],
             "--dependency=afterany:" + ":".join(str(j) for j in job_list),
         ]
         print(" ".join(cmd))
@@ -848,7 +848,8 @@ def run(argv=None):
                 'report_to': report_to,
                 'in_folder': folder,
                 'request_time': request_time,
-                'submission_time': submission_time
+                'submission_time': submission_time,
+                'report_partition': args['report_slurm_partition'],
                 }
 
     joblist.append(run_finalize(
diff --git a/src/xfel_calibrate/nb_args.py b/src/xfel_calibrate/nb_args.py
index 511223ed6..33ccc931e 100644
--- a/src/xfel_calibrate/nb_args.py
+++ b/src/xfel_calibrate/nb_args.py
@@ -103,6 +103,9 @@ def make_initial_parser(**kwargs):
     parser.add_argument('--slurm-partition', type=str, default="",
                         help="Submit jobs in this Slurm partition")
 
+    parser.add_argument('--report-slurm-partition', type=str, default="exfel",
+                        help="Submit jobs in this Slurm partition")
+
     parser.add_argument('--reservation', type=str, default="",
                         help="Submit jobs in this Slurm reservation, "
                              "overriding --slurm-partition if both are set")
diff --git a/webservice/config/webservice.yaml b/webservice/config/webservice.yaml
index 26d74e07c..7d83e8d1e 100644
--- a/webservice/config/webservice.yaml
+++ b/webservice/config/webservice.yaml
@@ -36,6 +36,7 @@ correct:
         python -m xfel_calibrate.calibrate {detector} CORRECT
         --slurm-scheduling {sched_prio}
         --slurm-partition upex-middle
+        --report-slurm-partition upex-middle
         --request-time {request_time}
         --slurm-name {action}_{instrument}_{detector}_{cycle}_p{proposal}_{runs}
         --report-to /gpfs/exfel/exp/{instrument}/{cycle}/p{proposal}/usr/Reports/{runs}/{det_instance}_{action}_{proposal}_{runs}_{time_stamp}
@@ -51,6 +52,7 @@ dark:
         --concurrency-par karabo_da
         --slurm-scheduling {sched_prio}
         --slurm-partition upex-high
+        --report-slurm-partition upex-middle
         --request-time {request_time}
         --slurm-name {action}_{instrument}_{detector}_{cycle}_p{proposal}_{runs}
         --report-to /gpfs/exfel/d/cal/caldb_store/xfel/reports/{instrument}/{det_instance}/{action}/{action}_{proposal}_{runs}_{time_stamp}
-- 
GitLab