Skip to main content

Using Unleash through Terraform

Availability

Version: 5.6+

Overview

The Unleash Terraform provider enables you to manage and configure Unleash programmatically, leveraging infrastructure as code (IaC) for automated and scalable configuration.

This provider is designed to help you with the initial setup and configuration of an instance. The provider does not support managing feature flags through Terraform. Since most feature flags are short-lived, we recommend managing them through the Unleash Admin UI.

For a detailed video tutorial, check out Managing Unleash through Terraform. For more examples of specific resources and data sources, visit the Terraform registry.

Manage Terraform access

The permissions of the API token you use with Terraform and your Unleash plan determine which objects Terraform can manage:

Resources

API tokens

  • unleash_api_token: Manage access and maintain secure communication with verified integrations.

Example usage:

resource "unleash_api_token" "client_token" {
token_name = "client_token"
type = "client"
expires_at = "2024-12-31T23:59:59Z"
project = "default"
environment = "development"
}

Projects

  • unleash_project: Create and manage projects.
  • unleash_project_access: Assign access roles and users to specific project resources.

Users and roles

  • unleash_role: Define permissions systematically.
  • unleash_user: Automate user management. Use send_email = true to generate an invitation link.

Service accounts

  • unleash_service_account: Define and manage service accounts for secure automated access.
  • unleash_service_account_token: Generate tokens associated with service accounts.

Single sign-on protocols

For example usage and schemas, visit the resources documentation of the Unleash Terraform provider.

Data sources

You can use the following data sources to fetch resources from Unleash:

  • unleash_project
  • unleash_user
  • unleash_role
  • unleash_permission

For example usage and schemas, visit the data sources documentation of the Unleash Terraform provider.