Skip to content

accesscontextmanager: in-place updates for dry run policies - #18578

Merged
c2thorn merged 1 commit into
GoogleCloudPlatform:mainfrom
c2thorn:fix-dry-run-policy-updates
Aug 11, 2026
Merged

accesscontextmanager: in-place updates for dry run policies#18578
c2thorn merged 1 commit into
GoogleCloudPlatform:mainfrom
c2thorn:fix-dry-run-policy-updates

Conversation

@c2thorn

@c2thorn c2thorn commented Aug 10, 2026

Copy link
Copy Markdown
Member

Support in-place PATCH updates for google_access_context_manager_service_perimeter_dry_run_ingress_policy and google_access_context_manager_service_perimeter_dry_run_egress_policy.

Modeled after: #17045
Fixes hashicorp/terraform-provider-google#26696
Fixes b/500084293

accesscontextmanager: supported in-place updates for `google_access_context_manager_service_perimeter_dry_run_ingress_policy` and `google_access_context_manager_service_perimeter_dry_run_egress_policy`

@modular-magician

modular-magician commented Aug 10, 2026

Copy link
Copy Markdown
Collaborator

Hi there, I'm the Modular magician. I've detected the following information about your changes for commit b870894:

Diff report

Your PR generated the following diffs in downstream repositories:

Repository Diff Link Changes
google provider View Diff 71 files changed, 823 insertions(+), 96 deletions(-)
google-beta provider View Diff 74 files changed, 826 insertions(+), 96 deletions(-)

Missing test report

Your PR includes resource fields which are not covered by any test.

Resource: google_access_context_manager_service_perimeter_dry_run_egress_policy (0 total tests)
Please add an acceptance test which includes these fields. The test should include the following:

resource "google_access_context_manager_service_perimeter_dry_run_egress_policy" "primary" {
  egress_from {
    identities         = # value needed
    identity_type      = # value needed
    source_restriction = # value needed
    sources {
      access_level = # value needed
      psc_endpoint {
        forwarding_rule = # value needed
      }
      resource = # value needed
    }
  }
  egress_to {
    external_resources = # value needed
    operations {
      method_selectors {
        method     = # value needed
        permission = # value needed
      }
      service_name = # value needed
    }
    resources = # value needed
    roles     = # value needed
  }
}

Resource: google_access_context_manager_service_perimeter_dry_run_ingress_policy (0 total tests)
Please add an acceptance test which includes these fields. The test should include the following:

resource "google_access_context_manager_service_perimeter_dry_run_ingress_policy" "primary" {
  ingress_from {
    identities    = # value needed
    identity_type = # value needed
    sources {
      access_level = # value needed
      psc_endpoint {
        forwarding_rule = # value needed
      }
      resource = # value needed
    }
  }
  ingress_to {
    operations {
      method_selectors {
        method     = # value needed
        permission = # value needed
      }
      service_name = # value needed
    }
    resources = # value needed
    roles     = # value needed
  }
}

Test report

Analytics

Total Tests Passed Skipped Affected
2687 2527 152 8
Affected Service Packages
  • alloydb
  • firebaseailogic
  • privateca
  • bigqueryanalyticshub
  • chronicle
  • firebaseremoteconfig
  • secretmanagerregional
  • vmwareengine
  • containerattached
  • datafusion
  • dialogflowcx
  • notebooks
  • pubsub
  • storagetransfer
  • accesscontextmanager
  • modelarmor
  • netapp
  • spanner
  • biglakeiceberg
  • cloudsecuritycompliance
  • dialogflow
  • kms
  • orgpolicy
  • privilegedaccessmanager
  • storageinsights
  • workbench
  • bigquerydatatransfer
  • datacatalog
  • dataplex
  • integrations
  • licensemanager
  • secretmanager
  • vertexai
  • vpcaccess
  • servicedirectory
  • cloudbuild
  • compute
  • firebasedatabase

Learn how VCR tests work


Step 1: Replaying Mode

Action taken

Found 8 affected test(s) by replaying old test recordings. Starting RECORDING based on the most recent commit.

Click here to see the affected tests
  • TestAccAccessContextManager
  • TestAccComputeInstanceFromMachineImage_diffProject
  • TestAccComputeRouterNat_withPrivateNatAndEmptyAction
  • TestAccComputeRouterNat_withPrivateNatAndEmptyActionActiveRanges
  • TestAccComputeRouterPeer_UpdateMd5AuthenticationKey
  • TestAccComputeSecurityPolicy_withPreconfiguredWafConfig
  • TestAccPubsubSubscription_pubsubSubscriptionTagsExample
  • TestAccVertexAIFeatureOnlineStoreFeatureview_vertexAiFeatureonlinestoreFeatureview_featureRegistry_updated

View the replaying VCR build log


Step 2: Recording Mode

Recording Mode Replaying Rerun Test Name
✅ Log TestAccAccessContextManager/access_level
✅ Log TestAccAccessContextManager/access_level_condition
✅ Log TestAccAccessContextManager/access_level_custom
✅ Log TestAccAccessContextManager/access_level_full
✅ Log TestAccAccessContextManager/access_levels
✅ Log TestAccAccessContextManager/access_policy
✅ Log TestAccAccessContextManager/authorized_orgs_desc
✅ Log TestAccAccessContextManager/data_source_access_policy_basic
✅ Log TestAccAccessContextManager/gcp_user_access_binding
✅ Log TestAccAccessContextManager/service_perimeter
✅ Log TestAccAccessContextManager/service_perimeter_dry_run_egress_policy
✅ Log TestAccAccessContextManager/service_perimeter_dry_run_egress_policy_update
✅ Log TestAccAccessContextManager/service_perimeter_dry_run_ingress_policy
✅ Log TestAccAccessContextManager/service_perimeter_dry_run_ingress_policy_update
✅ Log TestAccAccessContextManager/service_perimeter_dry_run_resource
✅ Log TestAccAccessContextManager/service_perimeter_egress_policy
✅ Log TestAccAccessContextManager/service_perimeter_egress_policy_update
✅ Log TestAccAccessContextManager/service_perimeter_ingress_policy
✅ Log TestAccAccessContextManager/service_perimeter_ingress_policy_update
✅ Log TestAccAccessContextManager/service_perimeter_nongcp_patterns
✅ Log TestAccAccessContextManager/service_perimeter_resource
✅ Log TestAccAccessContextManager/service_perimeter_update
✅ Log TestAccAccessContextManager/service_perimeters
✅ Log TestAccAccessContextManager/service_perimeters_nongcp_patterns
✅ Log TestAccComputeRouterNat_withPrivateNatAndEmptyAction
✅ Log TestAccComputeRouterNat_withPrivateNatAndEmptyActionActiveRanges
✅ Log ❌ Error · Log TestAccComputeRouterPeer_UpdateMd5AuthenticationKey
❌ Error · Log - TestAccComputeInstanceFromMachineImage_diffProject
❌ Error · Log - TestAccComputeSecurityPolicy_withPreconfiguredWafConfig
❌ Error · Log - TestAccPubsubSubscription_pubsubSubscriptionTagsExample
❌ Error · Log - TestAccVertexAIFeatureOnlineStoreFeatureview_vertexAiFeatureonlinestoreFeatureview_featureRegistry_updated

Caution

Issues requiring attention before PR completion

🔴 Initial Recording Failed: Some tests failed during the recording step. See the table above for details.

🔴 Replaying Rerun Failed: Some tests failed due to non-determinism when VCR replayed the response. See the table above for details.

Please address these issues to complete your PR. If you believe these detections are incorrect or unrelated to your change, please raise the concern with your reviewer.

View the recording VCR build log or the debug logs folder for detailed results.

@c2thorn VCR tests complete for b870894!

@c2thorn

c2thorn commented Aug 11, 2026

Copy link
Copy Markdown
Member Author

@modular-magician reassign-reviewer

@github-actions

Copy link
Copy Markdown

Googlers: For automatic test runs see go/terraform-auto-test-runs.

@ScottSuarez, a repository maintainer, has been assigned to review your changes. If you have not received review feedback within 2 business days, please leave a comment on this PR asking them to take a look.

You can help make sure that review is quick by doing a self-review and by running impacted tests locally.

@github-actions
github-actions Bot requested a review from ScottSuarez August 11, 2026 20:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Modifying a dry run ingress/egress policy with lifecycle {create_before_destroy = true} results in an error on apply

3 participants