Fournisseur Terraform

Fournisseur Terraform

Gérez des applications, des variables d'environnement et des domaines personnalisés depuis Terraform avec un jeton d'API en lecture-écriture.

Le fournisseur lit RAILYARD_TOKEN (un jeton d’API en lecture-écriture depuis Settings → Team → API tokens) et RAILYARD_API (par défaut 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"
}

Créer une application ne la déploie pas : poussez vers le dépôt avec le déploiement automatique activé, ou exécutez railyard deploy. Une application créée ainsi lit tout de même son dépôt (commande de démarrage, port, Dockerfile, bases de données); les paramètres que vous passez explicitement l’emportent. Les variables scellées gardent leurs valeurs.

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

Le fournisseur n’est pas encore sur le Terraform Registry; compilez-le depuis les sources et pointez dev_overrides vers le binaire.