-
Notifications
You must be signed in to change notification settings - Fork 48
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Destroying ACL configuration does not restore default configuration #426
Comments
Thanks for flagging this @colans ! Agree that this ends up being an awkward and unexpected flow when managing the ACL via Terraform. I think in the short term we can potentially add an optional When we do a major version bump of the provider I think having the destroy behaviour reset the ACL to the default and removing |
Is the provider on any roadmaps internally as of yet? The terraform provider could use some TLC and would be great since there is such a large userbase for Terraform and operations love to homogenize their tooling as much as possible. |
@colans @timduhenchanter we've got time blocked off internally to work on the provider and address some outstanding issues (this one included!) in February. |
Describe the bug
If managing ACLs via a
tailscale_acl
resource in Terraform that was created and destroyed at least once,terraform apply
fails with:But the non-default configuration should have been removed when
terraform destroy
was last run so there shouldn't be any non-default configuration anymore. So there's no reason to stop the next build.To Reproduce
Steps to reproduce the behaviour:
tailscale_acl
resource.terraform apply
terraform destroy
terraform apply
again.overwrite_existing_content
workaround, which shouldn't be necessary).Expected behaviour
The build does not fail with the above error.
To make this happen,
terraform destroy
should remove any custom configuration (this isn't happening now), and restore defaults. So the next timeapply
is run, it will only see defaults that can be overwritten (allowing the build to proceed).Desktop (please complete the following information):
Additional context
The root cause of this problem is an incomplete resolution to #182. It was a good idea to check for non-default configuration before
apply
, but non-default configuration must be destroyed (i.e. defaults restored) ondestroy
for this to work properly. Basically, the PR (#186) should not have been merged without also doing this. Let's do it now to finally get this working properly.Leaving this unresolved is causing other problems:
A "fix" for this was merged in #303, but that's treating a symptom of breaking the spirit of how Terraform is supposed to work. It does not resolve the root cause. It shouldn't be necessary for such workarounds if
destroy
works properly.CC @markwellis @knyar @DentonGentry @AaronFriel @timduhenchanter
The text was updated successfully, but these errors were encountered: