[AIRFLOW-5104] Set default schedule for GCP Transfer operators #5726
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Make sure you have checked all steps below.
Jira
Description
The GCS Transfer Service REST API requires that a schedule be set, even for
one-time immediate runs. This adds code to
S3ToGoogleCloudStorageTransferOperator
andGoogleCloudStorageToGoogleCloudStorageTransferOperator
to set a defaultone-time immediate run schedule when no
schedule
argument is passed.Tests
This should just be fixing existing behavior, and is hard to test as it only produces an error when actually sent to the GCP API. I have tested it by running it on a Cloud Composer cluster and using it to transfer files from S3 to GCS using
S3ToGoogleCloudStorageTransferOperator
. I have not testedGoogleCloudStorageToGoogleCloudStorageTransferOperator
in a similar way, so maybe someone should do that as I don't think anyone ever actually tested it before releasing it. This combined with [AIRFLOW-5114] Fix gcp_transfer_hook behavior with default operator arguments #5727 allowsS3ToGoogleCloudStorageTransferOperator
to run correctly with default arguments for scheduling and timeout.Commits
Documentation
Code Quality
flake8