# ============================================================================= # Terraform CI Image # # Image minimale Alpine pour les pipelines CI/CD Terraform # Inclut : Terraform, tflint, git # ============================================================================= FROM alpine:3.20 LABEL maintainer="Damien Arnodo" LABEL description="Lightweight Terraform CI image with tflint for Gitea Actions" # Versions des outils ARG TERRAFORM_VERSION=1.5.7 ARG TFLINT_VERSION=0.54.0 # Installation des dépendances de base RUN apk add --no-cache \ curl \ git \ bash \ jq \ unzip \ ca-certificates # Installation de Terraform RUN curl -sL "https://releases.hashicorp.com/terraform/${TERRAFORM_VERSION}/terraform_${TERRAFORM_VERSION}_linux_amd64.zip" -o /tmp/terraform.zip \ && unzip /tmp/terraform.zip -d /usr/local/bin \ && rm /tmp/terraform.zip \ && chmod +x /usr/local/bin/terraform # Installation de tflint RUN curl -sL "https://github.com/terraform-linters/tflint/releases/download/v${TFLINT_VERSION}/tflint_linux_amd64.zip" -o /tmp/tflint.zip \ && unzip /tmp/tflint.zip -d /usr/local/bin \ && rm /tmp/tflint.zip \ && chmod +x /usr/local/bin/tflint # Nettoyage pour réduire la taille RUN rm -rf /var/cache/apk/* /tmp/* # Vérification des versions RUN terraform version && tflint --version WORKDIR /workspace CMD ["/bin/bash"]