Fix required_code_scanning missing from terraform state #2701
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.
Resolves #2556
Before the change?
required_code_scanningblocks would not persist in terraform state leading to a permadiffrules[].required_code_scanningentry would benulleven though code scanning was configured on the ruleset. For example:Example
ruleset.tf
terraform.tfstate
{ "version": 4, "terraform_version": "1.12.2", "outputs": {}, "resources": [ { "mode": "managed", "type": "github_organization_ruleset", "name": "example", "provider": "provider[\"registry.terraform.io/integrations/github\"]", "instances": [ { "rules": [ { "required_code_scanning": null } ] } ] } ] }After the change?
required_code_scanningblocks persist in the terraform state. Subsequent executions ofterraform planwithout any changes do not lead to a diff.rules[].required_code_scanningis properly populated with the code scanning information. For example:Example
ruleset.tf
terraform.tfstate
{ "version": 4, "terraform_version": "1.12.2", "outputs": {}, "resources": [ { "mode": "managed", "type": "github_organization_ruleset", "name": "example", "provider": "provider[\"registry.terraform.io/integrations/github\"]", "instances": [ { "rules": [ { "required_code_scanning": [ { "required_code_scanning_tool": [ { "alerts_threshold": "errors_and_warnings", "security_alerts_threshold": "high_or_higher", "tool": "Scorecard" } ] } ], } ] } ] } ] }Pull request checklist
Does this introduce a breaking change?
Please see our docs on breaking changes to help!