You've already forked ansible-role-act-runner
2.9 KiB
2.9 KiB
inclusion, fileMatchPattern
| inclusion | fileMatchPattern |
|---|---|
| fileMatch | defaults/**/*.yaml |
Konfigurationsmuster für Act Runner
Variablen-Struktur
Hierarchische Konfiguration
act_runner_config:
log:
level: info
runner:
capacity: 1
labels: []
container:
privileged: false
options: {}
Naming Conventions
- Präfix:
act_runner_für alle Variablen - Verschachtelte Struktur für zusammengehörige Optionen
- Klare, selbsterklärende Namen
Konfigurationsmuster
Standard-Setup (Minimal)
act_runner_gitea_url: "https://gitea.example.com"
act_runner_token: "{{ vault_act_runner_token }}"
Erweiterte Konfiguration
act_runner_config:
runner:
capacity: 3
labels:
- "ubuntu-latest:docker://docker.gitea.com/runner-images:ubuntu-latest"
- "node-18:docker://node:18-alpine"
- "python-3.11:docker://python:3.11-slim"
container:
privileged: true
network: "runner-network"
valid_volumes:
- "/tmp"
- "/var/run/docker.sock:/var/run/docker.sock"
High-Performance Setup
act_runner_config:
runner:
capacity: 5
timeout: "6h"
fetch_interval: "1s"
cache:
enabled: true
dir: "/var/cache/act_runner"
container:
force_pull: false # Für bessere Performance
docker_timeout: "30s"
Template-Patterns
Bedingte Konfiguration
# In defaults/main.yaml
act_runner_config:
container:
privileged: "{{ act_runner_privileged_mode | default(false) }}"
docker_host: "{{ act_runner_docker_host | default('') }}"
Umgebungsspezifische Overrides
# Für Development
act_runner_config:
runner:
insecure: true # Nur für Dev-Umgebungen
# Für Production
act_runner_config:
runner:
insecure: false
timeout: "1h" # Kürzere Timeouts in Prod
Validierungsmuster
Required Variables
# In tasks/verify_vars.yaml
- name: Verify required variables
assert:
that:
- act_runner_gitea_url is defined
- act_runner_gitea_url | length > 0
- act_runner_token is defined
- act_runner_token | length > 0
Configuration Validation
- name: Validate runner capacity
assert:
that:
- act_runner_config.runner.capacity is number
- act_runner_config.runner.capacity > 0
- act_runner_config.runner.capacity <= 10
fail_msg: "Runner capacity must be between 1 and 10"
Dokumentationsmuster
Variable Documentation
## @param act_runner_config.runner.capacity Execute how many tasks concurrently
## @param act_runner_config.runner.labels The labels determine which jobs can run
## @param act_runner_config.container.privileged Use privileged mode for containers
Beispiel-Konfigurationen
# Beispiele in defaults/main.yaml als Kommentare
act_runner_config:
runner:
envs: {}
# Beispiel:
# envs:
# NODE_ENV: production
# CUSTOM_VAR: value