Skip to content

Setup workload identity federation, using github as provider #21

Setup workload identity federation, using github as provider

Setup workload identity federation, using github as provider #21

Workflow file for this run

name: CI & Plan
on:
pull_request:
jobs:
build:
# The permissions are necessary for the google-github-actions/auth@v2 action
permissions:
contents: read
id-token: write
runs-on: [ubuntu-latest]
steps:
- uses: actions/checkout@v4
- uses: google-github-actions/auth@v2
with:
project_id: ${{ secrets.GCP_PROJECT_ID }}
workload_identity_provider: ${{ secrets.STATE_BUCKET_ACCESS_WIF_PROVIDER }}
service_account: ${{ secrets.STATE_SERVICE_ACCOUNT_ID }}
- name: Set up Cloud SDK
uses: google-github-actions/setup-gcloud@v2
- name: Which user am I ?
run: gcloud config list account --format "value(core.account)"
- uses: hashicorp/setup-terraform@v3
- name: Use gcloud CLI
run: |
gcloud info
curl -H "X-Goog-User-Project: vbdev-436712" -H "Authorization: Bearer $(gcloud auth print-access-token)" "https://storage.googleapis.com/storage/v1/b/lpt-schulung-bucket-tfstate/o?alt=json&delimiter=%2F&endOffset=&includeTrailingDelimiter=false&pageToken=&prefix=bootstrap%2F&prettyPrint=false&projection=full&startOffset=&versions=false"
- id: init
env:
TF_VAR_github_token: ${{ secrets.API_ACCESS_TOKEN }}
TF_VAR_project_id: ${{ secrets.GCP_PROJECT_ID }}
TF_IN_AUTOMATION: 'true'
run: |
terraform init -input=false
- id: plan
run: terraform plan -no-color
- run: echo ${{ steps.plan.outputs.stdout }}
- run: echo ${{ steps.plan.outputs.stderr }}
- run: echo ${{ steps.plan.outputs.exitcode }}