digitalhub-runtime-python 0.10.0b4__tar.gz → 0.10.2__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 (68) hide show
  1. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/.github/workflows/run_local_test.yml +23 -24
  2. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/PKG-INFO +4 -2
  3. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/digitalhub_runtime_python/entities/function/python/utils.py +2 -2
  4. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/digitalhub_runtime_python/entities/task/python_job/spec.py +0 -1
  5. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/digitalhub_runtime_python/utils/configuration.py +1 -1
  6. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/digitalhub_runtime_python/utils/outputs.py +1 -1
  7. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/digitalhub_runtime_python/utils/utils.py +2 -0
  8. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/pyproject.toml +6 -4
  9. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/test/local/instances/entities/run/run-python+build.json +2 -1
  10. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/test/local/instances/entities/run/run-python+job.json +1 -0
  11. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/test/local/instances/entities/run/run-python+serve.json +6 -5
  12. digitalhub_runtime_python-0.10.2/test/local/instances/entities/task/task-python+build.json +77 -0
  13. digitalhub_runtime_python-0.10.2/test/local/instances/entities/task/task-python+job.json +80 -0
  14. digitalhub_runtime_python-0.10.2/test/local/instances/entities/task/task-python+serve.json +80 -0
  15. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/test/local/instances/test_validate.py +2 -0
  16. digitalhub_runtime_python-0.10.0b4/requirements.txt +0 -4
  17. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/.github/scripts/bump.sh +0 -0
  18. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/.github/scripts/changelog.sh +0 -0
  19. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/.github/scripts/cliff.toml +0 -0
  20. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/.github/workflows/release.yml +0 -0
  21. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/.github/workflows/test_release.yml +0 -0
  22. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/.gitignore +0 -0
  23. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/LICENSE.txt +0 -0
  24. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/README.md +0 -0
  25. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/digitalhub_runtime_python/__init__.py +0 -0
  26. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/digitalhub_runtime_python/entities/__init__.py +0 -0
  27. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/digitalhub_runtime_python/entities/_base/__init__.py +0 -0
  28. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/digitalhub_runtime_python/entities/_base/runtime_entity/__init__.py +0 -0
  29. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/digitalhub_runtime_python/entities/_base/runtime_entity/builder.py +0 -0
  30. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/digitalhub_runtime_python/entities/_commons/__init__.py +0 -0
  31. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/digitalhub_runtime_python/entities/_commons/enums.py +0 -0
  32. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/digitalhub_runtime_python/entities/function/__init__.py +0 -0
  33. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/digitalhub_runtime_python/entities/function/python/__init__.py +0 -0
  34. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/digitalhub_runtime_python/entities/function/python/builder.py +0 -0
  35. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/digitalhub_runtime_python/entities/function/python/entity.py +0 -0
  36. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/digitalhub_runtime_python/entities/function/python/models.py +0 -0
  37. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/digitalhub_runtime_python/entities/function/python/spec.py +0 -0
  38. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/digitalhub_runtime_python/entities/function/python/status.py +0 -0
  39. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/digitalhub_runtime_python/entities/run/__init__.py +0 -0
  40. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/digitalhub_runtime_python/entities/run/python_run/__init__.py +0 -0
  41. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/digitalhub_runtime_python/entities/run/python_run/builder.py +0 -0
  42. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/digitalhub_runtime_python/entities/run/python_run/entity.py +0 -0
  43. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/digitalhub_runtime_python/entities/run/python_run/spec.py +0 -0
  44. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/digitalhub_runtime_python/entities/run/python_run/status.py +0 -0
  45. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/digitalhub_runtime_python/entities/run/python_run/utils.py +0 -0
  46. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/digitalhub_runtime_python/entities/task/__init__.py +0 -0
  47. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/digitalhub_runtime_python/entities/task/python_build/__init__.py +0 -0
  48. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/digitalhub_runtime_python/entities/task/python_build/builder.py +0 -0
  49. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/digitalhub_runtime_python/entities/task/python_build/entity.py +0 -0
  50. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/digitalhub_runtime_python/entities/task/python_build/spec.py +0 -0
  51. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/digitalhub_runtime_python/entities/task/python_build/status.py +0 -0
  52. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/digitalhub_runtime_python/entities/task/python_job/__init__.py +0 -0
  53. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/digitalhub_runtime_python/entities/task/python_job/builder.py +0 -0
  54. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/digitalhub_runtime_python/entities/task/python_job/entity.py +0 -0
  55. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/digitalhub_runtime_python/entities/task/python_job/models.py +0 -0
  56. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/digitalhub_runtime_python/entities/task/python_job/status.py +0 -0
  57. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/digitalhub_runtime_python/entities/task/python_serve/__init__.py +0 -0
  58. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/digitalhub_runtime_python/entities/task/python_serve/builder.py +0 -0
  59. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/digitalhub_runtime_python/entities/task/python_serve/entity.py +0 -0
  60. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/digitalhub_runtime_python/entities/task/python_serve/spec.py +0 -0
  61. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/digitalhub_runtime_python/entities/task/python_serve/status.py +0 -0
  62. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/digitalhub_runtime_python/runtimes/__init__.py +0 -0
  63. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/digitalhub_runtime_python/runtimes/builder.py +0 -0
  64. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/digitalhub_runtime_python/runtimes/runtime.py +0 -0
  65. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/digitalhub_runtime_python/utils/inputs.py +0 -0
  66. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/test/local/instances/entities/function/function-python-git.json +0 -0
  67. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/test/local/instances/entities/function/function-python-local.json +0 -0
  68. {digitalhub_runtime_python-0.10.0b4 → digitalhub_runtime_python-0.10.2}/test/local/instances/entities/function/function-python-zip.json +0 -0
@@ -1,15 +1,15 @@
1
- name: Run Unit Local Test via Pytest
2
-
3
- on: [push]
4
-
5
- jobs:
6
- build:
7
- runs-on: ubuntu-latest
8
- strategy:
9
- matrix:
10
- python-version: ["3.9", "3.10", "3.11", "3.12"]
11
-
12
- steps:
1
+ name: Run Unit Local Test via Pytest
2
+
3
+ on: [push]
4
+
5
+ jobs:
6
+ build:
7
+ runs-on: ubuntu-latest
8
+ strategy:
9
+ matrix:
10
+ python-version: ["3.9", "3.10", "3.11", "3.12"]
11
+
12
+ steps:
13
13
  - uses: actions/checkout@v4
14
14
  - name: Set up Python ${{ matrix.python-version }}
15
15
  uses: actions/setup-python@v5
@@ -18,13 +18,12 @@ jobs:
18
18
  # You can test your matrix by printing the current Python version
19
19
  - name: Display Python version
20
20
  run: python -c "import sys; print(sys.version)"
21
- - name: Install dependencies
22
- run: |
21
+ - name: Install dependencies
22
+ run: |
23
23
  python -m pip install --upgrade pip
24
- python -m pip install .
25
- python -m pip install -r requirements.txt
26
- - name: Lint with Ruff
27
- run: |
24
+ python -m pip install .[dev]
25
+ - name: Lint with Ruff
26
+ run: |
28
27
  pip install ruff
29
28
  ruff check --output-format=github .
30
29
  continue-on-error: true
@@ -35,9 +34,9 @@ jobs:
35
34
  rm main.zip
36
35
  mv digitalhub-core-main/schemas/specs test/local/instances/schemas
37
36
  rm -r digitalhub-core-main
38
- - name: Test with pytest
39
- run: |
40
- coverage run -m pytest test/local -v -s
41
- - name: Generate Coverage Report
42
- run: |
43
- coverage report -m
37
+ - name: Test with pytest
38
+ run: |
39
+ coverage run -m pytest test/local -v -s
40
+ - name: Generate Coverage Report
41
+ run: |
42
+ coverage report -m
@@ -1,8 +1,8 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: digitalhub-runtime-python
3
- Version: 0.10.0b4
3
+ Version: 0.10.2
4
4
  Summary: Python runtime for DHCore
5
- Project-URL: Homepage, https://github.com/scc-digitalhub/digitalhub-sdk
5
+ Project-URL: Homepage, https://github.com/scc-digitalhub/digitalhub-sdk-runtime-python
6
6
  Author-email: Fondazione Bruno Kessler <dslab@fbk.eu>, Matteo Martini <mmartini@fbk.eu>
7
7
  License: Apache License
8
8
  Version 2.0, January 2004
@@ -226,8 +226,10 @@ Classifier: License :: OSI Approved :: Apache Software License
226
226
  Classifier: Programming Language :: Python :: 3.9
227
227
  Classifier: Programming Language :: Python :: 3.10
228
228
  Classifier: Programming Language :: Python :: 3.11
229
+ Classifier: Programming Language :: Python :: 3.12
229
230
  Requires-Python: <3.13,>=3.9
230
231
  Requires-Dist: digitalhub[full]<0.11,>=0.10.0b
232
+ Requires-Dist: nuclio-sdk
231
233
  Provides-Extra: dev
232
234
  Requires-Dist: digitalhub[dev]<0.11,>=0.10.0b; extra == 'dev'
233
235
  Description-Content-Type: text/markdown
@@ -3,8 +3,8 @@ from __future__ import annotations
3
3
  import typing
4
4
  from pathlib import Path
5
5
 
6
- from digitalhub.stores.api import get_store
7
- from digitalhub.stores.s3.utils import get_s3_bucket_from_env
6
+ from digitalhub.stores.data.api import get_store
7
+ from digitalhub.stores.data.s3.utils import get_s3_bucket_from_env
8
8
  from digitalhub.utils.exceptions import EntityError
9
9
  from digitalhub.utils.file_utils import eval_py_type, eval_zip_type
10
10
  from digitalhub.utils.generic_utils import encode_source, encode_string
@@ -1,7 +1,6 @@
1
1
  from __future__ import annotations
2
2
 
3
3
  from digitalhub.entities.task._base.spec import TaskSpecFunction, TaskValidatorFunction
4
- from pydantic import Field
5
4
 
6
5
 
7
6
  class TaskSpecPythonJob(TaskSpecFunction):
@@ -3,7 +3,7 @@ from __future__ import annotations
3
3
  from pathlib import Path
4
4
  from typing import Callable, Union
5
5
 
6
- from digitalhub.stores.s3.utils import get_bucket_and_key, get_s3_source
6
+ from digitalhub.stores.data.s3.utils import get_bucket_and_key, get_s3_source
7
7
  from digitalhub.utils.generic_utils import (
8
8
  decode_base64_string,
9
9
  extract_archive,
@@ -10,7 +10,7 @@ from digitalhub.entities.artifact.crud import log_artifact
10
10
  from digitalhub.entities.dataitem._base.entity import Dataitem
11
11
  from digitalhub.entities.dataitem.crud import log_dataitem
12
12
  from digitalhub.entities.model._base.entity import Model
13
- from digitalhub.readers.data.api import get_supported_dataframes
13
+ from digitalhub.stores.readers.data.api import get_supported_dataframes
14
14
  from digitalhub.utils.exceptions import EntityNotExistsError
15
15
  from digitalhub.utils.logger import LOGGER
16
16
 
@@ -20,6 +20,8 @@ def handler(outputs: list[str] | None = None) -> Callable:
20
20
  Callable
21
21
  Decorated function.
22
22
  """
23
+ if outputs is None:
24
+ outputs = []
23
25
 
24
26
  def decorator(func: Callable) -> Callable:
25
27
  """
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "digitalhub-runtime-python"
7
- version = "0.10.0b4"
7
+ version = "0.10.2"
8
8
  description = "Python runtime for DHCore"
9
9
  readme = "README.md"
10
10
  authors = [
@@ -16,12 +16,14 @@ classifiers = [
16
16
  "License :: OSI Approved :: Apache Software License",
17
17
  "Programming Language :: Python :: 3.9",
18
18
  "Programming Language :: Python :: 3.10",
19
- "Programming Language :: Python :: 3.11"
19
+ "Programming Language :: Python :: 3.11",
20
+ "Programming Language :: Python :: 3.12"
20
21
  ]
21
22
  keywords = ["data", "dataops", "kubernetes"]
22
23
  requires-python = ">=3.9, <3.13"
23
24
  dependencies = [
24
25
  "digitalhub[full]>=0.10.0b, <0.11",
26
+ "nuclio-sdk"
25
27
  ]
26
28
 
27
29
  [project.optional-dependencies]
@@ -30,7 +32,7 @@ dev = [
30
32
  ]
31
33
 
32
34
  [project.urls]
33
- Homepage = "https://github.com/scc-digitalhub/digitalhub-sdk"
35
+ Homepage = "https://github.com/scc-digitalhub/digitalhub-sdk-runtime-python"
34
36
 
35
37
  [tool.flake8]
36
38
  max-line-length = 120
@@ -45,7 +47,7 @@ line-length = 120
45
47
  convention = "numpy"
46
48
 
47
49
  [tool.bumpver]
48
- current_version = "0.10.0b4"
50
+ current_version = "0.10.2"
49
51
  version_pattern = "MAJOR.MINOR.PATCH[PYTAGNUM]"
50
52
  commit_message = "Bump version {old_version} -> {new_version}"
51
53
  commit = false
@@ -13,6 +13,7 @@
13
13
  "name": "8f61807d-6f25-49c2-ba36-c95899074af0",
14
14
  "project": "demo-etl",
15
15
  "spec": {
16
+ "init_parameters": {"test": "test"},
16
17
  "outputs": {},
17
18
  "instructions": [
18
19
  "apt-get update"
@@ -924,4 +925,4 @@
924
925
  }
925
926
  },
926
927
  "user": "digitalhubdev"
927
- }
928
+ }
@@ -13,6 +13,7 @@
13
13
  "name": "89aa1016-376b-45e6-8db7-807b6e3f7410",
14
14
  "project": "demo-etl",
15
15
  "spec": {
16
+ "init_parameters": {"test": "test"},
16
17
  "outputs": {},
17
18
  "image": "debian:1.22.04",
18
19
  "requirements": [
@@ -13,6 +13,7 @@
13
13
  "name": "3c620611-b8dc-41f2-bee6-3b21e3d35265",
14
14
  "project": "demo-etl",
15
15
  "spec": {
16
+ "init_parameters": {"test": "test"},
16
17
  "outputs": {},
17
18
  "image": "debian:1.22.04",
18
19
  "requirements": [
@@ -463,7 +464,7 @@
463
464
  "restartPolicy": "Always",
464
465
  "schedulerName": "default-scheduler",
465
466
  "securityContext": {
466
- "fsGroup": 1000,
467
+ "fs_group": 1000,
467
468
  "runAsNonRoot": true
468
469
  },
469
470
  "serviceAccount": "default",
@@ -903,7 +904,7 @@
903
904
  "restartPolicy": "Always",
904
905
  "schedulerName": "default-scheduler",
905
906
  "securityContext": {
906
- "fsGroup": 1000,
907
+ "fs_group": 1000,
907
908
  "runAsNonRoot": true
908
909
  },
909
910
  "serviceAccount": "default",
@@ -1343,7 +1344,7 @@
1343
1344
  "restartPolicy": "Always",
1344
1345
  "schedulerName": "default-scheduler",
1345
1346
  "securityContext": {
1346
- "fsGroup": 1000,
1347
+ "fs_group": 1000,
1347
1348
  "runAsNonRoot": true
1348
1349
  },
1349
1350
  "serviceAccount": "default",
@@ -1908,7 +1909,7 @@
1908
1909
  "restartPolicy": "Always",
1909
1910
  "schedulerName": "default-scheduler",
1910
1911
  "securityContext": {
1911
- "fsGroup": 1000,
1912
+ "fs_group": 1000,
1912
1913
  "runAsNonRoot": true
1913
1914
  },
1914
1915
  "terminationGracePeriodSeconds": 30,
@@ -1969,4 +1970,4 @@
1969
1970
  }
1970
1971
  },
1971
1972
  "user": "digitalhubdev"
1972
- }
1973
+ }
@@ -0,0 +1,77 @@
1
+ {
2
+ "id": "8ed8dd0a-379d-40dd-9a68-0c765d6b143e",
3
+ "key": "store://demo-etl/task/python+build/8ed8dd0a-379d-40dd-9a68-0c765d6b143e",
4
+ "kind": "python+build",
5
+ "metadata": {
6
+ "name": "8ed8dd0a-379d-40dd-9a68-0c765d6b143e",
7
+ "updated_by": "digitalhubdev",
8
+ "project": "demo-etl",
9
+ "updated": "2024-11-20T10:58:45.487Z",
10
+ "created_by": "digitalhubdev",
11
+ "created": "2024-11-20T10:58:45.453Z"
12
+ },
13
+ "name": "8ed8dd0a-379d-40dd-9a68-0c765d6b143e",
14
+ "project": "demo-etl",
15
+ "spec": {
16
+ "instructions": ["apt-get update"],
17
+ "priority_class": "test",
18
+ "runtime_class": "test",
19
+ "run_as_user": 1000,
20
+ "tolerations": [],
21
+ "affinity": {},
22
+ "profile": "1xa100",
23
+ "volumes": [
24
+ {
25
+ "name": "volume1",
26
+ "volume_type": "empty_dir",
27
+ "mount_path": "/volume1"
28
+ },
29
+ {
30
+ "name": "volume2",
31
+ "volume_type": "persistent_volume_claim",
32
+ "mount_path": "/volume2"
33
+ }
34
+ ],
35
+ "envs": [
36
+ {
37
+ "name": "USER",
38
+ "value": "test"
39
+ }
40
+ ],
41
+ "resources": {
42
+ "cpu": {
43
+ "requests": "0100m",
44
+ "limits": "0200m"
45
+ },
46
+ "mem": {
47
+ "requests": "0100Ki",
48
+ "limits": "0200Ki"
49
+ },
50
+ "gpu": {
51
+ "limits": "01"
52
+ }
53
+ },
54
+ "secrets": ["secret-key"],
55
+ "node_selector": [
56
+ {
57
+ "key": "node1",
58
+ "value": "value1"
59
+ }
60
+ ],
61
+ "function": "python://demo-etl/func1a:bbc4c820-6321-4ea8-b57b-85c472cfde09"
62
+ },
63
+ "status": {
64
+ "transitions": [
65
+ {
66
+ "status": "READY",
67
+ "time": "2024-11-20T10:58:45.486663781Z"
68
+ },
69
+ {
70
+ "status": "BUILT",
71
+ "time": "2024-11-20T10:58:45.464157733Z"
72
+ }
73
+ ],
74
+ "state": "READY"
75
+ },
76
+ "user": "digitalhubdev"
77
+ }
@@ -0,0 +1,80 @@
1
+ {
2
+ "id": "8ed8dd0a-379d-40dd-9a68-0c765d6b143e",
3
+ "key": "store://demo-etl/task/python+job/8ed8dd0a-379d-40dd-9a68-0c765d6b143e",
4
+ "kind": "python+job",
5
+ "metadata": {
6
+ "name": "8ed8dd0a-379d-40dd-9a68-0c765d6b143e",
7
+ "updated_by": "digitalhubdev",
8
+ "project": "demo-etl",
9
+ "updated": "2024-11-20T10:58:45.487Z",
10
+ "created_by": "digitalhubdev",
11
+ "created": "2024-11-20T10:58:45.453Z"
12
+ },
13
+ "name": "8ed8dd0a-379d-40dd-9a68-0c765d6b143e",
14
+ "project": "demo-etl",
15
+ "spec": {
16
+ "schedule": "0 0 * * *",
17
+ "fs_group": 1000,
18
+ "run_as_group": 1000,
19
+ "instructions": ["apt-get update"],
20
+ "priority_class": "test",
21
+ "runtime_class": "test",
22
+ "run_as_user": 1000,
23
+ "tolerations": [],
24
+ "affinity": {},
25
+ "profile": "1xa100",
26
+ "volumes": [
27
+ {
28
+ "name": "volume1",
29
+ "volume_type": "empty_dir",
30
+ "mount_path": "/volume1"
31
+ },
32
+ {
33
+ "name": "volume2",
34
+ "volume_type": "persistent_volume_claim",
35
+ "mount_path": "/volume2"
36
+ }
37
+ ],
38
+ "envs": [
39
+ {
40
+ "name": "USER",
41
+ "value": "test"
42
+ }
43
+ ],
44
+ "resources": {
45
+ "cpu": {
46
+ "requests": "0100m",
47
+ "limits": "0200m"
48
+ },
49
+ "mem": {
50
+ "requests": "0100Ki",
51
+ "limits": "0200Ki"
52
+ },
53
+ "gpu": {
54
+ "limits": "01"
55
+ }
56
+ },
57
+ "secrets": ["secret-key"],
58
+ "node_selector": [
59
+ {
60
+ "key": "node1",
61
+ "value": "value1"
62
+ }
63
+ ],
64
+ "function": "python://demo-etl/func1a:bbc4c820-6321-4ea8-b57b-85c472cfde09"
65
+ },
66
+ "status": {
67
+ "transitions": [
68
+ {
69
+ "status": "READY",
70
+ "time": "2024-11-20T10:58:45.486663781Z"
71
+ },
72
+ {
73
+ "status": "BUILT",
74
+ "time": "2024-11-20T10:58:45.464157733Z"
75
+ }
76
+ ],
77
+ "state": "READY"
78
+ },
79
+ "user": "digitalhubdev"
80
+ }
@@ -0,0 +1,80 @@
1
+ {
2
+ "id": "8ed8dd0a-379d-40dd-9a68-0c765d6b143e",
3
+ "key": "store://demo-etl/task/python+serve/8ed8dd0a-379d-40dd-9a68-0c765d6b143e",
4
+ "kind": "python+serve",
5
+ "metadata": {
6
+ "name": "8ed8dd0a-379d-40dd-9a68-0c765d6b143e",
7
+ "updated_by": "digitalhubdev",
8
+ "project": "demo-etl",
9
+ "updated": "2024-11-20T10:58:45.487Z",
10
+ "created_by": "digitalhubdev",
11
+ "created": "2024-11-20T10:58:45.453Z"
12
+ },
13
+ "name": "8ed8dd0a-379d-40dd-9a68-0c765d6b143e",
14
+ "project": "demo-etl",
15
+ "spec": {
16
+ "service_ports":[],
17
+ "replicas": 2,
18
+ "fs_group": 1000,
19
+ "run_as_user": 1000,
20
+ "run_as_group": 1000,
21
+ "priority_class": "test",
22
+ "runtime_class": "test",
23
+ "tolerations": [],
24
+ "affinity": {},
25
+ "profile": "1xa100",
26
+ "volumes": [
27
+ {
28
+ "name": "volume1",
29
+ "volume_type": "empty_dir",
30
+ "mount_path": "/volume1"
31
+ },
32
+ {
33
+ "name": "volume2",
34
+ "volume_type": "persistent_volume_claim",
35
+ "mount_path": "/volume2"
36
+ }
37
+ ],
38
+ "envs": [
39
+ {
40
+ "name": "USER",
41
+ "value": "test"
42
+ }
43
+ ],
44
+ "resources": {
45
+ "cpu": {
46
+ "requests": "0100m",
47
+ "limits": "0200m"
48
+ },
49
+ "mem": {
50
+ "requests": "0100Ki",
51
+ "limits": "0200Ki"
52
+ },
53
+ "gpu": {
54
+ "limits": "01"
55
+ }
56
+ },
57
+ "secrets": ["secret-key"],
58
+ "node_selector": [
59
+ {
60
+ "key": "node1",
61
+ "value": "value1"
62
+ }
63
+ ],
64
+ "function": "python://demo-etl/func1a:bbc4c820-6321-4ea8-b57b-85c472cfde09"
65
+ },
66
+ "status": {
67
+ "transitions": [
68
+ {
69
+ "status": "READY",
70
+ "time": "2024-11-20T10:58:45.486663781Z"
71
+ },
72
+ {
73
+ "status": "BUILT",
74
+ "time": "2024-11-20T10:58:45.464157733Z"
75
+ }
76
+ ],
77
+ "state": "READY"
78
+ },
79
+ "user": "digitalhubdev"
80
+ }
@@ -45,6 +45,8 @@ def is_valid(built, kind):
45
45
  with open(schemas[kind]) as schema_file:
46
46
  schema = json.load(schema_file)
47
47
 
48
+ # To validate all the properties
49
+ schema["required"] = [a for a in list(schema['properties'].keys())]
48
50
  validate(instance=built, schema=schema)
49
51
  return True
50
52
 
@@ -1,4 +0,0 @@
1
- flake8
2
- pytest
3
- pytest-cov
4
- jsonschema