(fix): perpetual drift in fortios_system_dnsdatabase interface_select_method#402
Open
ianc769 wants to merge 1 commit intofortinetdev:mainfrom
Open
Conversation
…thod
When interface_select_method is set to its default value ("auto"), the
FortiOS API omits this field from GET responses. This caused Terraform
to continuously detect drift and attempt to add the field on every apply.
Root Cause:
- Field is defined as Optional + Computed in the schema
- When set to "auto" in config, value is sent to API during create/update
- API doesn't return the field in GET response when it's the default
- Previous code didn't explicitly preserve the config value in state
- Terraform detected drift: config has "auto", state has nothing
Fix:
- Check if API returned interface-select-method in response
- If yes: use the API value (existing behavior)
- If no: explicitly preserve the configured value in state
- This prevents drift when API omits default values
This pattern may need to be applied to other Optional+Computed fields
that exhibit similar behavior with FortiOS API default value handling.
Fixes persistent plan changes showing:
+ interface_select_method = "auto"
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.
When
interface_select_methodis set to its default value("auto"), the FortiOS API omits this field from GET responses. This caused Terraform to continuously detect drift and attempt to add the field on every apply.Fixes persistent plan changes showing: