github latitudesh/terraform-provider-latitudesh v3.0.0

4 hours ago

v3.0.0 — Reinstall is now opt-in on latitudesh_server

Server reinstalls used to happen by default whenever certain attributes changed.
This release makes them explicit. The allow_reinstall attribute now defaults
to false and the provider refuses to silently accept changes that require a
reinstall unless you opt in.

Breaking changes

  1. allow_reinstall default flipped from true to false.
    On the first plan after upgrading, every existing latitudesh_server
    resource will show ~ allow_reinstall: true -> false. This is expected and,
    on its own, does not change the server.

  2. Reinstall-only field changes now fail the plan unless allow_reinstall = true.
    Changing operating_system, ssh_keys, user_data, raid or ipxe while
    allow_reinstall is false (the new default) produces:

    Server Reinstall Required: changes require a server reinstall, but
    allow_reinstall is false. Set allow_reinstall = true on this resource to
    allow the reinstall, or revert the change.

    Previously the provider emitted a warning and silently updated Terraform
    state to match the config without touching the server, producing drift.
    That code path has been removed.

  3. hostname is now a reinstall trigger when allow_reinstall = true.
    With the default (false), hostname changes are still applied in-place via
    PATCH /servers/{id} exactly like before — no behavior change. With
    allow_reinstall = true, hostname changes now go through
    POST /servers/{id}/reinstall.

Migration

For every latitudesh_server resource where you actually want changes to
operating_system, ssh_keys, user_data, raid or ipxe to reinstall the
server (this used to be the implicit default), add the flag explicitly:

resource "latitudesh_server" "example" {
  # ...                                                   
  allow_reinstall = true
}

If you don't, the next time you change one of those fields the plan will fail
with the error above and tell you exactly what to do.

For resources you only ever update via in-place fields (hostname, billing,
tags, project), you can leave allow_reinstall unset; the new default is
the safe choice.

What's Changed

  • feat(server)!: make reinstall opt-in (allow_reinstall default false) +
    hostname trigger (PD-6009) by @LanusseMorais in #176

Don't miss a new terraform-provider-latitudesh release

NewReleases is sending notifications on new releases.