lsst-ctrl-execute 29.2025.1400__tar.gz → 29.2025.2100__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/PKG-INFO +1 -1
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/python/lsst/ctrl/execute/allocatorParser.py +18 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/python/lsst/ctrl/execute/slurmPlugin.py +10 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/tests/test_allocatorParser.py +6 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/.github/workflows/build.yaml +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/.github/workflows/formatting.yaml +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/.github/workflows/rebase_checker.yaml +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/.gitignore +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/.pre-commit-config.yaml +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/SConstruct +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/etc/configs/gordon_config.py +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/etc/configs/lsst_config.py +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/etc/scripts/generateDag.py +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/pyproject.toml +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/python/lsst/__init__.py +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/python/lsst/ctrl/__init__.py +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/python/lsst/ctrl/execute/__init__.py +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/python/lsst/ctrl/execute/allocationConfig.py +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/python/lsst/ctrl/execute/allocator.py +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/python/lsst/ctrl/execute/condorConfig.py +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/python/lsst/ctrl/execute/condorInfoConfig.py +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/python/lsst/ctrl/execute/envString.py +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/python/lsst/ctrl/execute/findPackageFile.py +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/python/lsst/ctrl/execute/libexec/allocateNodes.py +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/python/lsst/ctrl/execute/libexec/dagIdInfo.py +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/python/lsst/ctrl/execute/libexec/qdelete.py +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/python/lsst/ctrl/execute/libexec/qstatus.py +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/python/lsst/ctrl/execute/namedClassFactory.py +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/python/lsst/ctrl/execute/pbsPlugin.py +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/python/lsst/ctrl/execute/qCommand.py +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/python/lsst/ctrl/execute/seqFile.py +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/python/lsst/ctrl/execute/templateWriter.py +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/setup.cfg +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/tests/README +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/tests/SConscript +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/tests/test_allocationConfig.py +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/tests/test_condorConfig.py +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/tests/test_condorInfoConfig.py +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/tests/test_dagIdInfo.py +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/tests/test_findPackageFile.py +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/tests/test_seqFile.py +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/tests/test_slurmPlugin.py +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/tests/test_templateWriter.py +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/tests/testfiles/allocator-info1.py +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/tests/testfiles/config_allocation.py +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/tests/testfiles/config_allocation_slurm.py +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/tests/testfiles/config_asserts.py +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/tests/testfiles/config_condor.py +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/tests/testfiles/config_condorInfo.py +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/tests/testfiles/config_condor_getenv.py +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/tests/testfiles/config_condor_setups.py +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/tests/testfiles/config_condor_slurm.py +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/tests/testfiles/config_execconfig.py +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/tests/testfiles/config_pegasus.py +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/tests/testfiles/generic.pbs.template +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/tests/testfiles/generic.pbs.txt +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/tests/testfiles/generic.slurm.template +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/tests/testfiles/generic.slurm.txt +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/tests/testfiles/glidein_condor_config.template +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/tests/testfiles/glidein_condor_config.txt +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/tests/testfiles/templateWriter.template +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/tests/testfiles/templateWriter.txt +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/tests/testfiles/test.diamond.dag +0 -0
- {lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/ups/ctrl_execute.table +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: lsst-ctrl-execute
|
|
3
|
-
Version: 29.2025.
|
|
3
|
+
Version: 29.2025.2100
|
|
4
4
|
Summary: Utilities for executing and managing workloads.
|
|
5
5
|
Project-URL: Homepage, https://github.com/lsst/ctrl_execute
|
|
6
6
|
Author-email: Rubin Observatory Data Management <dm-admin@lists.lsst.org>
|
|
@@ -178,6 +178,24 @@ class AllocatorParser:
|
|
|
178
178
|
dest="packnodes",
|
|
179
179
|
help="encourage nodes to pack jobs rather than spread",
|
|
180
180
|
)
|
|
181
|
+
parser.add_argument(
|
|
182
|
+
"--exclude",
|
|
183
|
+
action="store",
|
|
184
|
+
default=None,
|
|
185
|
+
dest="exclude",
|
|
186
|
+
help="machine name(s) to exclude Slurm jobs from",
|
|
187
|
+
type=str,
|
|
188
|
+
required=False,
|
|
189
|
+
)
|
|
190
|
+
parser.add_argument(
|
|
191
|
+
"--nodelist",
|
|
192
|
+
action="store",
|
|
193
|
+
default=None,
|
|
194
|
+
dest="nodelist",
|
|
195
|
+
help="machine name(s) to target Slurm jobs toward",
|
|
196
|
+
type=str,
|
|
197
|
+
required=False,
|
|
198
|
+
)
|
|
181
199
|
parser.add_argument(
|
|
182
200
|
"--exclusive",
|
|
183
201
|
action="store_true",
|
|
@@ -214,6 +214,16 @@ class SlurmPlugin(Allocator):
|
|
|
214
214
|
else:
|
|
215
215
|
self.defaults["RESERVATION"] = ""
|
|
216
216
|
|
|
217
|
+
if self.opts.exclude is not None:
|
|
218
|
+
self.defaults["EXCLUDE"] = f"#SBATCH --exclude {self.opts.exclude}"
|
|
219
|
+
else:
|
|
220
|
+
self.defaults["EXCLUDE"] = ""
|
|
221
|
+
|
|
222
|
+
if self.opts.nodelist is not None:
|
|
223
|
+
self.defaults["NODELIST"] = f"#SBATCH --nodelist {self.opts.nodelist}"
|
|
224
|
+
else:
|
|
225
|
+
self.defaults["NODELIST"] = ""
|
|
226
|
+
|
|
217
227
|
if self.opts.exclusive is not None:
|
|
218
228
|
self.defaults["EXCLUSIVE"] = "#SBATCH --exclusive"
|
|
219
229
|
else:
|
{lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/tests/test_allocatorParser.py
RENAMED
|
@@ -42,6 +42,10 @@ class TestAllocatorParser(lsst.utils.tests.TestCase):
|
|
|
42
42
|
"12",
|
|
43
43
|
"-m",
|
|
44
44
|
"00:30:00",
|
|
45
|
+
"--exclude",
|
|
46
|
+
"sdfmilan003",
|
|
47
|
+
"--nodelist",
|
|
48
|
+
"sdfmilan004",
|
|
45
49
|
"-q",
|
|
46
50
|
"normal",
|
|
47
51
|
"-O",
|
|
@@ -57,6 +61,8 @@ class TestAllocatorParser(lsst.utils.tests.TestCase):
|
|
|
57
61
|
self.assertEqual(args.nodeCount, 64)
|
|
58
62
|
self.assertEqual(args.cpus, 12)
|
|
59
63
|
self.assertEqual(args.maximumWallClock, "00:30:00")
|
|
64
|
+
self.assertEqual(args.exclude, "sdfmilan003")
|
|
65
|
+
self.assertEqual(args.nodelist, "sdfmilan004")
|
|
60
66
|
self.assertEqual(args.queue, "normal")
|
|
61
67
|
self.assertEqual(args.outputLog, "outlog")
|
|
62
68
|
self.assertEqual(args.errorLog, "errlog")
|
{lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/.github/workflows/build.yaml
RENAMED
|
File without changes
|
{lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/.github/workflows/formatting.yaml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/etc/configs/gordon_config.py
RENAMED
|
File without changes
|
{lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/etc/configs/lsst_config.py
RENAMED
|
File without changes
|
{lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/etc/scripts/generateDag.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/python/lsst/ctrl/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/tests/test_allocationConfig.py
RENAMED
|
File without changes
|
{lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/tests/test_condorConfig.py
RENAMED
|
File without changes
|
{lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/tests/test_condorInfoConfig.py
RENAMED
|
File without changes
|
|
File without changes
|
{lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/tests/test_findPackageFile.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/tests/test_templateWriter.py
RENAMED
|
File without changes
|
{lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/tests/testfiles/allocator-info1.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/tests/testfiles/config_asserts.py
RENAMED
|
File without changes
|
{lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/tests/testfiles/config_condor.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/tests/testfiles/config_pegasus.py
RENAMED
|
File without changes
|
|
File without changes
|
{lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/tests/testfiles/generic.pbs.txt
RENAMED
|
File without changes
|
|
File without changes
|
{lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/tests/testfiles/generic.slurm.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/tests/testfiles/templateWriter.txt
RENAMED
|
File without changes
|
{lsst_ctrl_execute-29.2025.1400 → lsst_ctrl_execute-29.2025.2100}/tests/testfiles/test.diamond.dag
RENAMED
|
File without changes
|
|
File without changes
|