feat(providers): GCS immutability #4134
Merged
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.

It seems not possible to create a PR train in this repo. I created 1 PR but the base only shows me master or providers. So instead it's broken down by commits.
Put/Extend commit: Adds
ExtendBlobRetentionand removes theErrUnsupportedPutBlobOptioncheck fromPutBlob. Also some slight refactorings to make it more likeazure_storage.goand tweak to support getting a blob by its versionID.PITR commit: Code is largely identical to
azure_ands3_equivalents. Based on @kreare's #3564 but more complete.Tests commit:
gcs_immu_test.goandgcs_versioned_test.goare basically identical toazure_equivalents. OnlycreateBucketis a bit different based on Google client. Tweakedgcs_storage_test.goslightly to make it more like the az/s3 ones with consts for env varsRequires variables setting to create/use the new bucket
Ref: