Fabrique Numérique - CI/CD
Ce dépôt centralise les workflows GitHub Actions réutilisables et les git hooks pour maintenir la cohérence et la qualité du code dans tous les dépôts de la Fabrique Numérique.
Référencez un workflow avec uses dans votre fichier de workflow :
jobs :
lint-commits :
uses : dnum-mi/fabnum-cicd/.github/workflows/lint-commits.yml@v0
permissions :
contents : read
Tip
Consultez l'introduction pour un guide complet avec des exemples de pipelines CI, CD et Helm.
Workflow
Description
Docs
test-helm.yml
Tests d'installation des charts dans un cluster Kind
docs
test-docker.yml
Exécution d'une commande dans une image Docker (registre ou tarball)
docs
Workflow
Description
Docs
build-docker.yml
Build et push (optionnel) d'images Docker multi-architecture (amd64/arm64)
docs
attest-docker.yml
Génération d'attestations de sécurité (provenance SLSA, SBOM, signature cosign)
docs
Workflow
Description
Docs
release-app.yml
Gestion automatisée des releases avec release-please (tags, changelogs, pré-releases)
docs
release-helm.yml
Publication de charts Helm via chart-releaser sur registre OCI et/ou dépôt Helm classique (dépôt de charts dédié)
docs
release-helm-local.yml
Publication d'un chart Helm hébergé dans un monorepo applicatif, sans chart-releaser
docs
update-helm-chart.yml
Mise à jour de la version d'un chart Helm hébergé dans le dépôt appelant
docs
dispatch-helm-chart.yml
Déclenchement de la mise à jour d'un chart Helm hébergé dans un dépôt séparé
docs
release-npm.yml
Publication de paquets sur un registre NPM (npmjs.org, GitHub Packages, registre privé)
docs
attest-helm.yml
Signatures cosign et provenance SLSA des charts Helm publiés sur un registre OCI
docs
sync-prerelease-branch.yml
Resynchronisation de la branche de pré-release sur la branche de release après une release (job à placer en dernier)
docs
Certains workflows nécessitent des secrets à configurer dans les Settings > Secrets du dépôt :
Secret
Workflows
Description
GH_PAT
release-app, update-helm-chart, dispatch-helm-chart
Personal Access Token GitHub (pour automerge et cross-repo)
SONAR_TOKEN
scan-sonarqube
Token d'authentification SonarQube
SONAR_PROJECT_KEY
scan-sonarqube
Clé du projet SonarQube
GIT_MIRROR_TOKEN
sync-cpin
Token GitLab pour la synchronisation CPiN
Validation locale du code avant commit et push. Consultez l'introduction pour les instructions d'installation.