Breaking changes
This release moves the module from the AzureRM provider to AzAPI. Existing deployments are adopted in place through moved blocks, and nothing is destroyed or recreated. Read the upgrade steps below before you upgrade.
- Replaces the
resource_group_nameinput withparent_id, the resource ID of the resource group. - Manages every resource with AzAPI. The module no longer requires the AzureRM provider. It requires AzAPI 2.12 or later (was 2.4) and the
hashicorp/timeprovider (~> 0.13). - The
instrumentation_keyoutput is now sensitive. - The
resourceoutput is deprecated and no longer includesconnection_stringorinstrumentation_key. Use those outputs instead.
Upgrading from 0.4.x or 0.3.x
Upgrades from 0.4.0 and 0.3.0 were tested against real Azure. Nothing was destroyed or replaced, and the component, its child resources and the outputs were unchanged.
-
Replace
resource_group_namewithparent_id. Keep the resource group name's case, because a change in case replaces the component:parent_id = "/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>"
-
Change a
ReadOnlylock toCanNotDelete, or remove it, until the upgrade is applied. -
Run
terraform init -upgrade, thenterraform plan. Expect in-place updates, plus some additions:azapi_update_resource.pricing_plan, which re-applies the same daily data cap;terraform_data,time_sleep(with a lock) and, from 0.3.x,random_uuidresources, which exist only in the state;- telemetry deployments, when
enable_telemetryis true.
Don't apply a plan that destroys or replaces anything.
-
Apply the plan. A second plan reports no changes, except that the AVM telemetry deployment updates on every plan while
enable_telemetryis true.
See Upgrading from 0.4.x or earlier in the README.
Other changes
- Adds the
resource_types,ignore_body_changes,lock.notesandrole_assignments.nameinputs.retryandtimeoutsapply to every resource. - Fixes a lock without a name, which failed during plan in 0.4.x. It's named
lock-<name>again, as in 0.3.x. - Fixes role assignments, which planned a
principalTypechange on every plan in 0.4.x. - Fixes replacing the component, for example by changing
application_type, while it's connected to a private link scope. Azure rejected the delete with409 Conflict. The connection is now replaced too, and deleted first. - Fixes intermittent
412 PreconditionFailederrors when the linked storage account and the private link scope connection were written at the same time. - Waits 30 seconds after deleting a lock before deleting the component and its child resources, because Azure keeps enforcing a deleted lock for a few seconds.
- Azure adds a
Failure Anomalies - <name>alert rule to each new component, and the AzureRM provider'sdisable_generated_rulefeature no longer applies. See the README. - Adds the
with_interfacesexample.
What's Changed
Other Changes
- feat(metadata): add approved module metadata by @jaredfholgate in #172
- feat!: migrate the Application Insights component to AzAPI by @thomascoats in #184
New Contributors
- @jaredfholgate made their first contribution in #172
- @thomascoats made their first contribution in #184
Full Changelog: v0.4.0...v0.5.0