4NK_template/docs/project/CONFIGURATION.md

2.7 KiB
Raw Permalink Blame History

Configuration — 4NK_template (projet)

Variables denvironnement (CI)

  • Secrets CI uniquement (pas de secrets en clair)
  • Agents IA: OPENAI_API_KEY, OPENAI_MODEL, OPENAI_API_BASE, OPENAI_TEMPERATURE
  • Release: RELEASE_TOKEN (publication des releases via lAPI Gitea)
  • Forge: BASE_URL (ex: https://git.4nkweb.com)
  • Runner unifié:
    • RUNNER_MODE = agents | runner | both (par défaut: agents)
    • REGISTRATION_TOKEN (requis si RUNNER_MODE=runner ou both sans config existante)
  • Flag de gel CI:
    • CI_SKIP (défaut true dans le template): quand true, les jobs CI sont courtcircuités
    • Définir à false pour réactiver la CI côté dépôt
    • Alternative ponctuelle: commit message [skip ci]

Variables denvironnement (agents)

  • AUTO_FIX (0/1, défaut 0): active les corrections automatiques côté agents
    • Création de la structure tests/** manquante
    • Génération de squelettes minimalistes pour certains fichiers de docs/
  • SCOPE (all|changed, défaut all):
    • all: passe sur lensemble du dépôt
    • changed: focalise les contrôles/corrections sur les fichiers modifiés du dernier commit

Conventions

  • Retours de ligne normalisés par CI
  • Dossiers tests/logs et tests/reports réservés aux artefacts

Pré-requis agents

  • bash requis (job CI bash-required)
  • Fallback PowerShell utilisable localement

Conteneur unifié (runner+agents)

  • Image: construite via docker/Dockerfile.ci, orchestrée par docker-compose.ci.yml
  • Montage: le projet courant est monté sur /work, les rapports dans /work/tests/reports/agents
  • Secrets locaux: ~/.4nk_template/.env monté en lecture seule dans le conteneur

Variables utilisées par lentrypoint docker/entrypoint.ci.sh:

  • RUNNER_MODE détermine le mode dexécution
  • BASE_URL et REGISTRATION_TOKEN servent à lenregistrement du runner (act_runner)

Commit message — désactiver la CI ponctuellement

  • Ajouter [skip ci] au message de commit pour ignorer un run côté Gitea Actions

Gestion locale des secrets (~/.4nk_template/.env)

  • Modèle fourni: scripts/env/.env.template (clés sans valeurs)
  • Provisionnement automatique: scripts/env/ensure_env.sh
    • crée ~/.4nk_template/ (chmod 700) et ~/.4nk_template/.env (chmod 600) si absent
    • copie depuis le template puis demande de compléter
    • vérifie les variables essentielles (ex: OPENAI_API_KEY, OPENAI_MODEL)
  • Chargement automatique: scripts/agents/run.sh source ~/.4nk_template/.env si présent

Lints Markdown

  • Configuration: .markdownlint.json (MD013 à 200 colonnes, MD024 en siblings_only)
  • CI: job markdownlint exécute markdownlint-cli sur tous les .md (hors archive/**)