fix(secure-team): prevent panic when zone_ids is computed from for_each resources #689
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.
Summary
sysdig_secure_team.zone_idsreferences IDs fromsysdig_secure_zoneresources created withfor_eachIsKnown()checks before callingAsValueSlice()andTrue()on cty values inCustomizeDiffProblem
When using dynamic zone wiring like this:
The provider panics during
terraform plan:Root Cause
In
CustomizeDiff, the code callsAsValueSlice()andTrue()on cty values without checking if they are known first. Whenzone_idsdepends on resources being created in the same plan (viafor_each), the value iscty.UnknownVal(cty.List(cty.Number)). CallingAsValueSlice()on an unknown value causes a panic.Solution
Add
IsKnown()checks before accessing cty values:When values are unknown during plan, the validation is safely skipped and will execute during apply when values become known.