.PHONY: init plan apply format # Define vault_env function to set up vault environment define vault_env @export VAULT_ADDR="https://vault.service.consul:8200" && \ export VAULT_TOKEN=$$(vault write -field=token auth/approle/login role_id=$$VAULT_ROLEID) && \ export CONSUL_HTTP_TOKEN=$$(vault read -format=json consul_root/au/syd1/creds/terraform-vault | jq '.data.token') endef init: @$(call vault_env) && \ terragrunt run --all --non-interactive init -- -upgrade plan: init @$(call vault_env) && \ terragrunt run --all --parallelism 4 --non-interactive plan apply: init @$(call vault_env) && \ terragrunt run --all --parallelism 2 --non-interactive apply format: @echo "Formatting OpenTofu files..." @tofu fmt -recursive . @echo "Formatting Terragrunt files..." @terragrunt hcl fmt