fix(export): allow exporting sets containing nested resource references - #11800
Merged
ldanielmadariaga merged 1 commit intoJul 24, 2026
Merged
Conversation
ldanielmadariaga
approved these changes
Jul 24, 2026
Contributor
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: ldanielmadariaga The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
Merged
via the queue into
GoogleCloudPlatform:master
with commit Jul 24, 2026
368b564
205 checks passed
Merged
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.

BRIEF Change description
Generated by GeminiCLI.
Fixes a bug in
convertTFSetToKCCSetwhere any set field containing nested resource references (such asbackendfield inComputeBackendService) was completely omitted from the exported YAML output.During normal reconciliation, the converter falls back to the user's declared KRM spec (
prevSpecVal) for sets containing reference fields. This is necessary because set-hashing of unresolved local references (which use a local resourcename) will never match the resolved GCP URLs (which use full resource links) from the live state. This hash mismatch would otherwise cause the converter to assume the elements are different, clobbering the user's local references and causing infinite diff reconciliation loops.However, during a
config-connector exportorimportcommand, there is no previous specification available (prevSpecValisnil). Falling back unconditionally toprevSpecValin this case discarded the live state elements, resulting in a missing set field in the final exported YAML.convertTFSetToKCCSetinpkg/krmtotf/tftokrm.goto only apply the reference fallback safeguard ifprevSpecVal != nil.pkg/krmtotf/tftokrm_test.gothat specifically simulates an export scenario (prevSpec == nil) of a set containing nested reference fields, verifying correct live state conversion.Fixes #8672
WHY do we need this change?
Special notes for your reviewer:
Does this PR add something which needs to be 'release noted'?
Additional documentation e.g., references, usage docs, etc.:
Intended Milestone
Please indicate the intended milestone.
Tests you have done
Before:
After
backendfield is populated correctly.make ready-prto ensure this PR is ready for review.