dagster-k8s 0.24.4__tar.gz → 0.24.6__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 (27) hide show
  1. {dagster-k8s-0.24.4/dagster_k8s.egg-info → dagster-k8s-0.24.6}/PKG-INFO +1 -1
  2. {dagster-k8s-0.24.4 → dagster-k8s-0.24.6}/dagster_k8s/__init__.py +6 -6
  3. {dagster-k8s-0.24.4 → dagster-k8s-0.24.6}/dagster_k8s/container_context.py +3 -3
  4. {dagster-k8s-0.24.4 → dagster-k8s-0.24.6}/dagster_k8s/executor.py +4 -5
  5. {dagster-k8s-0.24.4 → dagster-k8s-0.24.6}/dagster_k8s/job.py +2 -2
  6. {dagster-k8s-0.24.4 → dagster-k8s-0.24.6}/dagster_k8s/launcher.py +9 -9
  7. {dagster-k8s-0.24.4 → dagster-k8s-0.24.6}/dagster_k8s/ops/__init__.py +1 -1
  8. {dagster-k8s-0.24.4 → dagster-k8s-0.24.6}/dagster_k8s/ops/k8s_job_op.py +4 -4
  9. {dagster-k8s-0.24.4 → dagster-k8s-0.24.6}/dagster_k8s/pipes.py +8 -5
  10. dagster-k8s-0.24.6/dagster_k8s/version.py +1 -0
  11. {dagster-k8s-0.24.4 → dagster-k8s-0.24.6/dagster_k8s.egg-info}/PKG-INFO +1 -1
  12. {dagster-k8s-0.24.4 → dagster-k8s-0.24.6}/dagster_k8s.egg-info/requires.txt +1 -1
  13. {dagster-k8s-0.24.4 → dagster-k8s-0.24.6}/setup.py +1 -1
  14. dagster-k8s-0.24.4/dagster_k8s/version.py +0 -1
  15. {dagster-k8s-0.24.4 → dagster-k8s-0.24.6}/LICENSE +0 -0
  16. {dagster-k8s-0.24.4 → dagster-k8s-0.24.6}/MANIFEST.in +0 -0
  17. {dagster-k8s-0.24.4 → dagster-k8s-0.24.6}/README.md +0 -0
  18. {dagster-k8s-0.24.4 → dagster-k8s-0.24.6}/dagster_k8s/client.py +0 -0
  19. {dagster-k8s-0.24.4 → dagster-k8s-0.24.6}/dagster_k8s/models.py +0 -0
  20. {dagster-k8s-0.24.4 → dagster-k8s-0.24.6}/dagster_k8s/py.typed +0 -0
  21. {dagster-k8s-0.24.4 → dagster-k8s-0.24.6}/dagster_k8s/test.py +0 -0
  22. {dagster-k8s-0.24.4 → dagster-k8s-0.24.6}/dagster_k8s/utils.py +0 -0
  23. {dagster-k8s-0.24.4 → dagster-k8s-0.24.6}/dagster_k8s.egg-info/SOURCES.txt +0 -0
  24. {dagster-k8s-0.24.4 → dagster-k8s-0.24.6}/dagster_k8s.egg-info/dependency_links.txt +0 -0
  25. {dagster-k8s-0.24.4 → dagster-k8s-0.24.6}/dagster_k8s.egg-info/not-zip-safe +0 -0
  26. {dagster-k8s-0.24.4 → dagster-k8s-0.24.6}/dagster_k8s.egg-info/top_level.txt +0 -0
  27. {dagster-k8s-0.24.4 → dagster-k8s-0.24.6}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: dagster-k8s
3
- Version: 0.24.4
3
+ Version: 0.24.6
4
4
  Summary: A Dagster integration for k8s
5
5
  Home-page: https://github.com/dagster-io/dagster/tree/master/python_modules/libraries/dagster-k8s
6
6
  Author: Dagster Labs
@@ -1,20 +1,20 @@
1
1
  from dagster._core.libraries import DagsterLibraryRegistry
2
2
 
3
- from .executor import k8s_job_executor as k8s_job_executor
4
- from .job import (
3
+ from dagster_k8s.executor import k8s_job_executor as k8s_job_executor
4
+ from dagster_k8s.job import (
5
5
  DagsterK8sJobConfig as DagsterK8sJobConfig,
6
6
  K8sConfigMergeBehavior as K8sConfigMergeBehavior,
7
7
  construct_dagster_k8s_job as construct_dagster_k8s_job,
8
8
  )
9
- from .launcher import K8sRunLauncher as K8sRunLauncher
10
- from .ops import (
9
+ from dagster_k8s.launcher import K8sRunLauncher as K8sRunLauncher
10
+ from dagster_k8s.ops import (
11
11
  execute_k8s_job as execute_k8s_job,
12
12
  k8s_job_op as k8s_job_op,
13
13
  )
14
- from .pipes import (
14
+ from dagster_k8s.pipes import (
15
15
  PipesK8sClient as PipesK8sClient,
16
16
  PipesK8sPodLogsMessageReader as PipesK8sPodLogsMessageReader,
17
17
  )
18
- from .version import __version__ as __version__
18
+ from dagster_k8s.version import __version__ as __version__
19
19
 
20
20
  DagsterLibraryRegistry.register("dagster-k8s", __version__)
@@ -13,15 +13,15 @@ from dagster._core.utils import parse_env_var
13
13
  from dagster._utils import hash_collection
14
14
 
15
15
  if TYPE_CHECKING:
16
- from . import K8sRunLauncher
16
+ from dagster_k8s import K8sRunLauncher
17
17
 
18
- from .job import (
18
+ from dagster_k8s.job import (
19
19
  DagsterK8sJobConfig,
20
20
  K8sConfigMergeBehavior,
21
21
  UserDefinedDagsterK8sConfig,
22
22
  get_user_defined_k8s_config,
23
23
  )
24
- from .models import k8s_snake_case_dict, k8s_snake_case_keys
24
+ from dagster_k8s.models import k8s_snake_case_dict, k8s_snake_case_keys
25
25
 
26
26
 
27
27
  def _dedupe_list(values):
@@ -24,11 +24,9 @@ from dagster._core.executor.step_delegating import (
24
24
  )
25
25
  from dagster._utils.merger import merge_dicts
26
26
 
27
- from dagster_k8s.launcher import K8sRunLauncher
28
-
29
- from .client import DagsterKubernetesClient
30
- from .container_context import K8sContainerContext
31
- from .job import (
27
+ from dagster_k8s.client import DagsterKubernetesClient
28
+ from dagster_k8s.container_context import K8sContainerContext
29
+ from dagster_k8s.job import (
32
30
  USER_DEFINED_K8S_CONFIG_SCHEMA,
33
31
  DagsterK8sJobConfig,
34
32
  UserDefinedDagsterK8sConfig,
@@ -36,6 +34,7 @@ from .job import (
36
34
  get_k8s_job_name,
37
35
  get_user_defined_k8s_config,
38
36
  )
37
+ from dagster_k8s.launcher import K8sRunLauncher
39
38
 
40
39
  _K8S_EXECUTOR_CONFIG_SCHEMA = merge_dicts(
41
40
  DagsterK8sJobConfig.config_type_job(),
@@ -23,8 +23,8 @@ from dagster._serdes import whitelist_for_serdes
23
23
  from dagster._utils.merger import merge_dicts
24
24
  from dagster._utils.security import non_secure_md5_hash_str
25
25
 
26
- from .models import k8s_model_from_dict, k8s_snake_case_dict
27
- from .utils import get_common_labels, sanitize_k8s_label
26
+ from dagster_k8s.models import k8s_model_from_dict, k8s_snake_case_dict
27
+ from dagster_k8s.utils import get_common_labels, sanitize_k8s_label
28
28
 
29
29
  # To retry step worker, users should raise RetryRequested() so that the dagster system is aware of the
30
30
  # retry. As an example, see retry_job in dagster_test.test_project.test_jobs.repo
@@ -14,9 +14,9 @@ from dagster._grpc.types import ResumeRunArgs
14
14
  from dagster._serdes import ConfigurableClass, ConfigurableClassData
15
15
  from dagster._utils.error import serializable_error_info_from_exc_info
16
16
 
17
- from .client import DagsterKubernetesClient
18
- from .container_context import K8sContainerContext
19
- from .job import DagsterK8sJobConfig, construct_dagster_k8s_job, get_job_name_from_run_id
17
+ from dagster_k8s.client import DagsterKubernetesClient
18
+ from dagster_k8s.container_context import K8sContainerContext
19
+ from dagster_k8s.job import DagsterK8sJobConfig, construct_dagster_k8s_job, get_job_name_from_run_id
20
20
 
21
21
 
22
22
  class K8sRunLauncher(RunLauncher, ConfigurableClass):
@@ -225,12 +225,6 @@ class K8sRunLauncher(RunLauncher, ConfigurableClass):
225
225
  job_config = container_context.get_k8s_job_config(
226
226
  job_image=repository_origin.container_image, run_launcher=self
227
227
  )
228
- job_image = job_config.job_image
229
- if job_image: # expected to be set
230
- self._instance.add_run_tags(
231
- run.run_id,
232
- {DOCKER_IMAGE_TAG: job_image},
233
- )
234
228
 
235
229
  labels = {
236
230
  "dagster/job": job_origin.job_name,
@@ -257,6 +251,12 @@ class K8sRunLauncher(RunLauncher, ConfigurableClass):
257
251
  ],
258
252
  )
259
253
 
254
+ # Set docker/image tag here, as it can also be provided by `user_defined_k8s_config`.
255
+ self._instance.add_run_tags(
256
+ run.run_id,
257
+ {DOCKER_IMAGE_TAG: job.spec.template.spec.containers[0].image},
258
+ )
259
+
260
260
  namespace = check.not_none(container_context.namespace)
261
261
 
262
262
  self._instance.report_engine_event(
@@ -1,4 +1,4 @@
1
- from .k8s_job_op import (
1
+ from dagster_k8s.ops.k8s_job_op import (
2
2
  execute_k8s_job as execute_k8s_job,
3
3
  k8s_job_op as k8s_job_op,
4
4
  )
@@ -19,16 +19,16 @@ from dagster._annotations import experimental
19
19
  from dagster._core.errors import DagsterExecutionInterruptedError
20
20
  from dagster._utils.merger import merge_dicts
21
21
 
22
- from ..client import DEFAULT_JOB_POD_COUNT, DagsterKubernetesClient, k8s_api_retry
23
- from ..container_context import K8sContainerContext
24
- from ..job import (
22
+ from dagster_k8s.client import DEFAULT_JOB_POD_COUNT, DagsterKubernetesClient, k8s_api_retry
23
+ from dagster_k8s.container_context import K8sContainerContext
24
+ from dagster_k8s.job import (
25
25
  DagsterK8sJobConfig,
26
26
  K8sConfigMergeBehavior,
27
27
  UserDefinedDagsterK8sConfig,
28
28
  construct_dagster_k8s_job,
29
29
  get_k8s_job_name,
30
30
  )
31
- from ..launcher import K8sRunLauncher
31
+ from dagster_k8s.launcher import K8sRunLauncher
32
32
 
33
33
  K8S_JOB_OP_CONFIG = merge_dicts(
34
34
  DagsterK8sJobConfig.config_type_container(),
@@ -1,5 +1,6 @@
1
1
  import os
2
2
  import random
3
+ import re
3
4
  import string
4
5
  from contextlib import contextmanager
5
6
  from pathlib import Path
@@ -33,15 +34,17 @@ from dagster_pipes import (
33
34
  encode_env_var,
34
35
  )
35
36
 
36
- from dagster_k8s.client import DEFAULT_WAIT_BETWEEN_ATTEMPTS
37
+ from dagster_k8s.client import (
38
+ DEFAULT_WAIT_BETWEEN_ATTEMPTS,
39
+ DagsterKubernetesClient,
40
+ WaitForPodState,
41
+ )
42
+ from dagster_k8s.models import k8s_model_from_dict, k8s_snake_case_dict
37
43
  from dagster_k8s.utils import get_common_labels
38
44
 
39
- from .client import DagsterKubernetesClient, WaitForPodState
40
- from .models import k8s_model_from_dict, k8s_snake_case_dict
41
-
42
45
 
43
46
  def get_pod_name(run_id: str, op_name: str):
44
- clean_op_name = op_name.replace("_", "-")
47
+ clean_op_name = re.sub("[^a-z0-9-]", "", op_name.lower().replace("_", "-"))
45
48
  suffix = "".join(random.choice(string.digits) for i in range(10))
46
49
  return f"dagster-{run_id[:18]}-{clean_op_name[:20]}-{suffix}"
47
50
 
@@ -0,0 +1 @@
1
+ __version__ = "0.24.6"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: dagster-k8s
3
- Version: 0.24.4
3
+ Version: 0.24.6
4
4
  Summary: A Dagster integration for k8s
5
5
  Home-page: https://github.com/dagster-io/dagster/tree/master/python_modules/libraries/dagster-k8s
6
6
  Author: Dagster Labs
@@ -1,3 +1,3 @@
1
- dagster==1.8.4
1
+ dagster==1.8.6
2
2
  kubernetes
3
3
  google-auth!=2.23.1
@@ -36,7 +36,7 @@ setup(
36
36
  include_package_data=True,
37
37
  python_requires=">=3.8,<3.13",
38
38
  install_requires=[
39
- "dagster==1.8.4",
39
+ "dagster==1.8.6",
40
40
  "kubernetes",
41
41
  # exclude a google-auth release that added an overly restrictive urllib3 pin that confuses dependency resolvers
42
42
  "google-auth!=2.23.1",
@@ -1 +0,0 @@
1
- __version__ = "0.24.4"
File without changes
File without changes
File without changes
File without changes