Ce dossier contient les configurations pour l'intégration continue et le déploiement continu (CI/CD) du projet Duo Import MDG.
Le workflow principal est défini dans le fichier .github/workflows/symfony.yml
et effectue les opérations suivantes :
À chaque push sur les branches main
ou master
et à chaque pull request vers ces branches, le workflow exécute automatiquement :
- Validation de la syntaxe PHP : Vérifie que tous les fichiers PHP ne contiennent pas d'erreurs de syntaxe.
- Validation des fichiers composer : S'assure que les fichiers
composer.json
etcomposer.lock
sont valides. - Installation des dépendances : Installe toutes les dépendances du projet via Composer.
- Vérification des prérequis Symfony : S'assure que l'environnement est correctement configuré pour Symfony.
- Nettoyage du cache : Vide le cache de Symfony.
La section de déploiement est actuellement commentée dans le fichier de workflow. Pour l'activer, vous devrez :
- Décommenter la section
deploy
dans le fichier.github/workflows/symfony.yml
. - Configurer les secrets GitHub suivants dans les paramètres de votre dépôt :
HOST
: L'adresse du serveur de production.USERNAME
: Le nom d'utilisateur pour se connecter au serveur.SSH_PRIVATE_KEY
: La clé SSH privée pour l'authentification.
- Ajuster le chemin vers votre projet sur le serveur de production.
Pour activer l'exécution des tests dans le workflow :
- Créez un dossier
tests/
à la racine du projet. - Installez PHPUnit :
composer require --dev symfony/test-pack
. - Écrivez vos tests dans le dossier
tests/
. - Décommentez la section des tests dans le fichier de workflow.
Vous pouvez personnaliser le workflow en modifiant le fichier .github/workflows/symfony.yml
selon vos besoins spécifiques :
- Ajout d'étapes supplémentaires (analyse de code, vérification de sécurité, etc.).
- Modification des branches surveillées.
- Configuration de notifications (email, Slack, etc.).
- Ajout de matrices de test pour différentes versions de PHP ou de Symfony.