apache-airflow-providers-cncf-kubernetes 10.4.2__tar.gz → 10.4.3rc1__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 apache-airflow-providers-cncf-kubernetes might be problematic. Click here for more details.

Files changed (152) hide show
  1. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/PKG-INFO +7 -7
  2. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/README.rst +3 -3
  3. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/docs/changelog.rst +17 -0
  4. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/docs/commits.rst +16 -1
  5. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/docs/index.rst +1 -1
  6. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/provider.yaml +2 -1
  7. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/pyproject.toml +4 -4
  8. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/__init__.py +1 -1
  9. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/backcompat/backwards_compat_converters.py +5 -8
  10. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/cli/kubernetes_command.py +4 -1
  11. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/executors/kubernetes_executor.py +12 -3
  12. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/executors/kubernetes_executor_utils.py +3 -6
  13. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/hooks/kubernetes.py +5 -7
  14. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/kubernetes_helper_functions.py +1 -2
  15. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/operators/custom_object_launcher.py +2 -3
  16. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/operators/job.py +1 -1
  17. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/operators/kueue.py +1 -1
  18. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/operators/pod.py +2 -2
  19. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/operators/resource.py +1 -2
  20. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/operators/spark_kubernetes.py +1 -1
  21. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/pod_generator.py +5 -6
  22. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/resource_convert/env_variable.py +1 -1
  23. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/sensors/spark_kubernetes.py +3 -4
  24. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/template_rendering.py +0 -17
  25. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/triggers/pod.py +2 -3
  26. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/utils/pod_manager.py +8 -9
  27. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/conftest.py +1 -1
  28. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/test_template_rendering.py +2 -30
  29. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/docs/.latest-doc-only-change.txt +0 -0
  30. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/docs/cli-ref.rst +0 -0
  31. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/docs/conf.py +0 -0
  32. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/docs/configurations-ref.rst +0 -0
  33. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/docs/connections/kubernetes.rst +0 -0
  34. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/docs/img/arch-diag-kubernetes.png +0 -0
  35. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/docs/img/arch-diag-kubernetes2.png +0 -0
  36. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/docs/img/k8s-failed-pod.png +0 -0
  37. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/docs/img/k8s-happy-path.png +0 -0
  38. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/docs/installing-providers-from-sources.rst +0 -0
  39. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/docs/integration-logos/Kubernetes.png +0 -0
  40. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/docs/integration-logos/Spark-On-Kubernetes.png +0 -0
  41. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/docs/kubernetes_executor.rst +0 -0
  42. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/docs/local_kubernetes_executor.rst +0 -0
  43. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/docs/operators.rst +0 -0
  44. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/docs/redirects.txt +0 -0
  45. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/docs/security.rst +0 -0
  46. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/__init__.py +0 -0
  47. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/__init__.py +0 -0
  48. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/__init__.py +0 -0
  49. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/LICENSE +0 -0
  50. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/backcompat/__init__.py +0 -0
  51. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/callbacks.py +0 -0
  52. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/cli/__init__.py +0 -0
  53. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/decorators/__init__.py +0 -0
  54. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/decorators/kubernetes.py +0 -0
  55. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/exceptions.py +0 -0
  56. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/executors/__init__.py +0 -0
  57. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/executors/kubernetes_executor_types.py +0 -0
  58. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/executors/local_kubernetes_executor.py +0 -0
  59. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/get_provider_info.py +0 -0
  60. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/hooks/__init__.py +0 -0
  61. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/k8s_model.py +0 -0
  62. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/kube_client.py +0 -0
  63. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/kube_config.py +0 -0
  64. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/kubernetes_executor_templates/__init__.py +0 -0
  65. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/kubernetes_executor_templates/basic_template.yaml +0 -0
  66. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/operators/__init__.py +0 -0
  67. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/pod_template_file_examples/__init__.py +0 -0
  68. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/pod_template_file_examples/dags_in_image_template.yaml +0 -0
  69. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/pod_template_file_examples/dags_in_volume_template.yaml +0 -0
  70. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/pod_template_file_examples/git_sync_template.yaml +0 -0
  71. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/python_kubernetes_script.jinja2 +0 -0
  72. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/python_kubernetes_script.py +0 -0
  73. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/resource_convert/__init__.py +0 -0
  74. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/resource_convert/configmap.py +0 -0
  75. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/resource_convert/secret.py +0 -0
  76. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/secret.py +0 -0
  77. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/sensors/__init__.py +0 -0
  78. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/triggers/__init__.py +0 -0
  79. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/triggers/job.py +0 -0
  80. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/utils/__init__.py +0 -0
  81. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/utils/delete_from.py +0 -0
  82. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/utils/k8s_resource_iterator.py +0 -0
  83. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/utils/xcom_sidecar.py +0 -0
  84. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/src/airflow/providers/cncf/kubernetes/version_compat.py +0 -0
  85. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/conftest.py +0 -0
  86. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/system/__init__.py +0 -0
  87. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/system/cncf/__init__.py +0 -0
  88. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/system/cncf/kubernetes/__init__.py +0 -0
  89. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/system/cncf/kubernetes/example_kubernetes.py +0 -0
  90. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/system/cncf/kubernetes/example_kubernetes_async.py +0 -0
  91. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/system/cncf/kubernetes/example_kubernetes_decorator.py +0 -0
  92. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/system/cncf/kubernetes/example_kubernetes_job.py +0 -0
  93. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/system/cncf/kubernetes/example_kubernetes_kueue.py +0 -0
  94. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/system/cncf/kubernetes/example_kubernetes_resource.py +0 -0
  95. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/system/cncf/kubernetes/example_spark_kubernetes.py +0 -0
  96. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/system/cncf/kubernetes/example_spark_kubernetes_spark_pi.yaml +0 -0
  97. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/system/cncf/kubernetes/spark_job_template.yaml +0 -0
  98. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/__init__.py +0 -0
  99. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/__init__.py +0 -0
  100. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/__init__.py +0 -0
  101. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/backcompat/__init__.py +0 -0
  102. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/backcompat/test_backwards_compat_converters.py +0 -0
  103. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/cli/__init__.py +0 -0
  104. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/cli/test_kubernetes_command.py +0 -0
  105. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/data_files/__init__.py +0 -0
  106. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/data_files/executor/__init__.py +0 -0
  107. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/data_files/executor/basic_template.yaml +0 -0
  108. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/data_files/kube_config +0 -0
  109. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/data_files/pods/__init__.py +0 -0
  110. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/data_files/pods/generator_base.yaml +0 -0
  111. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/data_files/pods/generator_base_with_secrets.yaml +0 -0
  112. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/data_files/pods/template.yaml +0 -0
  113. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/data_files/spark/__init__.py +0 -0
  114. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/data_files/spark/application_template.yaml +0 -0
  115. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/data_files/spark/application_test.json +0 -0
  116. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/data_files/spark/application_test.yaml +0 -0
  117. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/data_files/spark/application_test_with_no_name_from_config.json +0 -0
  118. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/data_files/spark/application_test_with_no_name_from_config.yaml +0 -0
  119. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/decorators/__init__.py +0 -0
  120. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/decorators/test_kubernetes.py +0 -0
  121. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/executors/__init__.py +0 -0
  122. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/executors/test_kubernetes_executor.py +0 -0
  123. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/executors/test_local_kubernetes_executor.py +0 -0
  124. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/hooks/__init__.py +0 -0
  125. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/hooks/test_kubernetes.py +0 -0
  126. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/log_handlers/__init__.py +0 -0
  127. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/log_handlers/test_log_handlers.py +0 -0
  128. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/models/__init__.py +0 -0
  129. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/models/test_secret.py +0 -0
  130. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/operators/__init__.py +0 -0
  131. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/operators/test_custom_object_launcher.py +0 -0
  132. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/operators/test_job.py +0 -0
  133. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/operators/test_kueue.py +0 -0
  134. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/operators/test_pod.py +0 -0
  135. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/operators/test_resource.py +0 -0
  136. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/operators/test_spark_kubernetes.py +0 -0
  137. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/resource_convert/__init__.py +0 -0
  138. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/resource_convert/test_configmap.py +0 -0
  139. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/resource_convert/test_env_variable.py +0 -0
  140. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/resource_convert/test_secret.py +0 -0
  141. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/sensors/__init__.py +0 -0
  142. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/sensors/test_spark_kubernetes.py +0 -0
  143. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/test_callbacks.py +0 -0
  144. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/test_client.py +0 -0
  145. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/test_kubernetes_helper_functions.py +0 -0
  146. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/test_pod_generator.py +0 -0
  147. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/triggers/__init__.py +0 -0
  148. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/triggers/test_job.py +0 -0
  149. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/triggers/test_pod.py +0 -0
  150. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/utils/__init__.py +0 -0
  151. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/utils/test_k8s_resource_iterator.py +0 -0
  152. {apache_airflow_providers_cncf_kubernetes-10.4.2 → apache_airflow_providers_cncf_kubernetes-10.4.3rc1}/tests/unit/cncf/kubernetes/utils/test_pod_manager.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: apache-airflow-providers-cncf-kubernetes
3
- Version: 10.4.2
3
+ Version: 10.4.3rc1
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>
@@ -21,14 +21,14 @@ Classifier: Programming Language :: Python :: 3.11
21
21
  Classifier: Programming Language :: Python :: 3.12
22
22
  Classifier: Topic :: System :: Monitoring
23
23
  Requires-Dist: aiofiles>=23.2.0
24
- Requires-Dist: apache-airflow>=2.9.0
24
+ Requires-Dist: apache-airflow>=2.9.0rc0
25
25
  Requires-Dist: asgiref>=3.5.2
26
26
  Requires-Dist: cryptography>=41.0.0
27
27
  Requires-Dist: kubernetes>=29.0.0,<=31.0.0
28
28
  Requires-Dist: kubernetes_asyncio>=29.0.0,<=31.0.0
29
29
  Project-URL: Bug Tracker, https://github.com/apache/airflow/issues
30
- Project-URL: Changelog, https://airflow.apache.org/docs/apache-airflow-providers-cncf-kubernetes/10.4.2/changelog.html
31
- Project-URL: Documentation, https://airflow.apache.org/docs/apache-airflow-providers-cncf-kubernetes/10.4.2
30
+ Project-URL: Changelog, https://airflow.apache.org/docs/apache-airflow-providers-cncf-kubernetes/10.4.3/changelog.html
31
+ Project-URL: Documentation, https://airflow.apache.org/docs/apache-airflow-providers-cncf-kubernetes/10.4.3
32
32
  Project-URL: Mastodon, https://fosstodon.org/@airflow
33
33
  Project-URL: Slack Chat, https://s.apache.org/airflow-slack
34
34
  Project-URL: Source Code, https://github.com/apache/airflow
@@ -59,7 +59,7 @@ Project-URL: YouTube, https://www.youtube.com/channel/UCSXwxpWZQ7XZ1WL3wqevChA/
59
59
 
60
60
  Package ``apache-airflow-providers-cncf-kubernetes``
61
61
 
62
- Release: ``10.4.2``
62
+ Release: ``10.4.3``
63
63
 
64
64
 
65
65
  `Kubernetes <https://kubernetes.io/>`__
@@ -72,7 +72,7 @@ This is a provider package for ``cncf.kubernetes`` provider. All classes for thi
72
72
  are in ``airflow.providers.cncf.kubernetes`` python package.
73
73
 
74
74
  You can find package information and changelog for the provider
75
- in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-cncf-kubernetes/10.4.2/>`_.
75
+ in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-cncf-kubernetes/10.4.3/>`_.
76
76
 
77
77
  Installation
78
78
  ------------
@@ -98,5 +98,5 @@ PIP package Version required
98
98
  ====================== =====================
99
99
 
100
100
  The changelog for the provider package can be found in the
101
- `changelog <https://airflow.apache.org/docs/apache-airflow-providers-cncf-kubernetes/10.4.2/changelog.html>`_.
101
+ `changelog <https://airflow.apache.org/docs/apache-airflow-providers-cncf-kubernetes/10.4.3/changelog.html>`_.
102
102
 
@@ -23,7 +23,7 @@
23
23
 
24
24
  Package ``apache-airflow-providers-cncf-kubernetes``
25
25
 
26
- Release: ``10.4.2``
26
+ Release: ``10.4.3``
27
27
 
28
28
 
29
29
  `Kubernetes <https://kubernetes.io/>`__
@@ -36,7 +36,7 @@ This is a provider package for ``cncf.kubernetes`` provider. All classes for thi
36
36
  are in ``airflow.providers.cncf.kubernetes`` python package.
37
37
 
38
38
  You can find package information and changelog for the provider
39
- in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-cncf-kubernetes/10.4.2/>`_.
39
+ in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-cncf-kubernetes/10.4.3/>`_.
40
40
 
41
41
  Installation
42
42
  ------------
@@ -62,4 +62,4 @@ PIP package Version required
62
62
  ====================== =====================
63
63
 
64
64
  The changelog for the provider package can be found in the
65
- `changelog <https://airflow.apache.org/docs/apache-airflow-providers-cncf-kubernetes/10.4.2/changelog.html>`_.
65
+ `changelog <https://airflow.apache.org/docs/apache-airflow-providers-cncf-kubernetes/10.4.3/changelog.html>`_.
@@ -28,6 +28,23 @@ Changelog
28
28
  ---------
29
29
 
30
30
 
31
+ 10.4.3
32
+ ......
33
+
34
+ Bug Fixes
35
+ ~~~~~~~~~
36
+
37
+ * ``Remove 'subdir' arg from CLI commands (#49317)``
38
+
39
+ Misc
40
+ ~~~~
41
+
42
+ * ``Use contextlib.suppress(exception) instead of try-except-pass and add SIM105 ruff rule (#49251)``
43
+ * ``remove superfluous else block (#49199)``
44
+ * ``Remove unused db method in k8s provider (#49186)``
45
+
46
+
47
+
31
48
  10.4.2
32
49
  ......
33
50
 
@@ -34,14 +34,29 @@ For high-level changelog, see :doc:`package information including changelog <ind
34
34
 
35
35
 
36
36
 
37
+ 10.4.3
38
+ ......
39
+
40
+ Latest change: 2025-04-16
41
+
42
+ ================================================================================================== =========== ===================================================================================================
43
+ Commit Committed Subject
44
+ ================================================================================================== =========== ===================================================================================================
45
+ `694bdc6c43 <https://github.com/apache/airflow/commit/694bdc6c43f926a20dd765e5a20a238884325c29>`__ 2025-04-16 ``Remove 'subdir' arg from CLI commands (#49317)``
46
+ `47bd8961a9 <https://github.com/apache/airflow/commit/47bd8961a9ce4e2cea0dbabd400d2508eb291948>`__ 2025-04-15 ``Use contextlib.suppress(exception) instead of try-except-pass and add SIM105 ruff rule (#49251)``
47
+ `cb295c351a <https://github.com/apache/airflow/commit/cb295c351a016c0a10cab07f2a628b865cff3ca3>`__ 2025-04-14 ``remove superfluous else block (#49199)``
48
+ `0ca0f17996 <https://github.com/apache/airflow/commit/0ca0f17996c86efb292cf5b10181944c67e3b862>`__ 2025-04-13 ``Remove unused db method in k8s provider (#49186)``
49
+ ================================================================================================== =========== ===================================================================================================
50
+
37
51
  10.4.2
38
52
  ......
39
53
 
40
- Latest change: 2025-04-08
54
+ Latest change: 2025-04-10
41
55
 
42
56
  ================================================================================================== =========== ==================================================================================
43
57
  Commit Committed Subject
44
58
  ================================================================================================== =========== ==================================================================================
59
+ `4a8567b20b <https://github.com/apache/airflow/commit/4a8567b20bdd6555cbdc936d6674bf4fa390b0d5>`__ 2025-04-10 ``Prepare docs for Apr 2nd wave of providers (#49051)``
45
60
  `7b2ec33c7a <https://github.com/apache/airflow/commit/7b2ec33c7ad4998d9c9735b79593fcdcd3b9dd1f>`__ 2025-04-08 ``Remove unnecessary entries in get_provider_info and update the schema (#48849)``
46
61
  `86d5b27f92 <https://github.com/apache/airflow/commit/86d5b27f92207571ebe0c29a42c42abbf6f8cb8c>`__ 2025-04-08 ``Make '@task' import from airflow.sdk (#48896)``
47
62
  `139673d3ce <https://github.com/apache/airflow/commit/139673d3ce5552c2cf8bcb2d202e97342c4b237c>`__ 2025-04-07 ``Remove fab from preinstalled providers (#48457)``
@@ -87,7 +87,7 @@ apache-airflow-providers-cncf-kubernetes package
87
87
  `Kubernetes <https://kubernetes.io/>`__
88
88
 
89
89
 
90
- Release: 10.4.2
90
+ Release: 10.4.3
91
91
 
92
92
  Provider package
93
93
  ----------------
@@ -22,9 +22,10 @@ description: |
22
22
  `Kubernetes <https://kubernetes.io/>`__
23
23
 
24
24
  state: ready
25
- source-date-epoch: 1744281222
25
+ source-date-epoch: 1744788926
26
26
  # note that those versions are maintained by release manager - do not update them manually
27
27
  versions:
28
+ - 10.4.3
28
29
  - 10.4.2
29
30
  - 10.4.1
30
31
  - 10.4.0
@@ -25,7 +25,7 @@ build-backend = "flit_core.buildapi"
25
25
 
26
26
  [project]
27
27
  name = "apache-airflow-providers-cncf-kubernetes"
28
- version = "10.4.2"
28
+ version = "10.4.3.rc1"
29
29
  description = "Provider package apache-airflow-providers-cncf-kubernetes for Apache Airflow"
30
30
  readme = "README.rst"
31
31
  authors = [
@@ -58,7 +58,7 @@ requires-python = "~=3.9"
58
58
  # After you modify the dependencies, and rebuild your Breeze CI image with ``breeze ci-image build``
59
59
  dependencies = [
60
60
  "aiofiles>=23.2.0",
61
- "apache-airflow>=2.9.0",
61
+ "apache-airflow>=2.9.0rc0",
62
62
  "asgiref>=3.5.2",
63
63
  "cryptography>=41.0.0",
64
64
  # The Kubernetes API is known to introduce problems when upgraded to a MAJOR version. Airflow Core
@@ -112,8 +112,8 @@ apache-airflow-providers-common-sql = {workspace = true}
112
112
  apache-airflow-providers-standard = {workspace = true}
113
113
 
114
114
  [project.urls]
115
- "Documentation" = "https://airflow.apache.org/docs/apache-airflow-providers-cncf-kubernetes/10.4.2"
116
- "Changelog" = "https://airflow.apache.org/docs/apache-airflow-providers-cncf-kubernetes/10.4.2/changelog.html"
115
+ "Documentation" = "https://airflow.apache.org/docs/apache-airflow-providers-cncf-kubernetes/10.4.3"
116
+ "Changelog" = "https://airflow.apache.org/docs/apache-airflow-providers-cncf-kubernetes/10.4.3/changelog.html"
117
117
  "Bug Tracker" = "https://github.com/apache/airflow/issues"
118
118
  "Source Code" = "https://github.com/apache/airflow"
119
119
  "Slack Chat" = "https://s.apache.org/airflow-slack"
@@ -29,7 +29,7 @@ from airflow import __version__ as airflow_version
29
29
 
30
30
  __all__ = ["__version__"]
31
31
 
32
- __version__ = "10.4.2"
32
+ __version__ = "10.4.3"
33
33
 
34
34
  if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
35
35
  "2.9.0"
@@ -27,20 +27,18 @@ def _convert_kube_model_object(obj, new_class):
27
27
  convert_op = getattr(obj, "to_k8s_client_obj", None)
28
28
  if callable(convert_op):
29
29
  return obj.to_k8s_client_obj()
30
- elif isinstance(obj, new_class):
30
+ if isinstance(obj, new_class):
31
31
  return obj
32
- else:
33
- raise AirflowException(f"Expected {new_class}, got {type(obj)}")
32
+ raise AirflowException(f"Expected {new_class}, got {type(obj)}")
34
33
 
35
34
 
36
35
  def _convert_from_dict(obj, new_class):
37
36
  if isinstance(obj, new_class):
38
37
  return obj
39
- elif isinstance(obj, dict):
38
+ if isinstance(obj, dict):
40
39
  api_client = ApiClient()
41
40
  return api_client._ApiClient__deserialize_model(obj, new_class)
42
- else:
43
- raise AirflowException(f"Expected dict or {new_class}, got {type(obj)}")
41
+ raise AirflowException(f"Expected dict or {new_class}, got {type(obj)}")
44
42
 
45
43
 
46
44
  def convert_volume(volume) -> k8s.V1Volume:
@@ -111,8 +109,7 @@ def convert_image_pull_secrets(image_pull_secrets) -> list[k8s.V1LocalObjectRefe
111
109
  if isinstance(image_pull_secrets, str):
112
110
  secrets = image_pull_secrets.split(",")
113
111
  return [k8s.V1LocalObjectReference(name=secret) for secret in secrets]
114
- else:
115
- return image_pull_secrets
112
+ return image_pull_secrets
116
113
 
117
114
 
118
115
  def convert_configmap(configmaps) -> k8s.V1EnvFromSource:
@@ -43,7 +43,10 @@ from airflow.utils.providers_configuration_loader import providers_configuration
43
43
  def generate_pod_yaml(args):
44
44
  """Generate yaml files for each task in the DAG. Used for testing output of KubernetesExecutor."""
45
45
  logical_date = args.logical_date if AIRFLOW_V_3_0_PLUS else args.execution_date
46
- dag = get_dag(subdir=args.subdir, dag_id=args.dag_id)
46
+ if AIRFLOW_V_3_0_PLUS:
47
+ dag = get_dag(bundle_names=args.bundle_name, dag_id=args.dag_id)
48
+ else:
49
+ dag = get_dag(subdir=args.subdir, dag_id=args.dag_id)
47
50
  yaml_output_path = args.output_path
48
51
  if AIRFLOW_V_3_0_PLUS:
49
52
  dr = DagRun(dag.dag_id, logical_date=logical_date)
@@ -52,7 +52,6 @@ except ImportError: # 2.x compatibility.
52
52
  from airflow.cli.cli_config import (
53
53
  ARG_DAG_ID,
54
54
  ARG_OUTPUT_PATH,
55
- ARG_SUBDIR,
56
55
  ARG_VERBOSE,
57
56
  ActionCommand,
58
57
  Arg,
@@ -94,6 +93,16 @@ if TYPE_CHECKING:
94
93
  AirflowKubernetesScheduler,
95
94
  )
96
95
 
96
+
97
+ if AIRFLOW_V_3_0_PLUS:
98
+ from airflow.cli.cli_config import ARG_BUNDLE_NAME
99
+
100
+ ARG_COMPAT = ARG_BUNDLE_NAME
101
+ else:
102
+ from airflow.cli.cli_config import ARG_SUBDIR # type: ignore[attr-defined]
103
+
104
+ ARG_COMPAT = ARG_SUBDIR
105
+
97
106
  # CLI Args
98
107
  ARG_NAMESPACE = Arg(
99
108
  ("--namespace",),
@@ -128,7 +137,7 @@ KUBERNETES_COMMANDS = (
128
137
  help="Generate YAML files for all tasks in DAG. Useful for debugging tasks without "
129
138
  "launching into a cluster",
130
139
  func=lazy_load_command("airflow.providers.cncf.kubernetes.cli.kubernetes_command.generate_pod_yaml"),
131
- args=(ARG_DAG_ID, ARG_LOGICAL_DATE, ARG_SUBDIR, ARG_OUTPUT_PATH, ARG_VERBOSE),
140
+ args=(ARG_DAG_ID, ARG_LOGICAL_DATE, ARG_COMPAT, ARG_OUTPUT_PATH, ARG_VERBOSE),
132
141
  ),
133
142
  )
134
143
 
@@ -482,7 +491,7 @@ class KubernetesExecutor(BaseExecutor):
482
491
  ).items
483
492
  if not pod_list:
484
493
  raise RuntimeError("Cannot find pod for ti %s", ti)
485
- elif len(pod_list) > 1:
494
+ if len(pod_list) > 1:
486
495
  raise RuntimeError("Found multiple pods for ti %s: %s", ti, pod_list)
487
496
  res = client.read_namespaced_pod_log(
488
497
  name=pod_list[0].metadata.name,
@@ -110,8 +110,7 @@ class KubernetesJobWatcher(multiprocessing.Process, LoggingMixin):
110
110
  try:
111
111
  if self.namespace == ALL_NAMESPACES:
112
112
  return watcher.stream(kube_client.list_pod_for_all_namespaces, **query_kwargs)
113
- else:
114
- return watcher.stream(kube_client.list_namespaced_pod, self.namespace, **query_kwargs)
113
+ return watcher.stream(kube_client.list_namespaced_pod, self.namespace, **query_kwargs)
115
114
  except ApiException as e:
116
115
  if str(e.status) == "410": # Resource version is too old
117
116
  if self.namespace == ALL_NAMESPACES:
@@ -121,8 +120,7 @@ class KubernetesJobWatcher(multiprocessing.Process, LoggingMixin):
121
120
  resource_version = pods.metadata.resource_version
122
121
  query_kwargs["resource_version"] = resource_version
123
122
  return self._pod_events(kube_client=kube_client, query_kwargs=query_kwargs)
124
- else:
125
- raise
123
+ raise
126
124
 
127
125
  def _run(
128
126
  self,
@@ -564,5 +562,4 @@ def get_base_pod_from_template(pod_template_file: str | None, kube_config: Any)
564
562
  """
565
563
  if pod_template_file:
566
564
  return PodGenerator.deserialize_model_file(pod_template_file)
567
- else:
568
- return PodGenerator.deserialize_model_file(kube_config.pod_template_file)
565
+ return PodGenerator.deserialize_model_file(kube_config.pod_template_file)
@@ -177,8 +177,7 @@ class KubernetesHook(BaseHook, PodOperatorHookProtocol):
177
177
  except AirflowNotFoundException:
178
178
  if conn_id == cls.default_conn_name:
179
179
  return Connection(conn_id=cls.default_conn_name)
180
- else:
181
- raise
180
+ raise
182
181
 
183
182
  @cached_property
184
183
  def conn_extras(self):
@@ -691,9 +690,8 @@ class KubernetesHook(BaseHook, PodOperatorHookProtocol):
691
690
  and replicas == ready_replicas
692
691
  ):
693
692
  return
694
- else:
695
- self.log.info("Waiting until Deployment will be ready...")
696
- sleep(polling_period_seconds)
693
+ self.log.info("Waiting until Deployment will be ready...")
694
+ sleep(polling_period_seconds)
697
695
 
698
696
  _timeout -= polling_period_seconds
699
697
 
@@ -713,10 +711,10 @@ def _get_bool(val) -> bool | None:
713
711
  """Convert val to bool if can be done with certainty; if we cannot infer intention we return None."""
714
712
  if isinstance(val, bool):
715
713
  return val
716
- elif isinstance(val, str):
714
+ if isinstance(val, str):
717
715
  if val.strip().lower() == "true":
718
716
  return True
719
- elif val.strip().lower() == "false":
717
+ if val.strip().lower() == "false":
720
718
  return False
721
719
  return None
722
720
 
@@ -89,8 +89,7 @@ def create_unique_id(
89
89
  base_name = slugify(name, lowercase=True)[:max_length].strip(".-")
90
90
  if unique:
91
91
  return add_unique_suffix(name=base_name, rand_len=8, max_len=max_length)
92
- else:
93
- return base_name
92
+ return base_name
94
93
 
95
94
 
96
95
  def annotations_to_key(annotations: dict[str, str]) -> TaskInstanceKey:
@@ -18,6 +18,7 @@
18
18
 
19
19
  from __future__ import annotations
20
20
 
21
+ import contextlib
21
22
  import time
22
23
  from copy import deepcopy
23
24
  from datetime import datetime as dt
@@ -326,12 +327,10 @@ class CustomObjectLauncher(LoggingMixin):
326
327
  driver_state = spark_job_info.get("status", {}).get("applicationState", {}).get("state", "SUBMITTED")
327
328
  if driver_state == CustomObjectStatus.FAILED:
328
329
  err = spark_job_info.get("status", {}).get("applicationState", {}).get("errorMessage", "N/A")
329
- try:
330
+ with contextlib.suppress(Exception):
330
331
  self.pod_manager.fetch_container_logs(
331
332
  pod=self.pod_spec, container_name="spark-kubernetes-driver"
332
333
  )
333
- except Exception:
334
- pass
335
334
  raise AirflowException(f"Spark Job Failed. Error stack: {err}")
336
335
  return driver_state == CustomObjectStatus.SUBMITTED
337
336
 
@@ -389,7 +389,7 @@ class KubernetesJobOperator(KubernetesPodOperator):
389
389
  return base_spec
390
390
  if not base_spec and client_spec:
391
391
  return client_spec
392
- elif client_spec and base_spec:
392
+ if client_spec and base_spec:
393
393
  client_spec.template.spec = PodGenerator.reconcile_specs(
394
394
  base_spec.template.spec, client_spec.template.spec
395
395
  )
@@ -101,7 +101,7 @@ class KubernetesStartKueueJobOperator(KubernetesJobOperator):
101
101
  "The `suspend` parameter can't be False. If you want to use Kueue for running Job"
102
102
  " in a Kubernetes cluster, set the `suspend` parameter to True.",
103
103
  )
104
- elif self.suspend is None:
104
+ if self.suspend is None:
105
105
  self.log.info(
106
106
  "You have not set parameter `suspend` in class %s. "
107
107
  "For running a Job in Kueue the `suspend` parameter has been set to True.",
@@ -857,7 +857,7 @@ class KubernetesPodOperator(BaseOperator):
857
857
  message = event.get("stack_trace", event["message"])
858
858
  raise AirflowException(message)
859
859
 
860
- elif event["status"] == "running":
860
+ if event["status"] == "running":
861
861
  if self.get_logs:
862
862
  self.log.info("Resuming logs read from time %r", last_log_time)
863
863
 
@@ -1297,7 +1297,7 @@ class _optionally_suppress(AbstractContextManager):
1297
1297
  matching_error = error and issubclass(exctype, self._exceptions)
1298
1298
  if (error and not matching_error) or (matching_error and self.reraise):
1299
1299
  return False
1300
- elif matching_error:
1300
+ if matching_error:
1301
1301
  self.exception = excinst
1302
1302
  logger = logging.getLogger(__name__)
1303
1303
  logger.exception(excinst)
@@ -99,8 +99,7 @@ class KubernetesResourceBaseOperator(BaseOperator):
99
99
  def get_namespace(self) -> str:
100
100
  if self._namespace:
101
101
  return self._namespace
102
- else:
103
- return self.hook.get_namespace() or "default"
102
+ return self.hook.get_namespace() or "default"
104
103
 
105
104
  def get_crd_fields(self, body: dict) -> tuple[str, str, str, str]:
106
105
  api_version = body["apiVersion"]
@@ -245,7 +245,7 @@ class SparkKubernetesOperator(KubernetesPodOperator):
245
245
  pod = None
246
246
  if len(pod_list) > 1: # and self.reattach_on_restart:
247
247
  raise AirflowException(f"More than one pod running with labels: {label_selector}")
248
- elif len(pod_list) == 1:
248
+ if len(pod_list) == 1:
249
249
  pod = pod_list[0]
250
250
  self.log.info(
251
251
  "Found matching driver pod %s with labels %s", pod.metadata.name, pod.metadata.labels
@@ -162,10 +162,9 @@ class PodGenerator:
162
162
 
163
163
  if isinstance(k8s_object, k8s.V1Pod):
164
164
  return k8s_object
165
- else:
166
- raise TypeError(
167
- "Cannot convert a non-kubernetes.client.models.V1Pod object into a KubernetesExecutorConfig"
168
- )
165
+ raise TypeError(
166
+ "Cannot convert a non-kubernetes.client.models.V1Pod object into a KubernetesExecutorConfig"
167
+ )
169
168
 
170
169
  @staticmethod
171
170
  def reconcile_pods(base_pod: k8s.V1Pod, client_pod: k8s.V1Pod | None) -> k8s.V1Pod:
@@ -203,7 +202,7 @@ class PodGenerator:
203
202
  return base_meta
204
203
  if not base_meta and client_meta:
205
204
  return client_meta
206
- elif client_meta and base_meta:
205
+ if client_meta and base_meta:
207
206
  client_meta.labels = merge_objects(base_meta.labels, client_meta.labels)
208
207
  client_meta.annotations = merge_objects(base_meta.annotations, client_meta.annotations)
209
208
  extend_object_field(base_meta, client_meta, "managed_fields")
@@ -229,7 +228,7 @@ class PodGenerator:
229
228
  return base_spec
230
229
  if not base_spec and client_spec:
231
230
  return client_spec
232
- elif client_spec and base_spec:
231
+ if client_spec and base_spec:
233
232
  client_spec.containers = PodGenerator.reconcile_containers(
234
233
  base_spec.containers, client_spec.containers
235
234
  )
@@ -33,7 +33,7 @@ def convert_env_vars(env_vars) -> list[k8s.V1EnvVar]:
33
33
  for k, v in env_vars.items():
34
34
  res.append(k8s.V1EnvVar(name=k, value=v))
35
35
  return res
36
- elif isinstance(env_vars, list):
36
+ if isinstance(env_vars, list):
37
37
  if all([isinstance(e, k8s.V1EnvVar) for e in env_vars]):
38
38
  return env_vars
39
39
  raise AirflowException(f"Expected dict or list of V1EnvVar, got {type(env_vars)}")
@@ -128,9 +128,8 @@ class SparkKubernetesSensor(BaseSensorOperator):
128
128
  if application_state in self.FAILURE_STATES:
129
129
  message = f"Spark application failed with state: {application_state}"
130
130
  raise AirflowException(message)
131
- elif application_state in self.SUCCESS_STATES:
131
+ if application_state in self.SUCCESS_STATES:
132
132
  self.log.info("Spark application ended successfully")
133
133
  return True
134
- else:
135
- self.log.info("Spark application is still in state: %s", application_state)
136
- return False
134
+ self.log.info("Spark application is still in state: %s", application_state)
135
+ return False
@@ -19,14 +19,11 @@ from __future__ import annotations
19
19
 
20
20
  from typing import TYPE_CHECKING
21
21
 
22
- from jinja2 import TemplateAssertionError, UndefinedError
23
22
  from kubernetes.client.api_client import ApiClient
24
23
 
25
- from airflow.exceptions import AirflowException
26
24
  from airflow.providers.cncf.kubernetes.kube_config import KubeConfig
27
25
  from airflow.providers.cncf.kubernetes.kubernetes_helper_functions import create_unique_id
28
26
  from airflow.providers.cncf.kubernetes.pod_generator import PodGenerator
29
- from airflow.utils.session import NEW_SESSION, provide_session
30
27
 
31
28
  if TYPE_CHECKING:
32
29
  from airflow.models.taskinstance import TaskInstance
@@ -61,17 +58,3 @@ def render_k8s_pod_yaml(task_instance: TaskInstance) -> dict | None:
61
58
  )
62
59
  sanitized_pod = ApiClient().sanitize_for_serialization(pod)
63
60
  return sanitized_pod
64
-
65
-
66
- @provide_session
67
- def get_rendered_k8s_spec(task_instance: TaskInstance, session=NEW_SESSION) -> dict | None:
68
- """Fetch rendered template fields from DB."""
69
- from airflow.models.renderedtifields import RenderedTaskInstanceFields
70
-
71
- rendered_k8s_spec = RenderedTaskInstanceFields.get_k8s_pod_yaml(task_instance, session=session)
72
- if not rendered_k8s_spec:
73
- try:
74
- rendered_k8s_spec = render_k8s_pod_yaml(task_instance)
75
- except (TemplateAssertionError, UndefinedError) as e:
76
- raise AirflowException(f"Unable to render a k8s spec for this taskinstance: {e}") from e
77
- return rendered_k8s_spec
@@ -236,7 +236,7 @@ class KubernetesPodTrigger(BaseTrigger):
236
236
  "last_log_time": self.last_log_time,
237
237
  }
238
238
  )
239
- elif container_state == ContainerState.FAILED:
239
+ if container_state == ContainerState.FAILED:
240
240
  return TriggerEvent(
241
241
  {
242
242
  "status": "failed",
@@ -289,8 +289,7 @@ class KubernetesPodTrigger(BaseTrigger):
289
289
  if state_obj is not None:
290
290
  if state != ContainerState.TERMINATED:
291
291
  return state
292
- else:
293
- return ContainerState.TERMINATED if state_obj.exit_code == 0 else ContainerState.FAILED
292
+ return ContainerState.TERMINATED if state_obj.exit_code == 0 else ContainerState.FAILED
294
293
  return ContainerState.UNDEFINED
295
294
 
296
295
  @staticmethod
@@ -520,15 +520,14 @@ class PodManager(LoggingMixin):
520
520
  return PodLoggingStatus(running=False, last_log_time=last_log_time)
521
521
  if not follow:
522
522
  return PodLoggingStatus(running=True, last_log_time=last_log_time)
523
- else:
524
- # a timeout is a normal thing and we ignore it and resume following logs
525
- if not isinstance(exc, TimeoutError):
526
- self.log.warning(
527
- "Pod %s log read interrupted but container %s still running. Logs generated in the last one second might get duplicated.",
528
- pod.metadata.name,
529
- container_name,
530
- )
531
- time.sleep(1)
523
+ # a timeout is a normal thing and we ignore it and resume following logs
524
+ if not isinstance(exc, TimeoutError):
525
+ self.log.warning(
526
+ "Pod %s log read interrupted but container %s still running. Logs generated in the last one second might get duplicated.",
527
+ pod.metadata.name,
528
+ container_name,
529
+ )
530
+ time.sleep(1)
532
531
 
533
532
  def _reconcile_requested_log_containers(
534
533
  self, requested: Iterable[str] | str | bool | None, actual: list[str], pod_name
@@ -30,7 +30,7 @@ def data_file():
30
30
  if not DATA_FILE_DIRECTORY.exists():
31
31
  msg = f"Data Directory {DATA_FILE_DIRECTORY.as_posix()!r} does not exist."
32
32
  raise FileNotFoundError(msg)
33
- elif not DATA_FILE_DIRECTORY.is_dir():
33
+ if not DATA_FILE_DIRECTORY.is_dir():
34
34
  msg = f"Data Directory {DATA_FILE_DIRECTORY.as_posix()!r} expected to be a directory."
35
35
  raise NotADirectoryError(msg)
36
36
 
@@ -24,8 +24,8 @@ import yaml
24
24
  from kubernetes.client import models as k8s
25
25
  from sqlalchemy.orm import make_transient
26
26
 
27
- from airflow.models.renderedtifields import RenderedTaskInstanceFields, RenderedTaskInstanceFields as RTIF
28
- from airflow.providers.cncf.kubernetes.template_rendering import get_rendered_k8s_spec, render_k8s_pod_yaml
27
+ from airflow.models.renderedtifields import RenderedTaskInstanceFields as RTIF
28
+ from airflow.providers.cncf.kubernetes.template_rendering import render_k8s_pod_yaml
29
29
  from airflow.utils import timezone
30
30
  from airflow.utils.session import create_session
31
31
  from airflow.version import version
@@ -149,34 +149,6 @@ def test_render_k8s_pod_yaml_with_custom_pod_template_and_pod_override(
149
149
  assert ti_pod_yaml["metadata"]["annotations"]["test"] == "annotation"
150
150
 
151
151
 
152
- @mock.patch.dict(os.environ, {"AIRFLOW_IS_K8S_EXECUTOR_POD": "True"})
153
- @mock.patch.object(RenderedTaskInstanceFields, "get_k8s_pod_yaml")
154
- @mock.patch("airflow.providers.cncf.kubernetes.template_rendering.render_k8s_pod_yaml")
155
- def test_get_rendered_k8s_spec(render_k8s_pod_yaml, rtif_get_k8s_pod_yaml, create_task_instance):
156
- # Create new TI for the same Task
157
- ti = create_task_instance()
158
-
159
- mock.patch.object(ti, "render_k8s_pod_yaml", autospec=True)
160
-
161
- fake_spec = {"ermagawds": "pods"}
162
-
163
- session = mock.Mock()
164
-
165
- rtif_get_k8s_pod_yaml.return_value = fake_spec
166
- assert get_rendered_k8s_spec(ti, session=session) == fake_spec
167
-
168
- rtif_get_k8s_pod_yaml.assert_called_once_with(ti, session=session)
169
- render_k8s_pod_yaml.assert_not_called()
170
-
171
- # Now test that when we _dont_ find it in the DB, it calls render_k8s_pod_yaml
172
- rtif_get_k8s_pod_yaml.return_value = None
173
- render_k8s_pod_yaml.return_value = fake_spec
174
-
175
- assert get_rendered_k8s_spec(session) == fake_spec
176
-
177
- render_k8s_pod_yaml.assert_called_once()
178
-
179
-
180
152
  @mock.patch.dict(os.environ, {"AIRFLOW_IS_K8S_EXECUTOR_POD": "True"})
181
153
  @mock.patch("airflow.providers.cncf.kubernetes.template_rendering.render_k8s_pod_yaml")
182
154
  def test_get_k8s_pod_yaml(render_k8s_pod_yaml, dag_maker, session):