66 workflow_dispatch :
77
88jobs :
9- test-oidc :
9+ terraform-plan :
1010 runs-on : ubuntu-latest
1111 permissions :
1212 id-token : write
1616 uses : aws-actions/configure-aws-credentials@v4
1717 with :
1818 aws-region : eu-west-2
19- role-to-assume : arn:aws:iam::345594581768 :role/auto-ops
19+ role-to-assume : arn:aws:iam::${{ vars.AWS_ACCOUNT_ID }} :role/auto-ops
2020 role-session-name : github-actions
2121
2222 - name : Whoami
2727 with :
2828 fetch-depth : 1
2929
30+ - uses : hashicorp/setup-terraform@v3
31+ with :
32+ terraform_version : " 1.12.2"
33+
34+ - name : Terraform Init
35+ working-directory : ./terraform
36+ run : |
37+ export ENVIRONMENT=dev
38+ export SUB_ENVIRONMENT=internal-dev
39+ make init
40+
41+ - name : Terraform Plan
42+ working-directory : ./terraform_old
43+ run : |
44+ make plan environment=green
45+ # make plan environment=dev sub_environment=internal-dev
46+
47+ terraform-apply :
48+ needs : terraform-plan
49+ runs-on : ubuntu-latest
50+ environment :
51+ name : int
52+ steps :
53+ - name : Checkout
54+ uses : actions/checkout@v4
55+
56+ - uses : aws-actions/configure-aws-credentials@v4
57+ with :
58+ aws-region : eu-west-2
59+ role-to-assume : arn:aws:iam::${{ vars.AWS_ACCOUNT_ID }}:role/auto-ops
60+ role-session-name : github-actions
61+
62+ - uses : hashicorp/setup-terraform@v3
63+ with :
64+ terraform_version : " 1.12.2"
65+
66+ - name : Terraform Apply
67+ working-directory : ./terraform_old
68+ run : |
69+ make plan environment=green
70+ # make plan environment=green sub_environment=internal-dev
71+
72+ e2e-tests :
73+ needs : terraform-apply
74+ runs-on : ubuntu-latest
75+ steps :
76+ - name : Checkout
77+ uses : actions/checkout@v4
78+
79+ - uses : aws-actions/configure-aws-credentials@v4
80+ with :
81+ aws-region : eu-west-2
82+ role-to-assume : arn:aws:iam::${{ vars.AWS_ACCOUNT_ID }}:role/auto-ops
83+ role-session-name : github-actions
84+
3085 - name : Set up Python
31- id : setup_python
3286 uses : actions/setup-python@v5
3387 with :
3488 python-version : " 3.11"
@@ -37,34 +91,18 @@ jobs:
3791 run : |
3892 curl -sSL https://install.python-poetry.org | python3 -
3993 echo "$HOME/.local/bin" >> $GITHUB_PATH
40-
94+
4195 - name : Set Poetry to use Python 3.11
4296 working-directory : ./e2e
4397 run : |
4498 poetry env use $(which python3.11)
4599
46- - name : Install dependencies with Poetry (from e2e folder)
100+ - name : Install dependencies with Poetry
47101 working-directory : ./e2e
48102 run : |
49103 poetry install --no-root
50-
51- - uses : hashicorp/setup-terraform@v3
52- with :
53- terraform_version : " 1.12.2"
54104
55- - name : Terraform Init
56- working-directory : ./terraform
57- run : |
58- export ENVIRONMENT=dev
59- export SUB_ENVIRONMENT=internal-dev
60- make init
61-
62- - name : Terraform Plan
63- working-directory : ./terraform
64- run : |
65- make plan environment=dev sub_environment=internal-dev
66-
67- - name : Run e2e
105+ - name : Run e2e tests
68106 working-directory : ./e2e
69107 run : |
70108 apigee_token=$(aws ssm get-parameter \
78116 --with-decryption \
79117 --query "Parameter.Value" \
80118 --output text)
81-
119+
82120 export APIGEE_ACCESS_TOKEN=$apigee_token
8312184122 export APIGEE_ENVIRONMENT=internal-dev
0 commit comments