Call for testing: The Juju Terraform provider v0.21.0-rc1

The Juju team is happy to announce that the Juju Terraform provider v0.21.0-rc1 candidate is released on 22 July 2025!

For specific dates for testing and release for the v0.21.0, please refer to the 0.21.0 Release Planning post.

This is a release candidate, it’s not yet pushed onto the HashiCorp repository, so testing with the release candidate requires you to pull it and change the TF plan to use the local provider.

 $ git checkout tags/v0.21.0-rc1
 $ make install

This will install the the provider in ~/.terraform.d/plugins/registry.terraform.io/juju/juju/0.21.0/linux_amd64.

Update your configurations to use the local candidate:

terraform {
  required_providers {
    juju = {
      source  = "registry.terraform.io/juju/juju" # (uses local provider repository)
      # source = "juju/juju" (uses the Hashicorp repository)
      version = "0.21.0"
    }
  }
}

LINKS:

NOTES:

  • This release requires Juju controller version 2.9.49 or higher Juju.
  • If using JAAS, this release requires Juju controller version 3.6.5 or higher.
  • This release uses Juju client api code from the Juju 3.6.4 release.

ENHANCEMENTS

  • Retry model creation when error is TransactionAborted 763 by @SimoneDutto
  • Wait for hostname field to be populated when creating juju_machine resource 788 by @SimoneDutto
  • Add a no-service-account flag to the juju_kubernetes_cloud resource to avoid service account creation by the provier 793 by @SimoneDutto
  • Using the custom type for constraints in the juju_application resource 796 by @alesstimec
  • Waiting for machine deletion 761 by @alesstimec

BUG FIXES

  • Store juju_machine ID immediately after creation 799 by @kian99

DOCUMENTATION

CI IMPROVEMENTS