Terraform Provider
Infrastructure as code for Scalix Cloud resources
Overview
The Scalix Terraform provider lets you manage cloud resources as code — projects, functions, storage, and more through terraform apply.
Installation
The provider is not yet published to the Terraform Registry — publication is pending. Until it lands, install the provider binary via a local filesystem mirror (see Installation) and reference the mirror source:
hcl
terraform {
required_providers {
scalix = {
source = "registry.local/scalixworld/scalix"
version = "~> 0.1"
}
}
}
provider "scalix" {
token = var.scalix_token # or set SCALIX_TOKEN env var
}Resources
Project
hcl
resource "scalix_project" "app" {
name = "my-app"
}Functions
hcl
resource "scalix_function" "api" {
name = "api-handler"
image = "registry.scalix.world/my-org/api:latest"
}
output "function_url" {
value = scalix_function.api.url
}Storage
hcl
resource "scalix_storage_bucket" "assets" {
name = "app-assets"
public = false
}Cron Schedules
hcl
resource "scalix_cron_schedule" "cleanup" {
name = "daily-cleanup"
expression = "0 3 * * *"
action_type = "function"
action_ref = scalix_function.api.id
}Domains
hcl
resource "scalix_domain" "app" {
domain = "app.example.com"
target = scalix_run_service.api.name
}Run Services
hcl
resource "scalix_run_service" "api" {
name = "api-service"
image_ref = "registry.scalix.world/my-org/api:v2"
port = 8080
min_instances = 0
max_instances = 10
}Data Sources
hcl
data "scalix_project" "existing" {
name = "my-app"
}
data "scalix_health" "platform" {}
output "platform_status" {
value = data.scalix_health.platform.status
}