backup: snapshot post-démo GHT 2026-05-19
Backup état complet après enregistrement vidéo démo de bout en bout. À utiliser comme point de référence pour la consolidation post-démo. Changements majeurs de la session 18-19 mai : - AIVA-URGENCE : page autonome avec preset URL + auto-focus chain - Workflow Demo_urgence_3_db : merge linux_db + steps AIVA + pause humaine NoMachine - Bypass LLM (static_result / static_text) dans replay_engine pour démos déterministes sans appel Ollama - Fix api_stream:3013 — replay_paused au premier polling /next - dag_execute : lift duration_ms vers top-level pour wait runtime - NPM bypass auth /aiva-urgence/ via location ^~ (proxy_host/10.conf hors git) - scripts/cancel-replays.sh — workaround Stop VWB qui ne purge pas la queue Anchors visuels (468) forcés dans le commit pour garantir restorabilité. DB workflows actuelle + ~12 .bak DB de la journée incluses. Sujets identifiés pour consolidation post-démo (TODO) : 1. Bug VWB recapture anchor ne régénère pas le PNG 2. Léa client accumule état mémoire (restart périodique requis) 3. Stop VWB ne purge pas la queue serveur (lien manquant vers /replay/cancel) 4. Bug coord client mss tronqué 2560x60 → mapping Y cassé 5. delay_before/delay_after ignorés au runtime (fix partiel duration_ms) Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
123
deploy/hyperv_glpi_ubuntu24/work/user-data
Normal file
123
deploy/hyperv_glpi_ubuntu24/work/user-data
Normal file
@@ -0,0 +1,123 @@
|
||||
#cloud-config
|
||||
preserve_hostname: false
|
||||
hostname: glpi-ubuntu-24-04-dom
|
||||
manage_etc_hosts: true
|
||||
timezone: Europe/Paris
|
||||
ssh_pwauth: true
|
||||
disable_root: true
|
||||
growpart:
|
||||
mode: auto
|
||||
devices: ["/"]
|
||||
resize_rootfs: true
|
||||
users:
|
||||
- default
|
||||
- name: dom
|
||||
gecos: GLPI admin
|
||||
shell: /bin/bash
|
||||
groups: [adm, sudo]
|
||||
sudo: ALL=(ALL) NOPASSWD:ALL
|
||||
lock_passwd: false
|
||||
plain_text_passwd: "loli"
|
||||
ssh_authorized_keys:
|
||||
- ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBTDOsL4IVLYZUC/yM8xLiE2y58urp5dJLwlU6GoldXd dom@laptop
|
||||
write_files:
|
||||
- path: /opt/glpi/docker-compose.yml
|
||||
permissions: '0644'
|
||||
owner: root:root
|
||||
content: |
|
||||
name: glpi
|
||||
services:
|
||||
glpi:
|
||||
image: "glpi/glpi:10.0.25"
|
||||
restart: unless-stopped
|
||||
env_file: .env
|
||||
environment:
|
||||
TZ: "Europe/Paris"
|
||||
depends_on:
|
||||
- db
|
||||
ports:
|
||||
- "80:80"
|
||||
volumes:
|
||||
- glpi_data:/var/glpi
|
||||
db:
|
||||
image: "mysql:8.4"
|
||||
restart: unless-stopped
|
||||
command:
|
||||
- --character-set-server=utf8mb4
|
||||
- --collation-server=utf8mb4_unicode_ci
|
||||
environment:
|
||||
TZ: "Europe/Paris"
|
||||
MYSQL_RANDOM_ROOT_PASSWORD: "yes"
|
||||
MYSQL_DATABASE: "glpi"
|
||||
MYSQL_USER: "glpi"
|
||||
MYSQL_PASSWORD: "xYcjYkJcKwSzBFJYHMXUSzL5"
|
||||
volumes:
|
||||
- db_data:/var/lib/mysql
|
||||
volumes:
|
||||
glpi_data:
|
||||
db_data:
|
||||
- path: /opt/glpi/.env
|
||||
permissions: '0640'
|
||||
owner: root:sudo
|
||||
content: |
|
||||
TIMEZONE=Europe/Paris
|
||||
GLPI_DB_HOST=db
|
||||
GLPI_DB_PORT=3306
|
||||
GLPI_DB_NAME=glpi
|
||||
GLPI_DB_USER=glpi
|
||||
GLPI_DB_PASSWORD=xYcjYkJcKwSzBFJYHMXUSzL5
|
||||
GLPI_SKIP_AUTOINSTALL=true
|
||||
GLPI_CRONTAB_ENABLED=1
|
||||
- path: /opt/glpi/README-FIRST-BOOT.txt
|
||||
permissions: '0644'
|
||||
owner: root:root
|
||||
content: |
|
||||
GLPI stack files are stored in /opt/glpi.
|
||||
Start or restart the stack with:
|
||||
systemctl restart glpi-compose.service
|
||||
If GLPI auto-install is disabled, use the database values from /opt/glpi/.env in the web installer.
|
||||
- path: /etc/systemd/system/glpi-compose.service
|
||||
permissions: '0644'
|
||||
owner: root:root
|
||||
content: |
|
||||
[Unit]
|
||||
Description=GLPI Docker Compose stack
|
||||
Requires=docker.service
|
||||
After=network-online.target docker.service
|
||||
Wants=network-online.target
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
WorkingDirectory=/opt/glpi
|
||||
ExecStart=/usr/bin/docker compose up -d
|
||||
ExecStop=/usr/bin/docker compose down
|
||||
RemainAfterExit=yes
|
||||
TimeoutStartSec=0
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
- path: /usr/local/sbin/bootstrap-glpi-host.sh
|
||||
permissions: '0755'
|
||||
owner: root:root
|
||||
content: |
|
||||
#!/usr/bin/env bash
|
||||
set -euxo pipefail
|
||||
apt-get update
|
||||
DEBIAN_FRONTEND=noninteractive apt-get install -y ca-certificates curl gnupg
|
||||
install -d -m 0755 /etc/apt/keyrings
|
||||
curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
|
||||
chmod a+r /etc/apt/keyrings/docker.asc
|
||||
. /etc/os-release
|
||||
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu ${VERSION_CODENAME} stable" > /etc/apt/sources.list.d/docker.list
|
||||
apt-get update
|
||||
DEBIAN_FRONTEND=noninteractive apt-get install -y openssh-server nmap docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
|
||||
systemctl enable --now ssh
|
||||
systemctl enable --now containerd
|
||||
systemctl enable --now docker
|
||||
usermod -aG docker dom
|
||||
systemctl daemon-reload
|
||||
systemctl enable glpi-compose.service
|
||||
systemctl start glpi-compose.service || true
|
||||
runcmd:
|
||||
- [bash, /usr/local/sbin/bootstrap-glpi-host.sh]
|
||||
final_message: "cloud-init termine. Docker et GLPI sont prepares dans /opt/glpi."
|
||||
Reference in New Issue
Block a user