Add Cloud SQL no-operation sensor - #68146
Conversation
6a83bc7 to
cfeb9f1
Compare
0684a3a to
2fbc566
Compare
shahar1
left a comment
There was a problem hiding this comment.
Please resolve conflicts
|
Thank you for this, and I'm sorry it's taken eight weeks to get you an answer. #68151 proposes the same feature — same To be straight about why, since "the other one won" is not a useful answer:
Your version was ahead on one point I want on record: it introduces no One thing to check on your side for future PRs: this branch modifies None of this reflects on the quality of your work. If you'd like to stay involved, a review on #68151 would be genuinely welcome — you know this problem space as well as anyone — and checking Drafted-by: Claude Code (Opus 5); reviewed by @potiuk before posting |
Add a deferrable
CloudSQLNoOperationInProgressSensorfor waiting until a Cloud SQL instance has no non-terminal operation in progress.This gives DAG authors an explicit provider primitive to avoid
operationInProgress409s before submitting import, export, clone, patch, or other Cloud SQL administrative operations.Changes:
CloudSQLNoOperationInProgressSensorCloudSQLNoOperationInProgressTriggerCloses: #68040
Tests:
uv run pytest --with-db-init providers/google/tests/unit/google/cloud/sensors/test_cloud_sql.py providers/google/tests/unit/google/cloud/triggers/test_cloud_sql_no_operation.py providers/google/tests/unit/google/cloud/hooks/test_cloud_sql.py -quv run ruff check providers/google/src/airflow/providers/google/cloud/hooks/cloud_sql.py providers/google/src/airflow/providers/google/cloud/triggers/cloud_sql.py providers/google/src/airflow/providers/google/cloud/sensors/cloud_sql.py providers/google/tests/system/google/cloud/cloud_sql/example_cloud_sql.py providers/google/tests/unit/google/cloud/hooks/test_cloud_sql.py providers/google/tests/unit/google/cloud/sensors/test_cloud_sql.py providers/google/tests/unit/google/cloud/triggers/test_cloud_sql_no_operation.pyuv run ruff format --check providers/google/src/airflow/providers/google/cloud/hooks/cloud_sql.py providers/google/src/airflow/providers/google/cloud/triggers/cloud_sql.py providers/google/src/airflow/providers/google/cloud/sensors/cloud_sql.py providers/google/tests/system/google/cloud/cloud_sql/example_cloud_sql.py providers/google/tests/unit/google/cloud/hooks/test_cloud_sql.py providers/google/tests/unit/google/cloud/sensors/test_cloud_sql.py providers/google/tests/unit/google/cloud/triggers/test_cloud_sql_no_operation.pyPYTHONPATH=scripts/ci/prek uv run --script scripts/ci/prek/check_trigger_serialize_init.py providers/google/src/airflow/providers/google/cloud/triggers/cloud_sql.pyuv run --script scripts/ci/prek/check_deferrable_default.pyuv run prek run --config .pre-commit-config.yaml --files generated/provider_dependencies.json.sha256sum providers/google/docs/operators/cloud/cloud_sql.rst providers/google/provider.yaml providers/google/src/airflow/providers/google/cloud/hooks/cloud_sql.py providers/google/src/airflow/providers/google/cloud/triggers/cloud_sql.py providers/google/src/airflow/providers/google/cloud/sensors/cloud_sql.py providers/google/tests/system/google/cloud/cloud_sql/example_cloud_sql.py providers/google/tests/unit/google/cloud/hooks/test_cloud_sql.py providers/google/tests/unit/google/cloud/sensors/test_cloud_sql.py providers/google/tests/unit/google/cloud/triggers/test_cloud_sql_no_operation.py