Proveedor de Terraform

Proveedor de Terraform

Gestiona apps, variables de entorno y dominios personalizados desde Terraform con un token de API de lectura y escritura.

El proveedor lee RAILYARD_TOKEN (un token de API de lectura y escritura desde Settings → Team → API tokens) y RAILYARD_API (por defecto https://app.railyard.run).

terraform {
  required_providers { railyard = { source = "almokhtarbr/railyard" } }
}

provider "railyard" {}

resource "railyard_app" "web" {
  name    = "shop"
  git_url = "https://github.com/acme/shop"
  git_ref = "main"
  server  = "my-server-hostname" # optional; the team's first server otherwise
}

resource "railyard_env_var" "rails_env" {
  app_id = railyard_app.web.id
  key    = "RAILS_ENV"
  value  = "production"
}

resource "railyard_domain" "www" {
  app_id   = railyard_app.web.id
  hostname = "www.example.com"
}

Crear una app no la despliega: haz push al repositorio con auto-deploy activado, o ejecuta railyard deploy. Una app creada así igual lee su repositorio (comando de inicio, puerto, Dockerfile, datastores); la configuración que pasas explícitamente tiene prioridad. Las variables selladas conservan sus valores.

Imports: terraform import railyard_app.web <app id> y terraform import railyard_env_var.x <app id>/<KEY>.

El proveedor todavía no está en el Terraform Registry; compílalo desde el código fuente y apunta dev_overrides al binario.