ci(ops): ajouter runner Gitea recette versionné

This commit is contained in:
Manus AI
2026-08-18 08:30:37 +00:00
parent 64f3233e47
commit b006caa3df
4 changed files with 57 additions and 0 deletions

View File

@@ -4,6 +4,8 @@ Le script `healthcheck-apps.sh` est exécuté par le timer systemd toutes les ci
Le dernier rapport est écrit dans `/var/lib/manus-apps-health/latest.txt`. Les anomalies sont aussi consignées dans le journal système avec le tag `manus-apps-health`. Le dernier rapport est écrit dans `/var/lib/manus-apps-health/latest.txt`. Les anomalies sont aussi consignées dans le journal système avec le tag `manus-apps-health`.
Le runner de recette est installé par `install-gitea-act-runner.sh`. Il s’enregistre une fois auprès de Gitea avec un jeton éphémère, puis exécute les workflows dans un conteneur Node 22 isolé sur le réseau Docker `web`.
Après mise à jour Git, installer ou actualiser le service avec : Après mise à jour Git, installer ou actualiser le service avec :
```bash ```bash

View File

@@ -0,0 +1,11 @@
log:
level: info
runner:
capacity: 1
envs:
DOCKER_HOST: unix:///var/run/docker.sock
container:
network: web
options: --pull=always

View File

@@ -0,0 +1,16 @@
[Unit]
Description=Runner Gitea Actions de recette
After=docker.service network-online.target
Requires=docker.service
Wants=network-online.target
[Service]
Type=simple
User=root
Environment=DOCKER_HOST=unix:///var/run/docker.sock
ExecStart=/usr/local/bin/act_runner daemon --config /opt/manus-deploy/gitea-runner/config.yaml
Restart=always
RestartSec=10s
[Install]
WantedBy=multi-user.target

View File

@@ -0,0 +1,28 @@
#!/usr/bin/env bash
# Installe et enregistre le runner de recette depuis les fichiers versionnés du dashboard.
set -Eeuo pipefail
readonly SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
readonly RUNNER_DIR="/opt/manus-deploy/gitea-runner"
readonly GITEA_CONTAINER="gitea"
readonly GITEA_URL="https://git.recette.santinova-soft.org"
readonly RUNNER_NAME="recette-docker-runner"
readonly RUNNER_LABELS="ubuntu-latest:docker://node:22-bookworm"
install -d -m 0750 "${RUNNER_DIR}"
install -m 0640 "${SCRIPT_DIR}/gitea-act-runner-config.yaml" "${RUNNER_DIR}/config.yaml"
install -D -m 0644 "${SCRIPT_DIR}/gitea-act-runner.service" /etc/systemd/system/gitea-act-runner.service
if [[ ! -f "${RUNNER_DIR}/.runner" ]]; then
token="$(docker exec -u git "${GITEA_CONTAINER}" gitea actions generate-runner-token)"
/usr/local/bin/act_runner register --no-interactive \
--instance "${GITEA_URL}" \
--token "${token}" \
--name "${RUNNER_NAME}" \
--labels "${RUNNER_LABELS}" \
--config "${RUNNER_DIR}/config.yaml"
fi
systemctl daemon-reload
systemctl enable --now gitea-act-runner.service
systemctl is-active gitea-act-runner.service