name: DevSecOps Pipeline - Universal Quality Gate on: push: branches: [ "main", "develop", "dev/*" ] pull_request: branches: [ "main" ] jobs: health-check: name: System & Environment Check runs-on: ubuntu-latest steps: - name: System Check run: | echo "🚀 Pipeline CI/CD opérationnel !" uname -a gitleaks-scan: name: Secret Detection (Gitleaks) runs-on: ubuntu-latest steps: - name: Checkout Code uses: actions/checkout@v4 with: fetch-depth: 0 - name: Run Gitleaks run: | docker run --rm -v "$PWD":/path:z zricethezav/gitleaks:v8.18.2 detect --source="/path" --verbose --redact trivy-iac-scan: name: IaC Security & Vulnerability Scan (Trivy) runs-on: ubuntu-latest needs: gitleaks-scan steps: - name: Checkout Code uses: actions/checkout@v4 - name: Run Trivy Scan run: | docker run --rm -v "$PWD":/path:z aquasec/trivy:0.49.1 config /path