ajoute la liaison Laravel-OpenStack et le modèle Heat du lab 08

Un gabarit Heat généré depuis chaque lab.yaml, une stack par session de
lab (création à l'admission, suppression à l'expiration via des jobs
Redis et un worker systemd dédié). Passage du compte de service à une
authentification par mot de passe : Heat refuse de créer un trust à
partir d'un jeton d'application credential (voir ADR 0002).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
Adam Belkacemi 2026-10-08 10:14:24 +02:00
parent 8742bde807
commit 67a754f733
34 changed files with 1095 additions and 91 deletions

View file

@ -0,0 +1,27 @@
---
# Étape 10 : CreerStackLab et SupprimerStackLab sont des jobs Redis — il faut
# un worker pour les exécuter, et un cron pour l'expiration automatique.
- name: déployer le service systemd du worker de file
ansible.builtin.template:
src: portail-worker.service.j2
dest: /etc/systemd/system/portail-worker.service
mode: "0644"
notify:
- recharger systemd
- redémarrer le worker de file
- name: appliquer les changements du worker
ansible.builtin.meta: flush_handlers
- name: activer et démarrer le worker de file
ansible.builtin.systemd:
name: portail-worker
enabled: true
state: started
- name: planifier le scheduler Laravel (expiration des sessions de lab)
ansible.builtin.cron:
name: "scheduler Laravel (portail Syllabus)"
user: www-data
minute: "*"
job: "cd {{ portail_dossier_app }} && php artisan schedule:run >> /dev/null 2>&1"