Action tierce sur un workflow qui tourne avec les droits du dépôt : un tag mobile se redéplace. Constat SonarCloud githubactions:S7637, seul écart de la quality gate sur la PR.
53 lines
1.6 KiB
YAML
53 lines
1.6 KiB
YAML
name: Infra
|
|
|
|
# Pourquoi : le Terraform du dépôt est resté cassé sans que rien ne le dise, faute de job qui le
|
|
# joue. Ce workflow n'applique rien : il vérifie le formatage et la validité de chaque racine.
|
|
# Piège : la boucle parcourt `environments/*`, pour qu'une racine ajoutée soit couverte sans
|
|
# toucher à ce fichier.
|
|
|
|
on:
|
|
push:
|
|
paths:
|
|
- "infra/terraform/**"
|
|
- ".github/workflows/infra.yml"
|
|
pull_request:
|
|
paths:
|
|
- "infra/terraform/**"
|
|
- ".github/workflows/infra.yml"
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
concurrency:
|
|
group: infra-${{ github.ref }}
|
|
cancel-in-progress: true
|
|
|
|
jobs:
|
|
terraform:
|
|
name: Formatage et validation Terraform
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- name: Récupère le dépôt
|
|
uses: actions/checkout@v7
|
|
|
|
# Action tierce, donc epinglee sur un SHA de commit et pas sur un tag mobile : un tag se
|
|
# redeplace, et ce workflow tourne avec les droits du depot (regle Sonar githubactions:S7637).
|
|
- name: Installe Terraform
|
|
uses: hashicorp/setup-terraform@dfe3c3f87815947d99a8997f908cb6525fc44e9e # v4.0.1
|
|
with:
|
|
terraform_version: 1.16.3
|
|
terraform_wrapper: false
|
|
|
|
- name: Vérifie le formatage
|
|
run: terraform fmt -check -recursive infra/terraform
|
|
|
|
- name: Valide chaque racine
|
|
run: |
|
|
for racine in infra/terraform/environments/*/; do
|
|
echo "::group::${racine}"
|
|
terraform -chdir="${racine}" init -backend=false -input=false
|
|
terraform -chdir="${racine}" validate
|
|
echo "::endgroup::"
|
|
done
|