Skip to content

Déploiement ​

La page et le relais se déploient séparément, sur deux machines et deux adresses.

La page et la documentation ​

Publiée depuis un ordinateur avec yarn deploy (scripts/deploy.sh), le projet étant encore petit. La commande refuse les changements non commités, puis :

  1. audit des dépendances et tests ;
  2. construction de la page et de ce site, qui a le sien, docs.corico.infobrisson.fr ;
  3. précompression Brotli ;
  4. envoi par rsync à la place des fichiers précédents (--delay-updates et --delete-after).

Il n'y a ni révisions datées, ni bascule par lien. public/.htaccess fixe les en-têtes de sécurité de la page, et docs/docs.htaccess ceux de la documentation.

Pourquoi la documentation a son propre site : la page garde le mot de passe d'application et la clé de chiffrement dans le navigateur, lisibles par tout ce qui s'exécute à la même adresse. La documentation a besoin de scripts autorisés en ligne (VitePress), une protection plus faible que celle de la page : sur une autre origine, elle ne peut rien atteindre de tout cela. Les anciennes adresses sous /docs/ sont redirigées.

La CI de la forge ne fait que contrôler le style et lancer les tests à chaque push sur main. Sa tâche de publication reste commentée dans .gitlab-ci.yml, pour plus tard.

Le relais ​

Le rôle du relais dans la configuration du serveur, un dépôt Ansible privé, lance yarn release, qui exécute les contrôles et produit release/corico.mjs, un seul fichier. Il le copie dans /opt/corico et redémarre le service si le fichier a changé. Il n'y a ni versions gardées, ni lien.

Le bac à sable systemd n'autorise que la machine locale, dont le résolveur DNS, et l'adresse du Nextcloud (IPAddressAllow). Si cette adresse change, le relais répond 502 : changez l'adresse autorisée dans la configuration du serveur et redéployez.