Skip to content

fix: qualité du code - dev.sh, dockerfile layers, tests (epic #104)#112

Open
bgauduch wants to merge 3 commits into
masterfrom
feat/104-code-quality
Open

fix: qualité du code - dev.sh, dockerfile layers, tests (epic #104)#112
bgauduch wants to merge 3 commits into
masterfrom
feat/104-code-quality

Conversation

@bgauduch

Copy link
Copy Markdown
Owner

Summary

  • dev.sh - getopts et validation semver : remplace le parsing positionnel ($1, $2, $3) par getopts avec les flags -a (AWS version), -t (TF version), -i (image tag). Ajoute une validation regex semver (X.Y.Z) sur les deux versions avant utilisation. Ajoute set -euo pipefail complet (le -u manquait) et un trap ERR pour afficher la ligne d'échec.
  • dev.sh - typo PLATFORM : corrige PLATEFORMPLATFORM dans le script (variable et commentaire).
  • Dockerfile - consolidation des layers : fusionne les 4–6 RUN apt-get install séparés des stages terraform et aws-cli en un seul RUN par stage avec apt-get clean && rm -rf /var/lib/apt/lists/*. Les versions pinnées sont inchangées.
  • Tests de structure : ajoute 5 nouveaux commandTests dans container-structure-tests.yml.template : vérification que terraform et aws sont dans PATH, que l'utilisateur courant est nonroot (uid 1001), et que $HOME vaut /home/nonroot.

Test plan

  • Vérifier que dev.sh -h affiche l'usage correctement
  • Vérifier que dev.sh -a 2.x.y -t 1.x.y parse correctement les arguments
  • Vérifier que dev.sh -a invalid retourne une erreur semver claire
  • Vérifier que le build Docker fonctionne avec les stages terraform et aws-cli consolidés
  • Exécuter les container structure tests et valider les 5 nouveaux tests

Closes #104

https://claude.ai/code/session_01RsmDFm6w4jVXwvzmRd9BCv


Generated by Claude Code

claude added 3 commits April 22, 2026 18:17
Replace positional argument parsing with getopts, add -a/-t/-i flags,
and validate AWS and Terraform versions against semver regex before use.

https://claude.ai/code/session_01RsmDFm6w4jVXwvzmRd9BCv
Merge separate RUN apt-get install calls in the terraform and aws-cli
stages into a single RUN with apt-get clean to reduce image layer count.

https://claude.ai/code/session_01RsmDFm6w4jVXwvzmRd9BCv
Add commandTests to verify terraform and aws binaries are in PATH,
confirm the container runs as nonroot (uid 1001), and that HOME is set.

https://claude.ai/code/session_01RsmDFm6w4jVXwvzmRd9BCv
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

epic: qualité du code

2 participants