Open kierdavis opened 2 years ago
Also, if changing operating_system
triggers a reinstall, surely changing ipxe_script_url
should as well?
ipxe_script_url
is trickier because you can change the ipxe_script_url
field for post-provision reasons. https://github.com/equinix/terraform-provider-equinix/issues/159 is relevant.
The CustomizeDiff
field should be in control of the operating_system
ForceNew
value, but it appears that the default of true
is taking priority (unlike in the other fields where a default of false
is given).
Terraform Version
Affected Resource(s)
Terraform Configuration Files
Relevant snippet. I can put together a minimal reproducer if required.
Debug Output
Very long (our config manages ~600 resources) and it would be a pain to vet this log for any stray secrets / api keys. As mentioned above, I can put together a minimal reproducer if required.
Expected Behavior
The documentation says
So I would expect that if there's a diff on the
operating_system
field, then the resource should be reinstalled rather than being destroyed/created.Actual Behavior
Terraform still wants to destroy/create the resource. See the diff reported in Terraform's output. Note that the only attribute marked "forces replacement" is
operating_system
, and that the metal_device'sid
is changing to a "known after apply" value.References
ForceNew
to false for bothuser_data
andcustom_data
, but not foroperating_system
. Was there a reason to omitoperating_system
or was this simply a mistake?