dkist-processing-ops 1.10.25__tar.gz → 1.10.26__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.
Files changed (34) hide show
  1. {dkist_processing_ops-1.10.25 → dkist_processing_ops-1.10.26}/PKG-INFO +9 -6
  2. {dkist_processing_ops-1.10.25 → dkist_processing_ops-1.10.26}/dkist_processing_ops/_version.py +3 -3
  3. {dkist_processing_ops-1.10.25 → dkist_processing_ops-1.10.26}/dkist_processing_ops/tasks/__init__.py +1 -0
  4. dkist_processing_ops-1.10.26/dkist_processing_ops/tasks/exercise_gpu.py +22 -0
  5. {dkist_processing_ops-1.10.25 → dkist_processing_ops-1.10.26}/dkist_processing_ops/workflows/smoke.py +16 -0
  6. {dkist_processing_ops-1.10.25 → dkist_processing_ops-1.10.26}/dkist_processing_ops.egg-info/PKG-INFO +9 -6
  7. {dkist_processing_ops-1.10.25 → dkist_processing_ops-1.10.26}/dkist_processing_ops.egg-info/SOURCES.txt +1 -0
  8. {dkist_processing_ops-1.10.25 → dkist_processing_ops-1.10.26}/dkist_processing_ops.egg-info/requires.txt +9 -5
  9. {dkist_processing_ops-1.10.25 → dkist_processing_ops-1.10.26}/dkist_processing_ops.egg-info/scm_file_list.json +1 -0
  10. dkist_processing_ops-1.10.26/dkist_processing_ops.egg-info/scm_version.json +8 -0
  11. {dkist_processing_ops-1.10.25 → dkist_processing_ops-1.10.26}/pyproject.toml +11 -7
  12. dkist_processing_ops-1.10.25/dkist_processing_ops.egg-info/scm_version.json +0 -8
  13. {dkist_processing_ops-1.10.25 → dkist_processing_ops-1.10.26}/.gitignore +0 -0
  14. {dkist_processing_ops-1.10.25 → dkist_processing_ops-1.10.26}/.pre-commit-config.yaml +0 -0
  15. {dkist_processing_ops-1.10.25 → dkist_processing_ops-1.10.26}/.rovodev/.review-agent.md +0 -0
  16. {dkist_processing_ops-1.10.25 → dkist_processing_ops-1.10.26}/.snyk +0 -0
  17. {dkist_processing_ops-1.10.25 → dkist_processing_ops-1.10.26}/LICENSE.rst +0 -0
  18. {dkist_processing_ops-1.10.25 → dkist_processing_ops-1.10.26}/MANIFEST.in +0 -0
  19. {dkist_processing_ops-1.10.25 → dkist_processing_ops-1.10.26}/README.rst +0 -0
  20. {dkist_processing_ops-1.10.25 → dkist_processing_ops-1.10.26}/bitbucket-pipelines.yml +0 -0
  21. {dkist_processing_ops-1.10.25 → dkist_processing_ops-1.10.26}/dkist_processing_ops/__init__.py +0 -0
  22. {dkist_processing_ops-1.10.25 → dkist_processing_ops-1.10.26}/dkist_processing_ops/config.py +0 -0
  23. {dkist_processing_ops-1.10.25 → dkist_processing_ops-1.10.26}/dkist_processing_ops/dags/scale.py +0 -0
  24. {dkist_processing_ops-1.10.25 → dkist_processing_ops-1.10.26}/dkist_processing_ops/tasks/read_memory_leak.py +0 -0
  25. {dkist_processing_ops-1.10.25 → dkist_processing_ops-1.10.26}/dkist_processing_ops/tasks/smoke.py +0 -0
  26. {dkist_processing_ops-1.10.25 → dkist_processing_ops-1.10.26}/dkist_processing_ops/tasks/wait.py +0 -0
  27. {dkist_processing_ops-1.10.25 → dkist_processing_ops-1.10.26}/dkist_processing_ops/tests/__init__.py +0 -0
  28. {dkist_processing_ops-1.10.25 → dkist_processing_ops-1.10.26}/dkist_processing_ops/tests/test_workflows.py +0 -0
  29. {dkist_processing_ops-1.10.25 → dkist_processing_ops-1.10.26}/dkist_processing_ops/workflows/__init__.py +0 -0
  30. {dkist_processing_ops-1.10.25 → dkist_processing_ops-1.10.26}/dkist_processing_ops/workflows/memory_leak.py +0 -0
  31. {dkist_processing_ops-1.10.25 → dkist_processing_ops-1.10.26}/dkist_processing_ops.egg-info/dependency_links.txt +0 -0
  32. {dkist_processing_ops-1.10.25 → dkist_processing_ops-1.10.26}/dkist_processing_ops.egg-info/not-zip-safe +0 -0
  33. {dkist_processing_ops-1.10.25 → dkist_processing_ops-1.10.26}/dkist_processing_ops.egg-info/top_level.txt +0 -0
  34. {dkist_processing_ops-1.10.25 → dkist_processing_ops-1.10.26}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: dkist-processing-ops
3
- Version: 1.10.25
3
+ Version: 1.10.26
4
4
  Summary: Automated Processing smoke test and operations workflows
5
5
  Author-email: NSO / AURA <dkistdc@nso.edu>
6
6
  License: BSD 3-Clause
@@ -17,6 +17,9 @@ Provides-Extra: test
17
17
  Requires-Dist: pytest; extra == "test"
18
18
  Requires-Dist: pytest-cov; extra == "test"
19
19
  Requires-Dist: pytest-xdist; extra == "test"
20
+ Requires-Dist: dkist-processing-ops[gpu]; extra == "test"
21
+ Provides-Extra: gpu
22
+ Requires-Dist: cupy-cuda12x[ctk]==14.1.1; extra == "gpu"
20
23
  Provides-Extra: frozen
21
24
  Requires-Dist: Deprecated==1.3.1; extra == "frozen"
22
25
  Requires-Dist: ImageIO==2.37.4; extra == "frozen"
@@ -27,7 +30,7 @@ Requires-Dist: PyJWT==2.13.0; extra == "frozen"
27
30
  Requires-Dist: PyYAML==6.0.3; extra == "frozen"
28
31
  Requires-Dist: PyYAML-ft==8.0.0; extra == "frozen"
29
32
  Requires-Dist: Pygments==2.20.0; extra == "frozen"
30
- Requires-Dist: SQLAlchemy==2.0.51; extra == "frozen"
33
+ Requires-Dist: SQLAlchemy==2.0.52; extra == "frozen"
31
34
  Requires-Dist: Send2Trash==2.1.0; extra == "frozen"
32
35
  Requires-Dist: a2wsgi==1.10.10; extra == "frozen"
33
36
  Requires-Dist: aioftp==0.28.0; extra == "frozen"
@@ -70,8 +73,8 @@ Requires-Dist: babel==2.18.0; extra == "frozen"
70
73
  Requires-Dist: beautifulsoup4==4.15.0; extra == "frozen"
71
74
  Requires-Dist: billiard==4.2.4; extra == "frozen"
72
75
  Requires-Dist: bleach==6.4.0; extra == "frozen"
73
- Requires-Dist: boto3==1.43.68; extra == "frozen"
74
- Requires-Dist: botocore==1.43.68; extra == "frozen"
76
+ Requires-Dist: boto3==1.43.69; extra == "frozen"
77
+ Requires-Dist: botocore==1.43.69; extra == "frozen"
75
78
  Requires-Dist: cadwyn==7.2.0; extra == "frozen"
76
79
  Requires-Dist: celery==5.6.3; extra == "frozen"
77
80
  Requires-Dist: certifi==2026.7.22; extra == "frozen"
@@ -95,7 +98,7 @@ Requires-Dist: dill==0.4.1; extra == "frozen"
95
98
  Requires-Dist: dkist-header-validator==5.4.0; extra == "frozen"
96
99
  Requires-Dist: dkist-processing-common==14.3.5; extra == "frozen"
97
100
  Requires-Dist: dkist-processing-core==7.4.0; extra == "frozen"
98
- Requires-Dist: dkist-processing-ops==1.10.25; extra == "frozen"
101
+ Requires-Dist: dkist-processing-ops==1.10.26; extra == "frozen"
99
102
  Requires-Dist: dkist-processing-pac==3.1.2; extra == "frozen"
100
103
  Requires-Dist: dkist-service-configuration==4.3.0; extra == "frozen"
101
104
  Requires-Dist: dkist-spectral-lines==3.0.1; extra == "frozen"
@@ -278,7 +281,7 @@ Requires-Dist: tornado==6.5.8; extra == "frozen"
278
281
  Requires-Dist: tqdm==4.70.0; extra == "frozen"
279
282
  Requires-Dist: traitlets==5.16.1; extra == "frozen"
280
283
  Requires-Dist: typer==0.27.1; extra == "frozen"
281
- Requires-Dist: typing-inspection==0.4.3; extra == "frozen"
284
+ Requires-Dist: typing-inspection==0.4.4; extra == "frozen"
282
285
  Requires-Dist: typing_extensions==4.16.0; extra == "frozen"
283
286
  Requires-Dist: tzdata==2026.3; extra == "frozen"
284
287
  Requires-Dist: tzlocal==5.4.4; extra == "frozen"
@@ -18,7 +18,7 @@ version_tuple: tuple[int | str, ...]
18
18
  commit_id: str | None
19
19
  __commit_id__: str | None
20
20
 
21
- __version__ = version = '1.10.25'
22
- __version_tuple__ = version_tuple = (1, 10, 25)
21
+ __version__ = version = '1.10.26'
22
+ __version_tuple__ = version_tuple = (1, 10, 26)
23
23
 
24
- __commit_id__ = commit_id = 'g15fee1a2b'
24
+ __commit_id__ = commit_id = 'g414106ff1'
@@ -1,5 +1,6 @@
1
1
  """Import of tasks is directly from package by convention"""
2
2
 
3
+ from dkist_processing_ops.tasks.exercise_gpu import *
3
4
  from dkist_processing_ops.tasks.read_memory_leak import *
4
5
  from dkist_processing_ops.tasks.smoke import *
5
6
  from dkist_processing_ops.tasks.wait import *
@@ -0,0 +1,22 @@
1
+ """Exercise CuPy on an NVIDIA GPU in the workflow execution environment."""
2
+
3
+ from dkist_processing_core import TaskBase
4
+ from dkist_service_configuration.logging import logger
5
+
6
+ __all__ = ["ExerciseGpu"]
7
+
8
+
9
+ class ExerciseGpu(TaskBase):
10
+ """Import CuPy and verify device availability."""
11
+
12
+ def run(self) -> None:
13
+ with self.telemetry_span("GPU Inspection"):
14
+ # Import lazily so non-GPU tasks can be discovered without initializing CUDA.
15
+ import cupy as cp
16
+
17
+ device_count = cp.cuda.runtime.getDeviceCount()
18
+ if device_count < 1:
19
+ raise RuntimeError("CuPy did not find an available GPU.")
20
+
21
+ device = cp.cuda.Device(0)
22
+ logger.info(f"Found GPU {device=}")
@@ -4,6 +4,7 @@ from dkist_processing_common.tasks import TrialTeardown
4
4
  from dkist_processing_core import ResourceQueue
5
5
  from dkist_processing_core import Workflow
6
6
 
7
+ from dkist_processing_ops.tasks import ExerciseGpu
7
8
  from dkist_processing_ops.tasks import SmokeTask
8
9
 
9
10
  smoke_default = Workflow(
@@ -26,3 +27,18 @@ smoke_high_mem = Workflow(
26
27
  )
27
28
  smoke_high_mem.add_node(task=SmokeTask, upstreams=None, resource_queue=ResourceQueue.HIGH_MEMORY)
28
29
  smoke_high_mem.add_node(task=TrialTeardown, upstreams=SmokeTask)
30
+
31
+
32
+ smoke_gpu = Workflow(
33
+ input_data="ops",
34
+ output_data="common",
35
+ category="smoke",
36
+ detail="gpu",
37
+ workflow_package=__package__,
38
+ )
39
+ smoke_gpu.add_node(
40
+ task=ExerciseGpu,
41
+ upstreams=None,
42
+ resource_queue=ResourceQueue.GPU,
43
+ pip_extras=["gpu"],
44
+ )
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: dkist-processing-ops
3
- Version: 1.10.25
3
+ Version: 1.10.26
4
4
  Summary: Automated Processing smoke test and operations workflows
5
5
  Author-email: NSO / AURA <dkistdc@nso.edu>
6
6
  License: BSD 3-Clause
@@ -17,6 +17,9 @@ Provides-Extra: test
17
17
  Requires-Dist: pytest; extra == "test"
18
18
  Requires-Dist: pytest-cov; extra == "test"
19
19
  Requires-Dist: pytest-xdist; extra == "test"
20
+ Requires-Dist: dkist-processing-ops[gpu]; extra == "test"
21
+ Provides-Extra: gpu
22
+ Requires-Dist: cupy-cuda12x[ctk]==14.1.1; extra == "gpu"
20
23
  Provides-Extra: frozen
21
24
  Requires-Dist: Deprecated==1.3.1; extra == "frozen"
22
25
  Requires-Dist: ImageIO==2.37.4; extra == "frozen"
@@ -27,7 +30,7 @@ Requires-Dist: PyJWT==2.13.0; extra == "frozen"
27
30
  Requires-Dist: PyYAML==6.0.3; extra == "frozen"
28
31
  Requires-Dist: PyYAML-ft==8.0.0; extra == "frozen"
29
32
  Requires-Dist: Pygments==2.20.0; extra == "frozen"
30
- Requires-Dist: SQLAlchemy==2.0.51; extra == "frozen"
33
+ Requires-Dist: SQLAlchemy==2.0.52; extra == "frozen"
31
34
  Requires-Dist: Send2Trash==2.1.0; extra == "frozen"
32
35
  Requires-Dist: a2wsgi==1.10.10; extra == "frozen"
33
36
  Requires-Dist: aioftp==0.28.0; extra == "frozen"
@@ -70,8 +73,8 @@ Requires-Dist: babel==2.18.0; extra == "frozen"
70
73
  Requires-Dist: beautifulsoup4==4.15.0; extra == "frozen"
71
74
  Requires-Dist: billiard==4.2.4; extra == "frozen"
72
75
  Requires-Dist: bleach==6.4.0; extra == "frozen"
73
- Requires-Dist: boto3==1.43.68; extra == "frozen"
74
- Requires-Dist: botocore==1.43.68; extra == "frozen"
76
+ Requires-Dist: boto3==1.43.69; extra == "frozen"
77
+ Requires-Dist: botocore==1.43.69; extra == "frozen"
75
78
  Requires-Dist: cadwyn==7.2.0; extra == "frozen"
76
79
  Requires-Dist: celery==5.6.3; extra == "frozen"
77
80
  Requires-Dist: certifi==2026.7.22; extra == "frozen"
@@ -95,7 +98,7 @@ Requires-Dist: dill==0.4.1; extra == "frozen"
95
98
  Requires-Dist: dkist-header-validator==5.4.0; extra == "frozen"
96
99
  Requires-Dist: dkist-processing-common==14.3.5; extra == "frozen"
97
100
  Requires-Dist: dkist-processing-core==7.4.0; extra == "frozen"
98
- Requires-Dist: dkist-processing-ops==1.10.25; extra == "frozen"
101
+ Requires-Dist: dkist-processing-ops==1.10.26; extra == "frozen"
99
102
  Requires-Dist: dkist-processing-pac==3.1.2; extra == "frozen"
100
103
  Requires-Dist: dkist-service-configuration==4.3.0; extra == "frozen"
101
104
  Requires-Dist: dkist-spectral-lines==3.0.1; extra == "frozen"
@@ -278,7 +281,7 @@ Requires-Dist: tornado==6.5.8; extra == "frozen"
278
281
  Requires-Dist: tqdm==4.70.0; extra == "frozen"
279
282
  Requires-Dist: traitlets==5.16.1; extra == "frozen"
280
283
  Requires-Dist: typer==0.27.1; extra == "frozen"
281
- Requires-Dist: typing-inspection==0.4.3; extra == "frozen"
284
+ Requires-Dist: typing-inspection==0.4.4; extra == "frozen"
282
285
  Requires-Dist: typing_extensions==4.16.0; extra == "frozen"
283
286
  Requires-Dist: tzdata==2026.3; extra == "frozen"
284
287
  Requires-Dist: tzlocal==5.4.4; extra == "frozen"
@@ -20,6 +20,7 @@ dkist_processing_ops.egg-info/scm_version.json
20
20
  dkist_processing_ops.egg-info/top_level.txt
21
21
  dkist_processing_ops/dags/scale.py
22
22
  dkist_processing_ops/tasks/__init__.py
23
+ dkist_processing_ops/tasks/exercise_gpu.py
23
24
  dkist_processing_ops/tasks/read_memory_leak.py
24
25
  dkist_processing_ops/tasks/smoke.py
25
26
  dkist_processing_ops/tasks/wait.py
@@ -11,7 +11,7 @@ PyJWT==2.13.0
11
11
  PyYAML==6.0.3
12
12
  PyYAML-ft==8.0.0
13
13
  Pygments==2.20.0
14
- SQLAlchemy==2.0.51
14
+ SQLAlchemy==2.0.52
15
15
  Send2Trash==2.1.0
16
16
  a2wsgi==1.10.10
17
17
  aioftp==0.28.0
@@ -54,8 +54,8 @@ babel==2.18.0
54
54
  beautifulsoup4==4.15.0
55
55
  billiard==4.2.4
56
56
  bleach==6.4.0
57
- boto3==1.43.68
58
- botocore==1.43.68
57
+ boto3==1.43.69
58
+ botocore==1.43.69
59
59
  cadwyn==7.2.0
60
60
  celery==5.6.3
61
61
  certifi==2026.7.22
@@ -79,7 +79,7 @@ dill==0.4.1
79
79
  dkist-header-validator==5.4.0
80
80
  dkist-processing-common==14.3.5
81
81
  dkist-processing-core==7.4.0
82
- dkist-processing-ops==1.10.25
82
+ dkist-processing-ops==1.10.26
83
83
  dkist-processing-pac==3.1.2
84
84
  dkist-service-configuration==4.3.0
85
85
  dkist-spectral-lines==3.0.1
@@ -262,7 +262,7 @@ tornado==6.5.8
262
262
  tqdm==4.70.0
263
263
  traitlets==5.16.1
264
264
  typer==0.27.1
265
- typing-inspection==0.4.3
265
+ typing-inspection==0.4.4
266
266
  typing_extensions==4.16.0
267
267
  tzdata==2026.3
268
268
  tzlocal==5.4.4
@@ -288,7 +288,11 @@ yamale==6.1.0
288
288
  yarl==1.24.5
289
289
  zipp==4.1.0
290
290
 
291
+ [gpu]
292
+ cupy-cuda12x[ctk]==14.1.1
293
+
291
294
  [test]
292
295
  pytest
293
296
  pytest-cov
294
297
  pytest-xdist
298
+ dkist-processing-ops[gpu]
@@ -12,6 +12,7 @@
12
12
  "dkist_processing_ops/config.py",
13
13
  "dkist_processing_ops/dags/scale.py",
14
14
  "dkist_processing_ops/tasks/__init__.py",
15
+ "dkist_processing_ops/tasks/exercise_gpu.py",
15
16
  "dkist_processing_ops/tasks/read_memory_leak.py",
16
17
  "dkist_processing_ops/tasks/smoke.py",
17
18
  "dkist_processing_ops/tasks/wait.py",
@@ -0,0 +1,8 @@
1
+ {
2
+ "tag": "1.10.26",
3
+ "distance": 0,
4
+ "node": "g414106ff169819da0db00f9c1699210683eddd31",
5
+ "dirty": false,
6
+ "branch": "HEAD",
7
+ "node_date": "2026-08-12"
8
+ }
@@ -6,8 +6,8 @@ build-backend = 'setuptools.build_meta'
6
6
 
7
7
  [tool.dkist-dev-tools]
8
8
  # Most recently frozen version by dkist-dev-tools
9
- version = "1.10.25"
10
- date = 2026-08-11T09:46:18.066637
9
+ version = "1.10.26"
10
+ date = 2026-08-12T08:30:27.097390
11
11
 
12
12
  [project]
13
13
  name = "dkist-processing-ops"
@@ -37,6 +37,10 @@ test = [
37
37
  "pytest",
38
38
  "pytest-cov",
39
39
  "pytest-xdist",
40
+ "dkist-processing-ops[gpu]"
41
+ ]
42
+ gpu = [
43
+ "cupy-cuda12x[ctk] == 14.1.1",
40
44
  ]
41
45
  frozen = [
42
46
  "Deprecated == 1.3.1",
@@ -48,7 +52,7 @@ frozen = [
48
52
  "PyYAML == 6.0.3",
49
53
  "PyYAML-ft == 8.0.0",
50
54
  "Pygments == 2.20.0",
51
- "SQLAlchemy == 2.0.51",
55
+ "SQLAlchemy == 2.0.52",
52
56
  "Send2Trash == 2.1.0",
53
57
  "a2wsgi == 1.10.10",
54
58
  "aioftp == 0.28.0",
@@ -91,8 +95,8 @@ frozen = [
91
95
  "beautifulsoup4 == 4.15.0",
92
96
  "billiard == 4.2.4",
93
97
  "bleach == 6.4.0",
94
- "boto3 == 1.43.68",
95
- "botocore == 1.43.68",
98
+ "boto3 == 1.43.69",
99
+ "botocore == 1.43.69",
96
100
  "cadwyn == 7.2.0",
97
101
  "celery == 5.6.3",
98
102
  "certifi == 2026.7.22",
@@ -116,7 +120,7 @@ frozen = [
116
120
  "dkist-header-validator == 5.4.0",
117
121
  "dkist-processing-common == 14.3.5",
118
122
  "dkist-processing-core == 7.4.0",
119
- "dkist-processing-ops == 1.10.25",
123
+ "dkist-processing-ops == 1.10.26",
120
124
  "dkist-processing-pac == 3.1.2",
121
125
  "dkist-service-configuration == 4.3.0",
122
126
  "dkist-spectral-lines == 3.0.1",
@@ -299,7 +303,7 @@ frozen = [
299
303
  "tqdm == 4.70.0",
300
304
  "traitlets == 5.16.1",
301
305
  "typer == 0.27.1",
302
- "typing-inspection == 0.4.3",
306
+ "typing-inspection == 0.4.4",
303
307
  "typing_extensions == 4.16.0",
304
308
  "tzdata == 2026.3",
305
309
  "tzlocal == 5.4.4",
@@ -1,8 +0,0 @@
1
- {
2
- "tag": "1.10.25",
3
- "distance": 0,
4
- "node": "g15fee1a2b892876e71d0bd0a4ffef0f0079be8d2",
5
- "dirty": false,
6
- "branch": "HEAD",
7
- "node_date": "2026-08-11"
8
- }