chore: build
ci-api / test (push) Successful in 26m18s

This commit is contained in:
Xor290
2026-08-18 16:37:00 +02:00
parent 955f2325fb
commit aa1aa60f00
8 changed files with 189 additions and 4 deletions
View File
+10 -2
View File
@@ -77,13 +77,21 @@ services:
LBTELEGRAM_IMAGE_APP: ${LBTELEGRAM_IMAGE_APP:-xor1234/lbtelegram:helm}
KUBECONFIG: /kubeconfig/config
OMNEX_APP_DOWNLOADS_DIR: /app-downloads
# Compte Docker Hub authentifié (lecture seule) injecté dans chaque
# namespace de démo — passe le rate-limit de pull anonyme (100/6h par
# IP) à 200/6h. Vide = pull anonyme (comportement inchangé).
OMNEX_DOCKERHUB_USERNAME: ${OMNEX_DOCKERHUB_USERNAME:-}
OMNEX_DOCKERHUB_PASSWORD: ${OMNEX_DOCKERHUB_PASSWORD:-}
volumes:
- ../deploy/chart-gestion:/charts:ro
- ${KUBECONFIG_HOST_PATH:-/home/xor_fakers/.kube/config}:/kubeconfig/config:ro
# Dossier où déposer manuellement les .apk (Admin Panel / Client) à
# rendre téléchargeables aux clients ayant une démo ou un abonnement
# actif — voir control-plane/api/internal/downloads.
- ../app:/app-downloads:ro
# actif — voir control-plane/api/internal/downloads. Vit dans
# docker/ (comme waf/, nginx/, certs/) : sur le serveur, seuls
# docker-compose.yml et waf/ sont synchronisés par Ansible, le
# reste (dont app/) est géré manuellement dans docker_dir.
- ./app:/app-downloads:ro
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8080/healthz"]
interval: 5s
+6 -1
View File
@@ -47,7 +47,12 @@ server {
add_header X-Frame-Options "DENY" always;
add_header X-Content-Type-Options "nosniff" always;
add_header Referrer-Policy "no-referrer" always;
add_header Content-Security-Policy "default-src 'none'; frame-ancestors 'none'" always;
# Le SPA (Vite/React) est servi en même origine (proxifié ci-dessous) et
# utilise Chakra UI/Emotion, qui injecte des <style> au runtime (CSS-in-JS)
# — d'où "style-src 'unsafe-inline'". Pas de script inline dans
# web/index.html (un seul <script type="module" src="/src/main.tsx">),
# donc script-src reste strict à 'self'.
add_header Content-Security-Policy "default-src 'self'; script-src 'self'; style-src 'self' 'unsafe-inline'; img-src 'self' data:; font-src 'self' data:; connect-src 'self'; object-src 'none'; base-uri 'self'; frame-ancestors 'none'" always;
# ---------------------------------------------------
# Limites et timeouts