Cette application permet de gérer la dématérialisation des dossiers de candidature au CAC de l'Université d'Artois.
Le dépôt embarque l'application desktop NodeJS/Electron dans nodejs/.
Les workflows automatiques GitHub se déclenchent à chaque git push contenant un tag SemVer (v1.2.3) et produisent les binaires macOS + Windows sans intervention manuelle.
| Workflow | Fichier | Déclencheur | Rôle |
|---|---|---|---|
| Node build/publish | .github/workflows/nodejs-build.yml |
push sur un tag v* ou workflow_dispatch |
Installe Node 22, exécute npm run build, puis publie les artefacts Electron. |
Le workflow utilise secrets.GITHUB_TOKEN pour créer ou compléter automatiquement la release GitHub associée au tag.
| Commande | Description |
|---|---|
| `npm run version:patch | minor |
npm run build |
Construit l'application Electron via npm --prefix nodejs run electron:package. |
npm run release |
Déclenche la release Electron. |
| `npm run release:patch | minor |
npm run release:node |
Déclenche uniquement la release Electron. |
npm run publish |
Exécute la publication Electron. |
npm run publish:node |
Exécute npm --prefix nodejs run publish. |
-
Préparer la version
- Lancer
npm run release:patch|minor|majorounpm run version:patch|minor|major. - Cette commande met à jour
nodejs/package.jsonetnodejs/package-lock.json. - Pour les mises à jour automatiques Electron, les releases GitHub servent de feed à
electron-updater. Si le dépôt reste privé, les machines qui exécutent l'application doivent définirGH_TOKENouGITHUB_TOKENavec un PAT disposant du droitrepo:read.
- Lancer
-
Vérifier les changements Git
- Inspecter
git status. - Ajouter et committer les fichiers de version :
nodejs/package.jsonetnodejs/package-lock.json.
- Inspecter
-
Tester localement
- Lancer
npm --prefix nodejs run lint. - Lancer
npm run buildpour vérifier le packaging Electron.
- Lancer
-
Pousser sur la branche cible
- Pousser le commit et le tag SemVer
vX.Y.Z.
- Pousser le commit et le tag SemVer
-
Suivre les Actions
- Jobs NodeJS :
Electron Publish (macOS)etElectron Publish (Windows). - Chaque job publie un résumé et dépose ses artefacts.
- Jobs NodeJS :
-
Finaliser la release GitHub
- Une release
vX.Y.Zest créée en mode brouillon si elle n'existe pas, ou enrichie sinon. - Relire les notes automatiques, ajouter les commentaires nécessaires, puis publier la release.
- Une release
| Commande | Effet |
|---|---|
npm run build |
Lance npm --prefix nodejs run electron:package. |
npm run build:node |
Même effet que npm run build, explicitement ciblé sur nodejs/. |
- Prérequis : Node 22, npm et les toolchains natives de l'OS cible.
- Installer et préparer :
cd nodejs npm ci - Construire les packages :
Les fichiers apparaissent dans
npm run electron:package npm run electron:package:mac npm run electron:package:win npm run electron:package:linux
nodejs/dist/puisnodejs/release/. - Publier manuellement :
GH_TOKEN=... npm run publish
docs/user_guide.md: guide utilisateur.docs/FORMAT_IMPORT.md: format des fichiers d'import.docs/screenshots/: captures utilisées par la documentation.