Add etags to acm_service_perimeter_resource #9058
Merged
+54
−8
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.
Important
This PR is dependent on #12735. I'd appreciate it if we can try to get both of these in the end of Tuesday cut off for next weeks release. Thanks!
The
acm_service_perimeter_resource
is an item in a list (like a project in a list of projects). Since there is no API for "add item to list", terraform actually makes a GET then PATCH to get the current list, merge them, then send the combined list back to the API.This GET-PATCH pattern can override data when concurrent requests are sent. So, we're trying to add etags to block requests that can result in data loss. Previously, I added the new
post_read
custom code hook so we can retrieve the etag.I've tested this locally and I can see the etags being sent in the PATCH requests.
Please let me know if you have any questions.
Release Note Template for Downstream PRs (will be copied)
See Write release notes for guidance.
Derived from GoogleCloudPlatform/magic-modules#12736