feat: add workflow git
This commit is contained in:
@@ -0,0 +1,54 @@
|
||||
name: 🔍 Contrôle Qualité & Sécurité (QA)
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
branches:
|
||||
- dev
|
||||
- test
|
||||
- acc
|
||||
- master
|
||||
push:
|
||||
branches:
|
||||
- dev
|
||||
|
||||
jobs:
|
||||
quality-gate:
|
||||
name: 🛡️ Quality Gate & Security Check
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
env:
|
||||
GIT_SSL_NO_VERIFY: "true"
|
||||
NODE_TLS_REJECT_UNAUTHORIZED: "0"
|
||||
|
||||
steps:
|
||||
- name: Récupération du code source
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Configuration de Node.js (v22)
|
||||
uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version: 22
|
||||
cache: 'npm'
|
||||
|
||||
- name: Installation des dépendances
|
||||
run: npm ci
|
||||
|
||||
# Étape 1 : ESLint (Syntaxe et conventions)
|
||||
- name: 🧹 Analyse Linter (ESLint)
|
||||
run: npm run lint
|
||||
|
||||
# Étape 2 : Verification stricte des types TypeScript (sans émettre de fichiers)
|
||||
- name: 📐 Verification des Types TypeScript
|
||||
run: npx tsc --noEmit
|
||||
|
||||
# Étape 3 : Exécution des tests unitaires
|
||||
- name: 🧪 Tests Unitaires (Vitest)
|
||||
run: npm run test -- --run
|
||||
|
||||
# Étape 4 : Audit des vulnérabilités npm (Niveau High/Critical)
|
||||
- name: 🔐 Audit de Sécurité des Dépendances
|
||||
run: npm audit --audit-level=high
|
||||
|
||||
# Étape 5 : Validation de la compilation ViteJS
|
||||
- name: 🏗️ Validation du Build de Production
|
||||
run: npm run build
|
||||
Reference in New Issue
Block a user