runnable 0.28.0__tar.gz → 0.28.2__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.0 → runnable-0.28.2}/PKG-INFO +1 -1
  2. {runnable-0.28.0 → runnable-0.28.2}/extensions/job_executor/__init__.py +1 -7
  3. {runnable-0.28.0 → runnable-0.28.2}/extensions/job_executor/k8s.py +15 -2
  4. {runnable-0.28.0 → runnable-0.28.2}/pyproject.toml +1 -1
  5. {runnable-0.28.0 → runnable-0.28.2}/.gitignore +0 -0
  6. {runnable-0.28.0 → runnable-0.28.2}/LICENSE +0 -0
  7. {runnable-0.28.0 → runnable-0.28.2}/README.md +0 -0
  8. {runnable-0.28.0 → runnable-0.28.2}/extensions/README.md +0 -0
  9. {runnable-0.28.0 → runnable-0.28.2}/extensions/__init__.py +0 -0
  10. {runnable-0.28.0 → runnable-0.28.2}/extensions/catalog/README.md +0 -0
  11. {runnable-0.28.0 → runnable-0.28.2}/extensions/catalog/any_path.py +0 -0
  12. {runnable-0.28.0 → runnable-0.28.2}/extensions/catalog/file_system.py +0 -0
  13. {runnable-0.28.0 → runnable-0.28.2}/extensions/catalog/minio.py +0 -0
  14. {runnable-0.28.0 → runnable-0.28.2}/extensions/catalog/pyproject.toml +0 -0
  15. {runnable-0.28.0 → runnable-0.28.2}/extensions/catalog/s3.py +0 -0
  16. {runnable-0.28.0 → runnable-0.28.2}/extensions/job_executor/README.md +0 -0
  17. {runnable-0.28.0 → runnable-0.28.2}/extensions/job_executor/k8s_job_spec.yaml +0 -0
  18. {runnable-0.28.0 → runnable-0.28.2}/extensions/job_executor/local.py +0 -0
  19. {runnable-0.28.0 → runnable-0.28.2}/extensions/job_executor/local_container.py +0 -0
  20. {runnable-0.28.0 → runnable-0.28.2}/extensions/job_executor/pyproject.toml +0 -0
  21. {runnable-0.28.0 → runnable-0.28.2}/extensions/nodes/README.md +0 -0
  22. {runnable-0.28.0 → runnable-0.28.2}/extensions/nodes/nodes.py +0 -0
  23. {runnable-0.28.0 → runnable-0.28.2}/extensions/nodes/pyproject.toml +0 -0
  24. {runnable-0.28.0 → runnable-0.28.2}/extensions/pipeline_executor/README.md +0 -0
  25. {runnable-0.28.0 → runnable-0.28.2}/extensions/pipeline_executor/__init__.py +0 -0
  26. {runnable-0.28.0 → runnable-0.28.2}/extensions/pipeline_executor/argo.py +0 -0
  27. {runnable-0.28.0 → runnable-0.28.2}/extensions/pipeline_executor/local.py +0 -0
  28. {runnable-0.28.0 → runnable-0.28.2}/extensions/pipeline_executor/local_container.py +0 -0
  29. {runnable-0.28.0 → runnable-0.28.2}/extensions/pipeline_executor/mocked.py +0 -0
  30. {runnable-0.28.0 → runnable-0.28.2}/extensions/pipeline_executor/pyproject.toml +0 -0
  31. {runnable-0.28.0 → runnable-0.28.2}/extensions/pipeline_executor/retry.py +0 -0
  32. {runnable-0.28.0 → runnable-0.28.2}/extensions/run_log_store/README.md +0 -0
  33. {runnable-0.28.0 → runnable-0.28.2}/extensions/run_log_store/__init__.py +0 -0
  34. {runnable-0.28.0 → runnable-0.28.2}/extensions/run_log_store/any_path.py +0 -0
  35. {runnable-0.28.0 → runnable-0.28.2}/extensions/run_log_store/chunked_fs.py +0 -0
  36. {runnable-0.28.0 → runnable-0.28.2}/extensions/run_log_store/chunked_minio.py +0 -0
  37. {runnable-0.28.0 → runnable-0.28.2}/extensions/run_log_store/db/implementation_FF.py +0 -0
  38. {runnable-0.28.0 → runnable-0.28.2}/extensions/run_log_store/db/integration_FF.py +0 -0
  39. {runnable-0.28.0 → runnable-0.28.2}/extensions/run_log_store/file_system.py +0 -0
  40. {runnable-0.28.0 → runnable-0.28.2}/extensions/run_log_store/generic_chunked.py +0 -0
  41. {runnable-0.28.0 → runnable-0.28.2}/extensions/run_log_store/minio.py +0 -0
  42. {runnable-0.28.0 → runnable-0.28.2}/extensions/run_log_store/pyproject.toml +0 -0
  43. {runnable-0.28.0 → runnable-0.28.2}/extensions/secrets/README.md +0 -0
  44. {runnable-0.28.0 → runnable-0.28.2}/extensions/secrets/dotenv.py +0 -0
  45. {runnable-0.28.0 → runnable-0.28.2}/extensions/secrets/pyproject.toml +0 -0
  46. {runnable-0.28.0 → runnable-0.28.2}/runnable/__init__.py +0 -0
  47. {runnable-0.28.0 → runnable-0.28.2}/runnable/catalog.py +0 -0
  48. {runnable-0.28.0 → runnable-0.28.2}/runnable/cli.py +0 -0
  49. {runnable-0.28.0 → runnable-0.28.2}/runnable/context.py +0 -0
  50. {runnable-0.28.0 → runnable-0.28.2}/runnable/datastore.py +0 -0
  51. {runnable-0.28.0 → runnable-0.28.2}/runnable/defaults.py +0 -0
  52. {runnable-0.28.0 → runnable-0.28.2}/runnable/entrypoints.py +0 -0
  53. {runnable-0.28.0 → runnable-0.28.2}/runnable/exceptions.py +0 -0
  54. {runnable-0.28.0 → runnable-0.28.2}/runnable/executor.py +0 -0
  55. {runnable-0.28.0 → runnable-0.28.2}/runnable/graph.py +0 -0
  56. {runnable-0.28.0 → runnable-0.28.2}/runnable/names.py +0 -0
  57. {runnable-0.28.0 → runnable-0.28.2}/runnable/nodes.py +0 -0
  58. {runnable-0.28.0 → runnable-0.28.2}/runnable/parameters.py +0 -0
  59. {runnable-0.28.0 → runnable-0.28.2}/runnable/pickler.py +0 -0
  60. {runnable-0.28.0 → runnable-0.28.2}/runnable/sdk.py +0 -0
  61. {runnable-0.28.0 → runnable-0.28.2}/runnable/secrets.py +0 -0
  62. {runnable-0.28.0 → runnable-0.28.2}/runnable/tasks.py +0 -0
  63. {runnable-0.28.0 → runnable-0.28.2}/runnable/utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: runnable
3
- Version: 0.28.0
3
+ Version: 0.28.2
4
4
  Summary: Add your description here
5
5
  Author-email: "Vammi, Vijay" <vijay.vammi@astrazeneca.com>
6
6
  License-File: LICENSE
@@ -144,14 +144,10 @@ class GenericJobExecutor(BaseJobExecutor):
144
144
  logger.info("No catalog settings found")
145
145
  return None
146
146
 
147
- compute_data_folder = self._context.catalog_handler.compute_data_folder
148
-
149
147
  data_catalogs = []
150
148
  for name_pattern in catalog_settings:
151
149
  data_catalog = self._context.catalog_handler.put(
152
150
  name=name_pattern,
153
- run_id=self._context.run_id,
154
- compute_data_folder=compute_data_folder,
155
151
  )
156
152
 
157
153
  logger.debug(f"Added data catalog: {data_catalog} to job log")
@@ -168,7 +164,5 @@ class GenericJobExecutor(BaseJobExecutor):
168
164
  )
169
165
  task_console.save_text(log_file_name)
170
166
  # Put the log file in the catalog
171
- self._context.catalog_handler.put(
172
- name=log_file_name, run_id=self._context.run_id
173
- )
167
+ self._context.catalog_handler.put(name=log_file_name)
174
168
  os.remove(log_file_name)
@@ -34,6 +34,19 @@ class ImagePullPolicy(str, Enum):
34
34
  NEVER = "Never"
35
35
 
36
36
 
37
+ class TolerationOperator(str, Enum):
38
+ EXISTS = "Exists"
39
+ EQUAL = "Equal"
40
+
41
+
42
+ class Toleration(BaseModel):
43
+ key: str
44
+ operator: TolerationOperator = TolerationOperator.EQUAL
45
+ value: Optional[str]
46
+ effect: str
47
+ toleration_seconds: Optional[int] = Field(default=None)
48
+
49
+
37
50
  class LabelSelectorRequirement(BaseModel):
38
51
  key: str
39
52
  operator: Operator
@@ -124,7 +137,7 @@ class PVCVolume(BaseModel):
124
137
  class K8sTemplateSpec(BaseModel):
125
138
  active_deadline_seconds: int = Field(default=60 * 60 * 2) # 2 hours
126
139
  node_selector: Optional[dict[str, str]] = None
127
- tolerations: Optional[list[dict[str, str]]] = None
140
+ tolerations: Optional[list[Toleration]] = None
128
141
  volumes: Optional[list[HostPathVolume | PVCVolume]] = Field(
129
142
  default_factory=lambda: []
130
143
  )
@@ -260,7 +273,7 @@ class GenericK8sJobExecutor(GenericJobExecutor):
260
273
  tolerations = None
261
274
  if self.job_spec.template.spec.tolerations:
262
275
  tolerations = [
263
- self._client.V1Toleration(**toleration)
276
+ self._client.V1Toleration(**toleration.model_dump(by_alias=True))
264
277
  for toleration in self.job_spec.template.spec.tolerations
265
278
  ]
266
279
 
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "runnable"
3
- version = "0.28.0"
3
+ version = "0.28.2"
4
4
  description = "Add your description here"
5
5
  readme = "README.md"
6
6
  authors = [
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