@@ -3,6 +3,10 @@ name: Integration Tests CodeBuild
33on :
44 workflow_dispatch :
55
6+ permissions :
7+ id-token : write # This is required for requesting the JWT
8+ contents : read # This is required for actions/checkout
9+
610jobs :
711 build-integration-tests-codebuild :
812 name : Run Integration Tests With CodeBuild
@@ -34,35 +38,24 @@ jobs:
3438 run : poetry install
3539
3640 - name : ' Configure AWS Credentials'
41+ id : creds
3742 uses : aws-actions/configure-aws-credentials@v4
3843 with :
39- aws-access-key-id : ${{ secrets.AWS_ACCESS_KEY_ID }}
40- aws-secret-access-key : ${{ secrets.AWS_SECRET_ACCESS_KEY }}
44+ role-to-assume : arn:aws:iam::${{ secrets.AWS_ACCOUNT_ID }}:role/${{ secrets.AWS_DEPLOY_ROLE }}
45+ role-session-name : python_integration_codebuild_tests
46+ role-duration-seconds : 21600
4147 aws-region : ${{ secrets.AWS_DEFAULT_REGION }}
42-
43- - name : ' Set up Temp AWS Credentials'
44- run : |
45- creds=($(aws sts get-session-token \
46- --duration-seconds 21600 \
47- --query 'Credentials.[AccessKeyId, SecretAccessKey, SessionToken]' \
48- --output text \
49- | xargs));
50- echo "::add-mask::${creds[0]}"
51- echo "::add-mask::${creds[1]}"
52- echo "::add-mask::${creds[2]}"
53- echo "TEMP_AWS_ACCESS_KEY_ID=${creds[0]}" >> $GITHUB_ENV
54- echo "TEMP_AWS_SECRET_ACCESS_KEY=${creds[1]}" >> $GITHUB_ENV
55- echo "TEMP_AWS_SESSION_TOKEN=${creds[2]}" >> $GITHUB_ENV
48+ output-credentials : true
5649
5750 - name : ' Run Integration Tests'
5851 run : |
5952 ./gradlew --no-parallel --no-daemon test-python-${{ matrix.python-version }}-${{ matrix.environment }} --info
6053 env :
6154 RDS_CLUSTER_DOMAIN : ${{ secrets.DB_CONN_SUFFIX }}
6255 RDS_DB_REGION : ${{ secrets.AWS_DEFAULT_REGION }}
63- AWS_ACCESS_KEY_ID : ${{ env.TEMP_AWS_ACCESS_KEY_ID }}
64- AWS_SECRET_ACCESS_KEY : ${{ env.TEMP_AWS_SECRET_ACCESS_KEY }}
65- AWS_SESSION_TOKEN : ${{ env.TEMP_AWS_SESSION_TOKEN }}
56+ AWS_ACCESS_KEY_ID : ${{ steps.creds.outputs.aws-access-key-id }}
57+ AWS_SECRET_ACCESS_KEY : ${{ steps.creds.outputs.aws-secret-access-key }}
58+ AWS_SESSION_TOKEN : ${{ steps.creds.outputs.aws-session-token }}
6659 RDS_ENDPOINT : ${{ secrets.RDS_ENDPOINT }}
6760 AURORA_MYSQL_DB_ENGINE_VERSION : " latest"
6861 AURORA_PG_ENGINE_VERSION : " latest"
0 commit comments