Webinar - May 21Building Regulated Infrastructure: How Lucis Standardized Security for Global Care
Interfaces/Terraform Provider

Infrastructure as code,
Qovery-native.

The Qovery Terraform Provider lets you manage clusters, environments, applications, databases, and configuration as declarative HCL. Version-controlled, reviewable, reproducible.

Key features

What you get.

01

Declarative environments

Define your entire environment -- services, databases, variables, deployment stages -- in a single Terraform file. Apply and converge.

02

GitOps workflows

Store your Terraform files in Git. Review infra changes in pull requests. Merge to apply. Drift is visible, not silent.

03

Import existing resources

Already using the Qovery console? `terraform import` pulls your existing environments, services, and configuration into state.

04

Full resource coverage

Organizations, projects, environments, applications, containers, jobs, databases, Helm charts, variables, secrets, deployment stages -- all supported.

05

Environment export

Use the Qovery API to export any environment as Terraform manifests. Migrate from click-ops to IaC in one command.

Use cases

What you can do.

Platform team golden paths

Define a standard environment template in Terraform. Developers clone it to spin up new services that comply with your policies by default.

Multi-environment management

Manage dev, staging, and production environments as code. Promote changes through environments with Terraform workspaces or modules.

Compliance & audit

Every infrastructure change is a Git commit. Reviewable, traceable, rollbackable. Auditors love it.

Getting started

Get started with Terraform

  1. 01Add the Qovery provider to your Terraform config
  2. 02Set your QOVERY_API_TOKEN environment variable
  3. 03Define your environment and services in HCL
  4. 04Run terraform plan, then terraform apply
terraform {
  required_providers {
    qovery = {
      source = "qovery/qovery"
    }
  }
}

resource "qovery_environment" "production" {
  project_id = qovery_project.my_project.id
  name       = "production"
  mode       = "PRODUCTION"
  cluster_id = qovery_cluster.my_cluster.id
}

Manage Qovery
as code.

Version-controlled infrastructure. Reviewable changes. Reproducible environments. Start with the Terraform Provider.