@@ -16,25 +16,30 @@ jobs:
1616 CONFIG_DIRECTORY : " ./config/"
1717 steps :
1818 - name : SetupOpenTofu
19- uses : opentofu/setup-opentofu@12f4debbf681675350b6cd1f0ff8ecfbda62027b # v1 .0.4
19+ uses : opentofu/setup-opentofu@a1320f892987e89d278cc92dc5adc984fb93aca4 # v2 .0.2
2020
2121 - name : Checkout code
22- uses : actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4
22+ uses : actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
23+ with :
24+ persist-credentials : false
2325
2426 - name : Load state from artifacts
2527 continue-on-error : true # Allow for artifact not existing yet
26- uses : actions/download-artifact@v4
28+ uses : actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
2729 with :
2830 name : provision-user-state
2931 path : $CONFIG_DIRECTORY
3032 pattern : terraform.tfstate
3133
3234 - name : Generate a token
3335 id : generate-token
34- uses : actions/create-github-app-token@v1
36+ uses : actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1 # v3.2.0
3537 with :
36- app_id : ${{ secrets.USER_MANAGEMENT_APP_ID }}
37- private_key : ${{ secrets.USER_MANAGEMENT_PRIVATE_KEY }}
38+ client-id : ${{ secrets.USER_MANAGEMENT_APP_ID }}
39+ private-key : ${{ secrets.USER_MANAGEMENT_PRIVATE_KEY }}
40+ # These are also set in the App's permissions, but this is more easily reviewable.
41+ permission-members : write
42+ permission-actions : read
3843
3944 - name : OpenTofu Apply
4045 id : apply
5156 # NOTE: we don't encrypt/decrypt the state file, as it only contains
5257 # (public) github memberships.
5358 - name : Save state to artifacts
54- uses : actions/upload-artifact@v4
59+ uses : actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
5560 with :
5661 name : provision-user-state
5762 path : $CONFIG_DIRECTORY/terraform.tfstate
0 commit comments