Call for testing: The Juju Terraform provider v1.4.0-rc1

The Juju team is happy to announce that the Juju Terraform provider v1.4.0-rc1 is released on 23 March 2026!

This release candidate has been pushed to the HashiCorp repository. For testing update your provider configuration to:

terraform {
  required_providers {
    juju = {
      source = "juju/juju"
      version = "1.4.0-rc1"
    }
  }
}

NEW FEATURES

This release introduces a few new features to the Juju Terraform provider:

  • The new juju_jaas_controller resource can be used to add a Juju controller to JAAS (see documentation).
  • The enable-ha Terraform action that can be used with the juju_controller resource to put it in HA mode (see documentation).
  • The Juju Terraform provider now supports exporting model to Terraform plans (see documentation).
  • The juju_charm data source can be used to fetch information about a specific charm (see documentation

LINKS:

GitHub repo

NOTES:

  • The enable-ha and model export features require Terraform 1.14, which is already available as a snap in stable channel.
  • 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.11 release.

ENHANCEMENTS

  • Add model export support via terraform query by @SimoneDutto in #1053
  • Implement machine listing to support export flows by @alesstimec in #1072
  • Implement offer listing for export generation by @kian99 in #1077
  • Implement SSH key listing for export by @ale8k in #1074
  • Add application export support by @ale8k in #1078
  • Add enable-ha action support and controller HA enablement by @SimoneDutto in #1087 and #1081
  • Add integration export support by @luci1900 in #1089
  • Add storage pool export support by @ale8k in #1092
  • Add secrets export support by @ale8k in #1097
  • Introduce the juju_jaas_controller resource by @kian99 in #1099
  • Add wait-for logging to improve provider diagnostics during long operations by @kian99 in #1115
  • Add juju_charm data source by @SimoneDutto in #1123
  • Pass process environment variables to Juju command runner for improved runtime compatibility by @kian99 in #1130

BUG FIXES

  • Fix JAAS export user detection by returning client ID from GetUser() when connected to JAAS by @SimoneDutto in #1084
  • Fix provider behavior to honor http_proxy, https_proxy, and related proxy variables by @SimoneDutto in #1103
  • Use addError instead of addWarning when controller import cannot read remote details by @kian99 in #1128

DOCUMENTATION

  • Document the new enable-ha action by @SimoneDutto in #1098
  • Add examples for juju_controller and juju_jaas_controller resources by @kian99 in #1114
  • Add juju_charm use-case documentation by @SimoneDutto in #1125
  • Add export feature docs and associated fly-by documentation fixes by @SimoneDutto in #1127
  • Add a how-to for exporting a model by @SimoneDutto in #1132
  • Refactor and clean up controller management docs after bootstrap changes by @tmihoc in #1131

CI & MAINTENANCE

The juju_charm datasource is a game changer. I tested this in COS and it worked exactly as expected, thanks team! We will be able to feature smooth cross-track upgrades end of cycle!

1 Like