AlejandroMorgante opened a new pull request, #74505: URL: https://github.com/apache/airflow/pull/74505
With `apache-airflow-providers-cncf-kubernetes` older than 10.22.0, importing the GKE operator module fails because `KubernetesPodExecOperator` is unavailable. This also prevents users from using existing GKE operators. Mirror the fallback-class approach from #72542: keep the module importable and raise `AirflowOptionalProviderFeatureException` with the required provider version only when constructing `GKEPodExecOperator`. The regression verifies that existing cluster and Pod operators can still be constructed when the optional import is unavailable. Exclude the compatibility placeholder from the standalone-operator example coverage check, as in EKS. Follow-up to #72577 and the [provider RC testing feedback](https://github.com/apache/airflow/issues/74459#issuecomment-6083550162). Validation: - Google provider suite in Breeze: 5,441 passed, 59 skipped (183.28s); includes all 108 GKE operator tests. - Confirmed the regression fails against the original source at module import. - Mypy on the changed source and applicable regular/manual prek checks passed. - Google documentation and spellcheck passed. - Core Always checks: 1,891 DB tests passed; 299 non-DB tests passed, with one expected failure. - Live GKE system test used `breeze testing system-tests --forward-credentials --test-timeout 2400` with `SYSTEM_TESTS_ENV_ID` and the project initialization export. Cluster creation and the existing Pod examples succeeded, but the readiness sensor could not find the target exec Pod and timed out before `GKEPodExecOperator` ran. Cluster teardown is in progress. This run is not reported as passing. Reproducible commands: ```bash breeze testing providers-tests --backend sqlite --test-type 'Providers[google]' SYSTEM_TESTS_ENV_ID=gf1009 \ BREEZE_INIT_COMMAND='export GOOGLE_CLOUD_PROJECT="${SYSTEM_TESTS_GCP_PROJECT}"' \ breeze testing system-tests \ --forward-credentials \ --test-timeout 2400 \ providers/google/tests/system/google/cloud/kubernetes_engine/example_kubernetes_engine.py \ -q ``` --- ##### Was generative AI tooling used to co-author this PR? - [X] Yes — Codex (GPT-6) Generated-by: Codex (GPT-6) following [the guidelines](https://github.com/apache/airflow/blob/main/contributing-docs/05_pull_requests.rst#gen-ai-assisted-contributions) -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
