Add Terraform init step with secure MinIO backend
Some checks failed
Code Quality & Security Scan / Tfsec Security Scan (push) Successful in 28s
Code Quality & Security Scan / TFLint (push) Successful in 17s
Code Quality & Security Scan / Checkov Security Scan (push) Successful in 36s
Code Quality & Security Scan / SonarQube Trigger (push) Successful in 38s
Code Quality & Security Scan / Terraform Init (push) Failing after 30s

- Removed hardcoded MinIO credentials from backend.tf
- Added terraform-init job after SonarQube step
- Uses organization secrets for MinIO credentials:
  - MINIO_ACCESS_KEY
  - MINIO_SECRET_KEY
- Credentials passed via AWS_ACCESS_KEY_ID/AWS_SECRET_ACCESS_KEY env vars
- Initializes Terraform with S3-compatible MinIO backend
This commit is contained in:
Patrick de Ruiter 2025-11-01 23:59:01 +01:00
parent 0089d060cf
commit 4ce4ee9b70
Signed by: pderuiter
GPG Key ID: 5EBA7F21CF583321
2 changed files with 21 additions and 3 deletions

View File

@ -76,3 +76,24 @@ jobs:
env:
SONAR_HOST_URL: ${{ secrets.SONARQUBE_HOST }}
SONAR_TOKEN: ${{ secrets.SONARQUBE_TOKEN }}
terraform-init:
name: Terraform Init
runs-on: ubuntu-latest
needs: sonarqube
steps:
- name: Checking out
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Setup Terraform
uses: hashicorp/setup-terraform@v3
with:
terraform_version: latest
- name: Terraform Init
env:
AWS_ACCESS_KEY_ID: ${{ secrets.MINIO_ACCESS_KEY }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.MINIO_SECRET_KEY }}
run: terraform init

View File

@ -7,9 +7,6 @@ terraform {
bucket = "home-terraform"
key = "home/vsphere/network/vsphere-resourcegroup-config.tfstate"
access_key = "R9lCycfEO8qJ2dxlQT1S"
secret_key = "6rtVLjDIjx7U9ecNRkdbS3idSBNWsfNhN6wB20sJ"
region = "main"
skip_credentials_validation = true
skip_metadata_api_check = true