Candidate 001 CONFLUENCE - paquet YunoHost (depot prive, accords client du 24/10/2026)
  • TypeScript 35.9%
  • Rust 26.7%
  • Python 17.2%
  • JavaScript 9.2%
  • Shell 6.2%
  • Other 4.8%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Onyx-ING 951d62d471 fix(ci): provisionnement ynh 12.1.x — enveloppe wget + GATE SHA-256 + venv linter
Cause racine du run 40175355881 (etablie sans CI le 25/10, code yunohost
tag debian/12.1.41.2 = version exacte du conteneur) : le provisionnement des
sources est du PYTHON noyau (SourcesResource.prefetch, src/utils/resources.py
lignes 507-529) qui lance /usr/bin/wget — chemin absolu — inconditionnellement,
sans consulter aucun cache ; une URL privee (404 anonyme, prouvee) fait
echouer toute installation. Le helper bash qui consommerait un cache
(helpers.v2.1.d/sources:152-181) ne s'execute qu'APRES, jamais atteint.

Lot nº3 (approuve par le client le 25/10, cycle nº4 / D4-bis) :
- enveloppe wget DANS le conteneur jetable : seul l'URL figee de la candidate
  est servie depuis les octets deja verifies (SHA-256 gele du manifeste figure
  au manifeste fige 8b506f0) ; tout autre appel passe au binaire original
  wget.real. Checker epingle f7d32ca et manifeste intacts ; aucun jeton dans
  le conteneur ; preuve d'anonymat 404 §0 remain vraie.
- triple GATE SHA-256 : octets pousses (conteneur de soudage), cache dans
  l'image PUBLIEE (conteneur sonde jetable), rejeu EXACT de l'appel python.
- venv etendu aux 5 dependances du linter (crash jsonschema du run 3) :
  jsonschema/toml/packaging/pyparsing/six.
Valide localement sans depense CI : YAML OK, enveloppe testee en reel
(interception passthrough cible preexistante), revalidation des octets.
2026-10-25 09:53:30 +01:00
.github/workflows fix(ci): provisionnement ynh 12.1.x — enveloppe wget + GATE SHA-256 + venv linter 2026-10-25 09:53:30 +01:00
api candidate-001: paquet YunoHost CONFLUENCE 0.1.0~ynh1 2026-10-24 23:20:24 +02:00
client candidate-001: paquet YunoHost CONFLUENCE 0.1.0~ynh1 2026-10-24 23:20:24 +02:00
conf candidate-001: paquet YunoHost CONFLUENCE 0.1.0~ynh1 2026-10-24 23:20:24 +02:00
scripts candidate-001: paquet YunoHost CONFLUENCE 0.1.0~ynh1 2026-10-24 23:20:24 +02:00
tools feat(ci): archive privée authentifiée pour la qualification isolée 2026-10-24 23:43:18 +02:00
manifest.toml fix(manifest): arrête la candidate 0.1.0 (URL et SHA-256 de la release) 2026-10-25 07:24:38 +00:00
README.md candidate-001: paquet YunoHost CONFLUENCE 0.1.0~ynh1 2026-10-24 23:20:24 +02:00
tests.toml candidate-001: paquet YunoHost CONFLUENCE 0.1.0~ynh1 2026-10-24 23:20:24 +02:00

Paquet CONFLUENCE (qualification ARCenal)

Candidature 001 d'un paquet YunoHost pour CONFLUENCE, preparee pour le canal Preview d'ARCenal Store (catalogue arcenal-coder/arcenal-systeme-catalogue). YunoHost est le socle technique du paquet ; le catalogue public YunoHost n'est pas le canal de distribution demande.

Contenu

  • manifest.toml (packaging v2, helpers 2.1), tests.toml.
  • scripts/ : install, upgrade, remove, backup, restore, change_url.
  • conf/ : templates nginx, systemd et fichier d'environnement (secret, chmod 400).
  • tools/ : verify_package_report.py (preuve de qualification rattachable au commit), prepare_candidature.sh.
  • .github/workflows/ : construire.yml (build Linux amd64, release, URL/SHA fixe) et qualifier.yml (package_check epingle f7d32ca en Incus, linter, preuve de qualification rattachee au commit final). Declenchement MANUEL uniquement (decisions du 24/10 : l'execution de la CI est une autorisation distincte ; le declencheur push de qualifier a ete retire).
  • api/ et client/ : code applicatif, copie dans ce depot prive a la creation (hors api/target/, client/node_modules/, client/dist/ et scripts *.mjs de recette locale). Exclu du depot : secrets, bases locales, dossiers de brevets, documents confidentiels et prototype historique. Perimetre controle reellement le 24/10 (TEST_REPORT.md).

Ce que l'installation du paquet fait elle-meme

  • provisionne les dependances Debian PostgreSQL/PostGIS (versions ajustees a l'instance cible, jamais celles relevees sur un Mac) ;
  • cree une base propre a l'application via la ressource database de YunoHost ;
  • active PostGIS dans cette seule base, via la session d'administration ;
  • applique les migrations versionnees embarquees dans le binaire, au demarrage, sous le role applicatif sans privilege d'administration ;
  • deploie un service systemd Rust sur un port interne (boucle locale) et le frontend statique serve par nginx gere par YunoHost ;
  • protege l'acces par une permission privee (groupe choisi a l'installation, jamais un visiteur).

Conditions a lever avant publication et essai

  1. Licence : AUCUNE licence ouverte sans accord client (implicite, 24/10) ; manifeste LicenseRef-Proprietary maintenu ; fichier LICENSE a trancher avant toute publication publique.
  2. Depot : ACCEPTE en PRIVE — arcenal-coder/confluence_ynh, branche preview, commits locaux + push autorises ; tout passage en public reste soumis a un accord distinct.
  3. Note « superieure a 5 » : remplacee (24/10) par un niveau ARCenal 5 reellement demontre + tous les essais applicables reussis ; le niveau 5 n'est PAS encore obtenu ; note officielle YunoHost non attribuee.
  4. Instance de recette a designer ; installation MANUELLE de la candidate 001 par le client (procedure docs/adh/PROCEDURE_INSTALLATION_MANUELLE_CANDIDATE.md du workspace) ; protections GitHub du catalogue requises avant toute future promotion (D6).

Traces

  • Les controles locaux executes sont traces dans TEST_REPORT.md.
  • Les etapes reellement executees sur une instance (install/upgrade/backup/ restore/change_url/installation Store) restent NON_EXECUTEE et ne peuvent pas etre declarees reussies sans leurs preuves.
  • Les fonds locaux georeferences et la qualification spatiale (B-GEO01) sont des jalons de la tranche B ; pas inclus a la candidate 001.
  • Droits des modele 3D inclus : voir docs/architecture/ASSETS_LOT_2.md (provenance et droits etablis avant toute distribution).