Automated database backup 20240824_1200 #66
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Définition du nom du workflow, qui sera affiché sur GitHub | |
name: Java CI/CD with Maven | |
# Définition des événements qui déclencheront l'exécution du workflow | |
on: | |
push: # Lors d'un push | |
branches: [ "main" ] # Sur la branche main | |
pull_request: # Lors d'une pull request | |
branches: [ "main" ] # Ciblant la branche main | |
# Définition des jobs à exécuter | |
jobs: | |
build-and-test: # Nom du job | |
runs-on: ubuntu-latest # Exécute le job sur la dernière version d'Ubuntu disponible | |
steps: # Étapes du job | |
- uses: actions/[email protected] # Étape pour cloner le code source du dépôt | |
- name: Set up JDK 21 # Étape pour configurer JDK 21 | |
uses: actions/[email protected] # Utilise l'action setup-java pour configurer Java | |
with: # Options pour l'action setup-java | |
java-version: '21' # Spécifie la version de Java à utiliser | |
distribution: 'temurin' # Spécifie la distribution de Java à utiliser | |
cache: maven # Active le cache pour Maven | |
- name: Build with Maven # Étape pour construire le projet avec Maven | |
run: mvn -B package --file pom.xml # Exécute Maven pour compiler le projet et empaqueter | |
- name: Run Checkstyle # Étape pour exécuter Checkstyle | |
run: mvn checkstyle:checkstyle # Exécute Checkstyle pour vérifier la conformité du style de code | |
- name: Run Tests # Étape pour exécuter les tests | |
run: mvn test # Exécute les tests unitaires | |
- name: Build Docker Image # Étape pour construire l'image Docker | |
run: docker build -t spring-boot-student-management . # Construit l'image Docker à partir du Dockerfile | |
# - name: Log in to Azure | |
# uses: azure/login@v1 | |
# with: | |
# creds: \${{ secrets.AZURE_CREDENTIALS }} | |
# - name: Deploy to Azure Web App | |
# uses: azure/webapps-deploy@v2 | |
# with: | |
# app-name: nassim | |
# # slot-name: <Nom-Slot> # Optionnel, si vous utilisez des slots | |
# publish-profile: \${{ secrets.AZURE_WEBAPP_PUBLISH_PROFILE }} | |
# package: \${{ github.workspace }}/target/*.jar |