fix: Fix provider overwriting parts of the resource that is not managed by it #145
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.
Description
During Update() calls make sure fields from the updated entry that are not managed by
terraform are copied from the existing entry, as returned by the server.
Closes: #141
Motivation and Context
Some resource attributes can be marked as private, meaning they are not going to be exposed to users directly. For example, when creating panorama templates, entire import attribute tree is not exposed, as imports are done implicitly based on the location of the import object. This fixes a problem where subsequent terraform apply runs remove entries from the import list.
This however mean, that some of the resource data (private attributes, but also Misc generic XML) have to be somehow restored during Update() calls. This PR creates a very basic implementation that calls Read() during Update() to make sure that we have this data available.
Types of changes