runnable 0.28.4__tar.gz → 0.28.6__tar.gz

Sign up to get free protection for your applications and to get access to all the features.
Files changed (63) hide show
  1. {runnable-0.28.4 → runnable-0.28.6}/PKG-INFO +1 -1
  2. {runnable-0.28.4 → runnable-0.28.6}/extensions/job_executor/k8s.py +4 -9
  3. {runnable-0.28.4 → runnable-0.28.6}/pyproject.toml +1 -1
  4. {runnable-0.28.4 → runnable-0.28.6}/runnable/sdk.py +11 -1
  5. {runnable-0.28.4 → runnable-0.28.6}/.gitignore +0 -0
  6. {runnable-0.28.4 → runnable-0.28.6}/LICENSE +0 -0
  7. {runnable-0.28.4 → runnable-0.28.6}/README.md +0 -0
  8. {runnable-0.28.4 → runnable-0.28.6}/extensions/README.md +0 -0
  9. {runnable-0.28.4 → runnable-0.28.6}/extensions/__init__.py +0 -0
  10. {runnable-0.28.4 → runnable-0.28.6}/extensions/catalog/README.md +0 -0
  11. {runnable-0.28.4 → runnable-0.28.6}/extensions/catalog/any_path.py +0 -0
  12. {runnable-0.28.4 → runnable-0.28.6}/extensions/catalog/file_system.py +0 -0
  13. {runnable-0.28.4 → runnable-0.28.6}/extensions/catalog/minio.py +0 -0
  14. {runnable-0.28.4 → runnable-0.28.6}/extensions/catalog/pyproject.toml +0 -0
  15. {runnable-0.28.4 → runnable-0.28.6}/extensions/catalog/s3.py +0 -0
  16. {runnable-0.28.4 → runnable-0.28.6}/extensions/job_executor/README.md +0 -0
  17. {runnable-0.28.4 → runnable-0.28.6}/extensions/job_executor/__init__.py +0 -0
  18. {runnable-0.28.4 → runnable-0.28.6}/extensions/job_executor/k8s_job_spec.yaml +0 -0
  19. {runnable-0.28.4 → runnable-0.28.6}/extensions/job_executor/local.py +0 -0
  20. {runnable-0.28.4 → runnable-0.28.6}/extensions/job_executor/local_container.py +0 -0
  21. {runnable-0.28.4 → runnable-0.28.6}/extensions/job_executor/pyproject.toml +0 -0
  22. {runnable-0.28.4 → runnable-0.28.6}/extensions/nodes/README.md +0 -0
  23. {runnable-0.28.4 → runnable-0.28.6}/extensions/nodes/nodes.py +0 -0
  24. {runnable-0.28.4 → runnable-0.28.6}/extensions/nodes/pyproject.toml +0 -0
  25. {runnable-0.28.4 → runnable-0.28.6}/extensions/pipeline_executor/README.md +0 -0
  26. {runnable-0.28.4 → runnable-0.28.6}/extensions/pipeline_executor/__init__.py +0 -0
  27. {runnable-0.28.4 → runnable-0.28.6}/extensions/pipeline_executor/argo.py +0 -0
  28. {runnable-0.28.4 → runnable-0.28.6}/extensions/pipeline_executor/local.py +0 -0
  29. {runnable-0.28.4 → runnable-0.28.6}/extensions/pipeline_executor/local_container.py +0 -0
  30. {runnable-0.28.4 → runnable-0.28.6}/extensions/pipeline_executor/mocked.py +0 -0
  31. {runnable-0.28.4 → runnable-0.28.6}/extensions/pipeline_executor/pyproject.toml +0 -0
  32. {runnable-0.28.4 → runnable-0.28.6}/extensions/pipeline_executor/retry.py +0 -0
  33. {runnable-0.28.4 → runnable-0.28.6}/extensions/run_log_store/README.md +0 -0
  34. {runnable-0.28.4 → runnable-0.28.6}/extensions/run_log_store/__init__.py +0 -0
  35. {runnable-0.28.4 → runnable-0.28.6}/extensions/run_log_store/any_path.py +0 -0
  36. {runnable-0.28.4 → runnable-0.28.6}/extensions/run_log_store/chunked_fs.py +0 -0
  37. {runnable-0.28.4 → runnable-0.28.6}/extensions/run_log_store/chunked_minio.py +0 -0
  38. {runnable-0.28.4 → runnable-0.28.6}/extensions/run_log_store/db/implementation_FF.py +0 -0
  39. {runnable-0.28.4 → runnable-0.28.6}/extensions/run_log_store/db/integration_FF.py +0 -0
  40. {runnable-0.28.4 → runnable-0.28.6}/extensions/run_log_store/file_system.py +0 -0
  41. {runnable-0.28.4 → runnable-0.28.6}/extensions/run_log_store/generic_chunked.py +0 -0
  42. {runnable-0.28.4 → runnable-0.28.6}/extensions/run_log_store/minio.py +0 -0
  43. {runnable-0.28.4 → runnable-0.28.6}/extensions/run_log_store/pyproject.toml +0 -0
  44. {runnable-0.28.4 → runnable-0.28.6}/extensions/secrets/README.md +0 -0
  45. {runnable-0.28.4 → runnable-0.28.6}/extensions/secrets/dotenv.py +0 -0
  46. {runnable-0.28.4 → runnable-0.28.6}/extensions/secrets/pyproject.toml +0 -0
  47. {runnable-0.28.4 → runnable-0.28.6}/runnable/__init__.py +0 -0
  48. {runnable-0.28.4 → runnable-0.28.6}/runnable/catalog.py +0 -0
  49. {runnable-0.28.4 → runnable-0.28.6}/runnable/cli.py +0 -0
  50. {runnable-0.28.4 → runnable-0.28.6}/runnable/context.py +0 -0
  51. {runnable-0.28.4 → runnable-0.28.6}/runnable/datastore.py +0 -0
  52. {runnable-0.28.4 → runnable-0.28.6}/runnable/defaults.py +0 -0
  53. {runnable-0.28.4 → runnable-0.28.6}/runnable/entrypoints.py +0 -0
  54. {runnable-0.28.4 → runnable-0.28.6}/runnable/exceptions.py +0 -0
  55. {runnable-0.28.4 → runnable-0.28.6}/runnable/executor.py +0 -0
  56. {runnable-0.28.4 → runnable-0.28.6}/runnable/graph.py +0 -0
  57. {runnable-0.28.4 → runnable-0.28.6}/runnable/names.py +0 -0
  58. {runnable-0.28.4 → runnable-0.28.6}/runnable/nodes.py +0 -0
  59. {runnable-0.28.4 → runnable-0.28.6}/runnable/parameters.py +0 -0
  60. {runnable-0.28.4 → runnable-0.28.6}/runnable/pickler.py +0 -0
  61. {runnable-0.28.4 → runnable-0.28.6}/runnable/secrets.py +0 -0
  62. {runnable-0.28.4 → runnable-0.28.6}/runnable/tasks.py +0 -0
  63. {runnable-0.28.4 → runnable-0.28.6}/runnable/utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: runnable
3
- Version: 0.28.4
3
+ Version: 0.28.6
4
4
  Summary: Add your description here
5
5
  Author-email: "Vammi, Vijay" <vijay.vammi@astrazeneca.com>
6
6
  License-File: LICENSE
@@ -7,6 +7,7 @@ from kubernetes import client
7
7
  from kubernetes import config as k8s_config
8
8
  from pydantic import BaseModel, ConfigDict, Field, PlainSerializer, PrivateAttr
9
9
  from pydantic.alias_generators import to_camel
10
+ from rich import print
10
11
 
11
12
  from extensions.job_executor import GenericJobExecutor
12
13
  from runnable import console, defaults, utils
@@ -133,13 +134,7 @@ class HostPathVolume(BaseModelWIthConfig):
133
134
 
134
135
 
135
136
  class PVCClaim(BaseModelWIthConfig):
136
- claim_name: str
137
-
138
- model_config = ConfigDict(
139
- alias_generator=to_camel,
140
- populate_by_name=True,
141
- from_attributes=True,
142
- )
137
+ claimName: str
143
138
 
144
139
 
145
140
  class PVCVolume(BaseModelWIthConfig):
@@ -295,7 +290,7 @@ class GenericK8sJobExecutor(GenericJobExecutor):
295
290
 
296
291
  pod_spec = self._client.V1PodSpec(
297
292
  containers=[base_container],
298
- # volumes=[vol.model_dump(by_alias=True) for vol in self._volumes],
293
+ # volumes=[vol.model_dump(by_alias=True) for vol in spec_volumes],
299
294
  volumes=spec_volumes,
300
295
  tolerations=tolerations,
301
296
  **self.job_spec.template.spec.model_dump(
@@ -486,7 +481,7 @@ class K8sJobExecutor(GenericK8sJobExecutor):
486
481
  self._volumes.append(
487
482
  PVCVolume(
488
483
  name=self.pvc_claim_name,
489
- persistent_volume_claim=PVCClaim(claim_name=self.pvc_claim_name),
484
+ persistent_volume_claim=PVCClaim(claimName=self.pvc_claim_name),
490
485
  )
491
486
  )
492
487
  match self._context.run_log_store.service_name:
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "runnable"
3
- version = "0.28.4"
3
+ version = "0.28.6"
4
4
  description = "Add your description here"
5
5
  readme = "README.md"
6
6
  authors = [
@@ -824,12 +824,22 @@ class Pipeline(BaseModel):
824
824
 
825
825
  class BaseJob(BaseModel):
826
826
  catalog: Optional[Catalog] = Field(default=None, alias="catalog")
827
- overrides: Dict[str, Any] = Field(default_factory=dict, alias="overrides")
828
827
  returns: List[Union[str, TaskReturns]] = Field(
829
828
  default_factory=list, alias="returns"
830
829
  )
831
830
  secrets: List[str] = Field(default_factory=list)
832
831
 
832
+ @field_validator("catalog", mode="after")
833
+ @classmethod
834
+ def validate_catalog(cls, catalog: Optional[Catalog]) -> Optional[Catalog]:
835
+ if catalog is None:
836
+ return None
837
+
838
+ if catalog.get:
839
+ raise Exception("Catalog get is not supported for jobs")
840
+
841
+ return catalog
842
+
833
843
  def get_task(self) -> RunnableTask:
834
844
  raise NotImplementedError
835
845
 
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