From f2977cd53a487391e41d54f2b2e25434fb1124cf Mon Sep 17 00:00:00 2001 From: parkhojeong Date: Mon, 13 Jul 2026 02:37:25 +0900 Subject: [PATCH] Fix Google Cloud Batch error messages to include job name The missing f-string prefixes caused Cloud Batch errors to display the literal `{job_name}`. --- .../src/airflow/providers/google/cloud/hooks/cloud_batch.py | 4 ++-- .../google/tests/unit/google/cloud/hooks/test_cloud_batch.py | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/providers/google/src/airflow/providers/google/cloud/hooks/cloud_batch.py b/providers/google/src/airflow/providers/google/cloud/hooks/cloud_batch.py index 55b627fea62e9..11c6dfc30f51e 100644 --- a/providers/google/src/airflow/providers/google/cloud/hooks/cloud_batch.py +++ b/providers/google/src/airflow/providers/google/cloud/hooks/cloud_batch.py @@ -154,12 +154,12 @@ def wait_for_job( if status == JobStatus.State.FAILED: message = ( "Unexpected error in the operation: " - "Batch job with name {job_name} has failed its execution." + f"Batch job with name {job_name} has failed its execution." ) raise AirflowException(message) if status == JobStatus.State.DELETION_IN_PROGRESS: message = ( - "Unexpected error in the operation: Batch job with name {job_name} is being deleted." + f"Unexpected error in the operation: Batch job with name {job_name} is being deleted." ) raise AirflowException(message) time.sleep(polling_period_seconds) diff --git a/providers/google/tests/unit/google/cloud/hooks/test_cloud_batch.py b/providers/google/tests/unit/google/cloud/hooks/test_cloud_batch.py index 5300e294de9d7..3c0cda1fb61a3 100644 --- a/providers/google/tests/unit/google/cloud/hooks/test_cloud_batch.py +++ b/providers/google/tests/unit/google/cloud/hooks/test_cloud_batch.py @@ -107,7 +107,7 @@ def test_wait_job_succeeded(self, mock_batch_service_client, state, cloud_batch_ def test_wait_job_does_not_succeed(self, mock_batch_service_client, state, cloud_batch_hook): mock_job = self._mock_job_with_status(state) mock_batch_service_client.return_value.get_job.return_value = mock_job - with pytest.raises(AirflowException): + with pytest.raises(AirflowException, match="job1"): cloud_batch_hook.wait_for_job("job1") @mock.patch(