Pulumi Lagoon Provider

Manage Lagoon hosting platform resources as infrastructure-as-code. Native SDKs for Python, TypeScript, Go, and C#.

18 Resources

Manage projects, environments, variables, deploy targets, notifications, routes, tasks, users, and groups declaratively.

4 Language SDKs

Native support for Python, TypeScript/JavaScript, Go, and .NET/C#. Use your preferred language and toolchain.

Import Existing Infrastructure

Bring existing Lagoon resources under Pulumi management with pulumi import.

Multi-Cluster Ready

Route deployments across production and non-production Kubernetes clusters with deploy target configurations.

Quick Start

Create a Lagoon project with a single resource declaration:

import pulumi
import pulumi_lagoon as lagoon

project = lagoon.Project("my-site",
    lagoon.ProjectArgs(
        name="my-drupal-site",
        git_url="git@github.com:org/repo.git",
        deploytarget_id=1,
        production_environment="main",
    )
)

pulumi.export("deploy_key", project.public_key)

Run pulumi up to create the project in Lagoon. The exported deploy_key is the SSH deploy key Lagoon generates — add it to your Git repository to enable deployments.

Learn More

  • Getting Started — Installation, configuration, and your first deployment
  • Resources — Full reference for all 18 provider resources
  • Guides — Task-oriented walkthroughs for common scenarios
  • Examples — Complete working examples including multi-cluster deployments