dagster-k8s 0.24.7__tar.gz → 0.24.9__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.

Potentially problematic release.


This version of dagster-k8s might be problematic. Click here for more details.

Files changed (27) hide show
  1. {dagster-k8s-0.24.7/dagster_k8s.egg-info → dagster-k8s-0.24.9}/PKG-INFO +1 -1
  2. {dagster-k8s-0.24.7 → dagster-k8s-0.24.9}/dagster_k8s/client.py +14 -3
  3. dagster-k8s-0.24.9/dagster_k8s/version.py +1 -0
  4. {dagster-k8s-0.24.7 → dagster-k8s-0.24.9/dagster_k8s.egg-info}/PKG-INFO +1 -1
  5. {dagster-k8s-0.24.7 → dagster-k8s-0.24.9}/dagster_k8s.egg-info/requires.txt +1 -1
  6. {dagster-k8s-0.24.7 → dagster-k8s-0.24.9}/setup.py +1 -1
  7. dagster-k8s-0.24.7/dagster_k8s/version.py +0 -1
  8. {dagster-k8s-0.24.7 → dagster-k8s-0.24.9}/LICENSE +0 -0
  9. {dagster-k8s-0.24.7 → dagster-k8s-0.24.9}/MANIFEST.in +0 -0
  10. {dagster-k8s-0.24.7 → dagster-k8s-0.24.9}/README.md +0 -0
  11. {dagster-k8s-0.24.7 → dagster-k8s-0.24.9}/dagster_k8s/__init__.py +0 -0
  12. {dagster-k8s-0.24.7 → dagster-k8s-0.24.9}/dagster_k8s/container_context.py +0 -0
  13. {dagster-k8s-0.24.7 → dagster-k8s-0.24.9}/dagster_k8s/executor.py +0 -0
  14. {dagster-k8s-0.24.7 → dagster-k8s-0.24.9}/dagster_k8s/job.py +0 -0
  15. {dagster-k8s-0.24.7 → dagster-k8s-0.24.9}/dagster_k8s/launcher.py +0 -0
  16. {dagster-k8s-0.24.7 → dagster-k8s-0.24.9}/dagster_k8s/models.py +0 -0
  17. {dagster-k8s-0.24.7 → dagster-k8s-0.24.9}/dagster_k8s/ops/__init__.py +0 -0
  18. {dagster-k8s-0.24.7 → dagster-k8s-0.24.9}/dagster_k8s/ops/k8s_job_op.py +0 -0
  19. {dagster-k8s-0.24.7 → dagster-k8s-0.24.9}/dagster_k8s/pipes.py +0 -0
  20. {dagster-k8s-0.24.7 → dagster-k8s-0.24.9}/dagster_k8s/py.typed +0 -0
  21. {dagster-k8s-0.24.7 → dagster-k8s-0.24.9}/dagster_k8s/test.py +0 -0
  22. {dagster-k8s-0.24.7 → dagster-k8s-0.24.9}/dagster_k8s/utils.py +0 -0
  23. {dagster-k8s-0.24.7 → dagster-k8s-0.24.9}/dagster_k8s.egg-info/SOURCES.txt +0 -0
  24. {dagster-k8s-0.24.7 → dagster-k8s-0.24.9}/dagster_k8s.egg-info/dependency_links.txt +0 -0
  25. {dagster-k8s-0.24.7 → dagster-k8s-0.24.9}/dagster_k8s.egg-info/not-zip-safe +0 -0
  26. {dagster-k8s-0.24.7 → dagster-k8s-0.24.9}/dagster_k8s.egg-info/top_level.txt +0 -0
  27. {dagster-k8s-0.24.7 → dagster-k8s-0.24.9}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: dagster-k8s
3
- Version: 0.24.7
3
+ Version: 0.24.9
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
@@ -570,6 +570,7 @@ class DagsterKubernetesClient:
570
570
 
571
571
  # A set of container names that have exited.
572
572
  exited_containers = set()
573
+ ready_containers = set()
573
574
  ignore_containers = ignore_containers or set()
574
575
  error_logs = []
575
576
 
@@ -613,6 +614,7 @@ class DagsterKubernetesClient:
613
614
  all_statuses = []
614
615
  all_statuses.extend(pod.status.init_container_statuses or [])
615
616
  all_statuses.extend(pod.status.container_statuses or [])
617
+ initcontainers = set(s.name for s in (pod.status.init_container_statuses or []))
616
618
 
617
619
  # Filter out ignored containers
618
620
  all_statuses = [s for s in all_statuses if s.name not in ignore_containers]
@@ -623,7 +625,9 @@ class DagsterKubernetesClient:
623
625
  #
624
626
  # In case we are waiting for the pod to be ready, we will exit after
625
627
  # the first container in this list is ready.
626
- container_status = next(s for s in all_statuses if s.name not in exited_containers)
628
+ container_status = next(
629
+ s for s in all_statuses if s.name not in exited_containers | ready_containers
630
+ )
627
631
 
628
632
  # State checks below, see:
629
633
  # https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.18/#containerstate-v1-core
@@ -638,8 +642,11 @@ class DagsterKubernetesClient:
638
642
  self.sleeper(wait_time_between_attempts)
639
643
  continue
640
644
  else:
641
- self.logger(f'Pod "{pod_name}" is ready, done waiting')
642
- break
645
+ ready_containers.add(container_status.name)
646
+ if initcontainers.issubset(exited_containers | ready_containers):
647
+ self.logger(f'Pod "{pod_name}" is ready, done waiting')
648
+ break
649
+
643
650
  else:
644
651
  check.invariant(
645
652
  wait_for_state == WaitForPodState.Terminated, "New invalid WaitForPodState"
@@ -699,6 +706,10 @@ class DagsterKubernetesClient:
699
706
 
700
707
  self.logger(msg)
701
708
  error_logs.append(msg)
709
+ elif container_name in initcontainers:
710
+ self.logger(
711
+ f"Init container {container_name} in {pod_name} has exited successfully"
712
+ )
702
713
  else:
703
714
  self.logger(f"Container {container_name} in {pod_name} has exited successfully")
704
715
 
@@ -0,0 +1 @@
1
+ __version__ = "0.24.9"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: dagster-k8s
3
- Version: 0.24.7
3
+ Version: 0.24.9
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.7
1
+ dagster==1.8.9
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.7",
39
+ "dagster==1.8.9",
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.7"
File without changes
File without changes
File without changes
File without changes