apache-airflow-providers-cncf-kubernetes 8.3.0rc1__py3-none-any.whl → 8.3.0rc2__py3-none-any.whl

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.
@@ -36,6 +36,7 @@ import kubernetes
36
36
  import tenacity
37
37
  from deprecated import deprecated
38
38
  from kubernetes.client import CoreV1Api, V1Pod, models as k8s
39
+ from kubernetes.client.exceptions import ApiException
39
40
  from kubernetes.stream import stream
40
41
  from urllib3.exceptions import HTTPError
41
42
 
@@ -788,9 +789,18 @@ class KubernetesPodOperator(BaseOperator):
788
789
  # Skip await_pod_completion when the event is 'timeout' due to the pod can hang
789
790
  # on the ErrImagePull or ContainerCreating step and it will never complete
790
791
  if event["status"] != "timeout":
791
- self.pod = self.pod_manager.await_pod_completion(
792
- self.pod, istio_enabled, self.base_container_name
793
- )
792
+ try:
793
+ self.pod = self.pod_manager.await_pod_completion(
794
+ self.pod, istio_enabled, self.base_container_name
795
+ )
796
+ except ApiException as e:
797
+ if e.status == 404:
798
+ self.pod = None
799
+ self.log.warning(
800
+ "Pod not found while waiting for completion. The last status was %r", event["status"]
801
+ )
802
+ else:
803
+ raise e
794
804
  if self.pod is not None:
795
805
  self.post_complete_action(
796
806
  pod=self.pod,
@@ -807,8 +817,7 @@ class KubernetesPodOperator(BaseOperator):
807
817
  logs = self.client.read_namespaced_pod_log(
808
818
  name=pod.metadata.name,
809
819
  namespace=pod.metadata.namespace,
810
- pod=pod,
811
- container_name=self.base_container_name,
820
+ container=self.base_container_name,
812
821
  follow=follow,
813
822
  timestamps=False,
814
823
  since_seconds=since_seconds,
@@ -818,11 +827,11 @@ class KubernetesPodOperator(BaseOperator):
818
827
  line = raw_line.decode("utf-8", errors="backslashreplace").rstrip("\n")
819
828
  if line:
820
829
  self.log.info("[%s] logs: %s", self.base_container_name, line)
821
- except HTTPError as e:
830
+ except (HTTPError, ApiException) as e:
822
831
  self.log.warning(
823
832
  "Reading of logs interrupted with error %r; will retry. "
824
833
  "Set log level to DEBUG for traceback.",
825
- e,
834
+ e if not isinstance(e, ApiException) else e.reason,
826
835
  )
827
836
 
828
837
  def post_complete_action(self, *, pod, remote_pod, **kwargs) -> None:
@@ -516,7 +516,7 @@ class PodManager(LoggingMixin):
516
516
  # a timeout is a normal thing and we ignore it and resume following logs
517
517
  if not isinstance(exc, TimeoutError):
518
518
  self.log.warning(
519
- "Pod %s log read interrupted but container %s still running",
519
+ "Pod %s log read interrupted but container %s still running. Logs generated in the last one second might get duplicated.",
520
520
  pod.metadata.name,
521
521
  container_name,
522
522
  )
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: apache-airflow-providers-cncf-kubernetes
3
- Version: 8.3.0rc1
3
+ Version: 8.3.0rc2
4
4
  Summary: Provider package apache-airflow-providers-cncf-kubernetes for Apache Airflow
5
5
  Keywords: airflow-provider,cncf.kubernetes,airflow,integration
6
6
  Author-email: Apache Software Foundation <dev@airflow.apache.org>
@@ -80,7 +80,7 @@ Project-URL: YouTube, https://www.youtube.com/channel/UCSXwxpWZQ7XZ1WL3wqevChA/
80
80
 
81
81
  Package ``apache-airflow-providers-cncf-kubernetes``
82
82
 
83
- Release: ``8.3.0.rc1``
83
+ Release: ``8.3.0.rc2``
84
84
 
85
85
 
86
86
  `Kubernetes <https://kubernetes.io/>`__
@@ -32,7 +32,7 @@ airflow/providers/cncf/kubernetes/operators/__init__.py,sha256=mlJxuZLkd5x-iq2SB
32
32
  airflow/providers/cncf/kubernetes/operators/custom_object_launcher.py,sha256=ZEXw_PqGItO47AEgGKqAqwFHFo-gb9-7jgEMRJgOfNU,15311
33
33
  airflow/providers/cncf/kubernetes/operators/job.py,sha256=qbhaytWCoi2XdkWZnDFfFPOt1CsNDk7wyrCWtn1nxlk,21432
34
34
  airflow/providers/cncf/kubernetes/operators/kubernetes_pod.py,sha256=EFwHEdEqq4I18BeV9hgp_GFxrLI78ihZAccbyGLSjtY,1269
35
- airflow/providers/cncf/kubernetes/operators/pod.py,sha256=jXa0llwdJDDg4oKpc-zHCSm3IfraBwmNqD5C9osZLpU,51654
35
+ airflow/providers/cncf/kubernetes/operators/pod.py,sha256=Q1pjQ8-QJyhKv3abQAwfiYKz8MpXSrjIzfnb9No7-JE,52102
36
36
  airflow/providers/cncf/kubernetes/operators/resource.py,sha256=ccbZQKB1B5N4Y-ruItacB5Q105Tc0uNSoEmUAaSCrGQ,7570
37
37
  airflow/providers/cncf/kubernetes/operators/spark_kubernetes.py,sha256=xHuxlcGeMg3afAHEW1JSU9oTdJJ_p07EiqUdA4oxJuU,13262
38
38
  airflow/providers/cncf/kubernetes/pod_template_file_examples/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
@@ -52,9 +52,9 @@ airflow/providers/cncf/kubernetes/triggers/pod.py,sha256=_zNKBpp-gr7WIFp_TUTAsoo
52
52
  airflow/providers/cncf/kubernetes/utils/__init__.py,sha256=ClZN0VPjWySdVwS_ktH7rrgL9VLAcs3OSJSB9s3zaYw,863
53
53
  airflow/providers/cncf/kubernetes/utils/delete_from.py,sha256=poObZSoEJwQyaYWilEURs8f4CDY2sn_pfwS31Lf579A,5195
54
54
  airflow/providers/cncf/kubernetes/utils/k8s_resource_iterator.py,sha256=-Pgc5i2WEDl7ZBvtJZ4eWDqqlSj8WdULqwUyOWmsRp8,1928
55
- airflow/providers/cncf/kubernetes/utils/pod_manager.py,sha256=bB5qtz7QOkGQ1ZynuJ_U8jmI0FKYYrp1iFU1Zkn-_-0,33608
55
+ airflow/providers/cncf/kubernetes/utils/pod_manager.py,sha256=g4JZpRJONuWFLdSlc7VyBtDGoST7H4W9LAt2nqNtDpg,33669
56
56
  airflow/providers/cncf/kubernetes/utils/xcom_sidecar.py,sha256=k6bdmVJ21OrAwGmWwledRrAmaty9ZrmbuM-IbaI4mqo,2519
57
- apache_airflow_providers_cncf_kubernetes-8.3.0rc1.dist-info/entry_points.txt,sha256=ByD3QJJyP9CfmTYtpNI1953akD38RUDgpGXLaq9vpOw,111
58
- apache_airflow_providers_cncf_kubernetes-8.3.0rc1.dist-info/WHEEL,sha256=EZbGkh7Ie4PoZfRQ8I0ZuP9VklN_TvcZ6DSE5Uar4z4,81
59
- apache_airflow_providers_cncf_kubernetes-8.3.0rc1.dist-info/METADATA,sha256=pcELUB2g0Ft0eSGgSeDss0kTt7p82YUqMxFeqe3eBFg,5268
60
- apache_airflow_providers_cncf_kubernetes-8.3.0rc1.dist-info/RECORD,,
57
+ apache_airflow_providers_cncf_kubernetes-8.3.0rc2.dist-info/entry_points.txt,sha256=ByD3QJJyP9CfmTYtpNI1953akD38RUDgpGXLaq9vpOw,111
58
+ apache_airflow_providers_cncf_kubernetes-8.3.0rc2.dist-info/WHEEL,sha256=EZbGkh7Ie4PoZfRQ8I0ZuP9VklN_TvcZ6DSE5Uar4z4,81
59
+ apache_airflow_providers_cncf_kubernetes-8.3.0rc2.dist-info/METADATA,sha256=ImbCRcjMVpyryEgwUjZ4h0-U9cu0cX4mQcgWAukRWOU,5268
60
+ apache_airflow_providers_cncf_kubernetes-8.3.0rc2.dist-info/RECORD,,