Files
infra-maintenance/.drone.yml
T
matthiasberner 29087fe2a6
continuous-integration/drone/push Build is failing
continuous-integration/drone Build is failing
.drone.yml aktualisiert
2026-01-11 11:00:23 +01:00

161 lines
3.7 KiB
YAML

---
kind: secret
name: password_authelia
get:
path: secret/data/authelia/ssh
name: root
---
kind: secret
name: password_matrix
get:
path: secret/data/matrix/bot/drone-bot
name: password
---
kind: secret
name: userid_matrix
get:
path: secret/data/matrix/bot/drone-bot
name: userid
---
kind: secret
name: roomid_matrix
get:
path: secret/data/matrix/bot/drone-bot
name: roomid
---
kind: pipeline
name: authelia_check
trigger:
event:
- pull_request
- push
steps:
- name: ssh-check
image: appleboy/drone-ssh
settings:
host: 10.0.4.18
username: root
password:
from_secret: password_authelia
port: 22
command_timeout: 10m
# Wir mappen die Variable 'args' explizit aus der Umgebung
# Drone stellt manuelle Parameter als kleingeschriebene env-Variablen bereit
envs:
- args
- DRONE_BUILD_EVENT
script: |
# Wir weisen den Wert einer lokalen Variable zu, um sicherzugehen
# Falls 'args' klein geschrieben nicht geht, testen wir ARGS
INPUT_ARGS="${args:-${ARGS:-}}"
echo "[INFO] Build event: ${DRONE_BUILD_EVENT}"
# Debug: Zeige alle Umgebungsvariablen, die mit A oder a beginnen (optional)
# env | grep -E '^(args|ARGS|DRONE)'
if [ -z "$INPUT_ARGS" ]; then
echo "[INFO] Extracted Args: Keine Parameter empfangen"
else
echo "[INFO] Extracted Args: $INPUT_ARGS"
fi
fetch -o /tmp/authelia-update.sh \
https://git.familie-berner.de/Open/infra-maintenance/raw/branch/main/authelia/authelia-update.sh
chmod +x /tmp/authelia-update.sh
timeout 10m /tmp/authelia-update.sh $INPUT_ARGS
---
kind: pipeline
name: authelia_apply
trigger:
event:
- cron
- custom
steps:
- name: ssh-check
image: appleboy/drone-ssh
settings:
host: 10.0.4.18
username: root
password:
from_secret: password_authelia
port: 22
command_timeout: 10m
# Wir mappen die Variable 'args' explizit aus der Umgebung
# Drone stellt manuelle Parameter als kleingeschriebene env-Variablen bereit
envs:
- args
- DRONE_BUILD_EVENT
script: |
# Wir weisen den Wert einer lokalen Variable zu, um sicherzugehen
# Falls 'args' klein geschrieben nicht geht, testen wir ARGS
INPUT_ARGS="${args:-${ARGS:-}}"
echo "[INFO] Build event: ${DRONE_BUILD_EVENT}"
# Debug: Zeige alle Umgebungsvariablen, die mit A oder a beginnen (optional)
# env | grep -E '^(args|ARGS|DRONE)'
if [ -z "$INPUT_ARGS" ]; then
echo "[INFO] Extracted Args: Keine Parameter empfangen"
else
echo "[INFO] Extracted Args: $INPUT_ARGS"
fi
fetch -o /tmp/authelia-update.sh \
https://git.familie-berner.de/Open/infra-maintenance/raw/branch/main/authelia/authelia-update.sh
chmod +x /tmp/authelia-update.sh
timeout 10m /tmp/authelia-update.sh $INPUT_ARGS
---
kind: pipeline
name: matrix_message
depends_on:
- authelia_check
trigger:
status:
- failure
steps:
- name: notify
image: spotlightkid/drone-matrixchat-notify
settings:
homeserver: 'https://matrix.familie-berner.de'
roomid:
from_secret: roomid_matrix
userid:
from_secret: userid_matrix
password:
from_secret: password_matrix
markdown: 'yes'
template: |
**Authelia Update**
repo: `${DRONE_REPO}`
branch: `${DRONE_BRANCH}`
build: `#${DRONE_BUILD_NUMBER}`
status: **${DRONE_BUILD_STATUS}**
event: `${DRONE_BUILD_EVENT}`
commit: ${DRONE_COMMIT_LINK}
pr: `${DRONE_PULL_REQUEST}`
${DRONE_PULL_REQUEST_TITLE}
when:
branch:
- master
- main