CI runner auto-shuts down after 15min idle (no GITEA-ACTIONS containers). Gitea server polls every 60s for queued runs and starts instance via SCW API. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
82 lines
1.8 KiB
HCL
82 lines
1.8 KiB
HCL
variable "zone" {
|
|
description = "Scaleway zone for the CI runner instance"
|
|
type = string
|
|
}
|
|
|
|
variable "region" {
|
|
description = "Scaleway region"
|
|
type = string
|
|
}
|
|
|
|
variable "instance_type" {
|
|
description = "Instance type for the CI runner"
|
|
type = string
|
|
default = "GP1-S"
|
|
}
|
|
|
|
variable "instance_name" {
|
|
description = "Name of the CI runner instance"
|
|
type = string
|
|
default = "vm-fxhnt-ci"
|
|
}
|
|
|
|
variable "image" {
|
|
description = "OS image for the instance"
|
|
type = string
|
|
default = "ubuntu_noble"
|
|
}
|
|
|
|
variable "root_volume_size_gb" {
|
|
description = "Root volume size in GB (Docker images + build cache)"
|
|
type = number
|
|
default = 100
|
|
}
|
|
|
|
variable "tailscale_auth_key" {
|
|
description = "Tailscale pre-auth key for joining the tailnet"
|
|
type = string
|
|
sensitive = true
|
|
}
|
|
|
|
variable "gitea_url" {
|
|
description = "Gitea instance URL"
|
|
type = string
|
|
default = "https://git.fxhnt.ai"
|
|
}
|
|
|
|
variable "runner_token" {
|
|
description = "Gitea Actions runner registration token"
|
|
type = string
|
|
sensitive = true
|
|
}
|
|
|
|
variable "runner_labels" {
|
|
description = "Runner labels for act_runner"
|
|
type = string
|
|
default = "ubuntu-latest:docker://catthehacker/ubuntu:act-latest"
|
|
}
|
|
|
|
variable "runner_capacity" {
|
|
description = "Number of concurrent jobs"
|
|
type = number
|
|
default = 1
|
|
}
|
|
|
|
variable "idle_timeout_minutes" {
|
|
description = "Minutes idle before auto-shutdown (0 = disabled)"
|
|
type = number
|
|
default = 15
|
|
}
|
|
|
|
variable "gitea_tailscale_host" {
|
|
description = "Tailscale hostname of the Gitea server (for ci-watcher provisioner)"
|
|
type = string
|
|
default = "vm-fxhnt-git"
|
|
}
|
|
|
|
variable "scw_secret_key" {
|
|
description = "Scaleway secret key (for ci-watcher API calls)"
|
|
type = string
|
|
sensitive = true
|
|
}
|