Infrastructure as Code on Thalassa Cloud: Terraform and Pulumi

2025-10-10
Thalassa Cloud
2 min read

Infrastructure as Code (IaC) is a method that allows teams to implement infrastructure changes in a secure and consistent manner. By using IaC, you can easily maintain and manage your infrastructure just like application code, making it straightforward to implement changes and collaborate across teams.

On Thalassa Cloud, you have two options to achieve this: the official Terraform provider and a community-maintained Pulumi provider. Both solutions enable you to version your infrastructure setup, review changes before applying them, and automate updates across various environments. This ensures that your infrastructure management is efficient and reliable, helping you to streamline operations and reduce errors caused by manual actions or configuration drift.

Why IaC for Thalassa Cloud

IaC brings reviewable change history, drift detection, and reproducible environments. It integrates cleanly with CI/CD pipelines so your infrastructure changes follow the same workflows as your application code. See the overview: Infrastructure as Code (IaC).

Terraform (official)

Use the official Terraform provider to declare Thalassa Cloud resources. It’s available on the Terraform Registry and supports standard Terraform tooling (plan/apply, workspaces, modules).

  • Provider: thalassa-cloud/thalassa
  • Registry: https://registry.terraform.io/providers/thalassa-cloud/thalassa/latest
  • Docs: Terraform on Thalassa Cloud

Quick start (provider block):

terraform {
  required_providers {
    thalassa = {
      source  = "thalassa-cloud/thalassa"
      version = ">= 0.0.0"
    }
  }
}

provider "thalassa" {
  organisation_id = var.organisation_id
  token           = var.token
}

From there, add resources such as thalassa_vpc, subnets, or Kubernetes clusters and use terraform plan/apply to manage changes.

Pulumi (community)

Prefer a general‑purpose language? The community Pulumi package wraps the Terraform provider so you can define resources in TypeScript and other Pulumi languages.

  • Package: @sandervb2/pulumi-thalassa
  • Source: https://github.com/sandervb2/pulumi-thalassa/tree/main
  • Docs: Pulumi on Thalassa Cloud

TypeScript example:

import * as thalassa from "@sandervb2/pulumi-thalassa";

const vpc = new thalassa.Vpc("example", {
  name: "my-vpc",
});

Note: As a community project, support and coverage may vary. Check the repository for details and updates.

We appreciate and thank the community maintainers and contributor(s) (Sander from Kroescontrol, thank you!) behind the Pulumi provider.

Choosing what fits your team
  • Use Terraform if you want the most widely adopted IaC workflow, strong ecosystem support, and a shared language across platform teams.
  • Use Pulumi if your team prefers application languages for IaC and wants to reuse language features like loops, functions, and modules.

Explore more:


Related posts