@@ -37,24 +37,30 @@ jobs:
37
37
with :
38
38
endpoint : builders
39
39
40
+ - name : Generate random string
41
+ id : random
42
+ run : echo "random_string=$(openssl rand -hex 8)" >> $GITHUB_OUTPUT
43
+
40
44
- name : Build AMI stage 1
41
45
run : |
42
46
packer init amazon-arm64-nix.pkr.hcl
43
47
GIT_SHA=${{github.sha}}
44
- packer build -var "git-head-version=${GIT_SHA}" -var "packer-execution-id=${GITHUB_RUN_ID}" -var-file="development-arm.vars.pkr.hcl" -var-file="common-nix.vars.pkr.hcl" -var "ansible_arguments=" -var "postgres-version=ci-ami-test " -var "region=ap-southeast-1" -var 'ami_regions=["ap-southeast-1"]' -var "force-deregister=true" amazon-arm64-nix.pkr.hcl
45
-
48
+ packer build -var "git-head-version=${GIT_SHA}" -var "packer-execution-id=${GITHUB_RUN_ID}" -var-file="development-arm.vars.pkr.hcl" -var-file="common-nix.vars.pkr.hcl" -var "ansible_arguments=" -var "postgres-version=${{ steps.random.outputs.random_string }} " -var "region=ap-southeast-1" -var 'ami_regions=["ap-southeast-1"]' -var "force-deregister=true" amazon-arm64-nix.pkr.hcl
49
+
46
50
- name : Build AMI stage 2
47
51
run : |
48
52
packer init stage2-nix-psql.pkr.hcl
49
53
GIT_SHA=${{github.sha}}
50
- packer build -var "git-head-version=${GIT_SHA}" -var "packer-execution-id=${GITHUB_RUN_ID}" -var-file="development-arm.vars.pkr.hcl" -var-file="common-nix.vars.pkr.hcl" -var "postgres-version=ci-ami-test " -var "region=ap-southeast-1" -var 'ami_regions=["ap-southeast-1"]' -var "force-deregister=true" -var "git_sha=${GITHUB_SHA}" stage2-nix-psql.pkr.hcl
54
+ packer build -var "git-head-version=${GIT_SHA}" -var "packer-execution-id=${GITHUB_RUN_ID}" -var-file="development-arm.vars.pkr.hcl" -var-file="common-nix.vars.pkr.hcl" -var "postgres-version=${{ steps.random.outputs.random_string }} " -var "region=ap-southeast-1" -var 'ami_regions=["ap-southeast-1"]' -var "force-deregister=true" -var "git_sha=${GITHUB_SHA}" stage2-nix-psql.pkr.hcl
51
55
52
56
- name : Run tests
53
57
timeout-minutes : 10
58
+ env :
59
+ AMI_NAME : " supabase-postgres-${{ steps.random.outputs.random_string }}"
54
60
run : |
55
61
# TODO: use poetry for pkg mgmt
56
62
pip3 install boto3 boto3-stubs[essential] docker ec2instanceconnectcli pytest pytest-testinfra[paramiko,docker] requests
57
- pytest -vv -s testinfra/test_ami_nix.py
63
+ pytest -vv -s testinfra/test_ami_nix.py
58
64
59
65
- name : Cleanup resources on build cancellation
60
66
if : ${{ cancelled() }}
71
77
run : |
72
78
# Define AMI name patterns
73
79
STAGE1_AMI_NAME="supabase-postgres-ci-ami-test-stage-1"
74
- STAGE2_AMI_NAME="supabase-postgres-ci-ami-test-nix "
80
+ STAGE2_AMI_NAME="${{ steps.random.outputs.random_string }} "
75
81
76
82
# Function to deregister AMIs by name pattern
77
83
deregister_ami_by_name() {
0 commit comments