1919 registry : " ${{ secrets.ECR_REGISTRY }}"
2020 secret-outputs-passphrase : " ${{ secrets.GHA_SECRET_OUTPUT_PASSPHRASE }}"
2121 ecr-region : " ${{ secrets.ECR_REGION }}"
22- ecr-iam-role : " ${{ secrets.ECR_IAM_ROLE }}"
22+ ecr-iam-role : " ${{ secrets.ECR_IAM_ROLE }}"
23+
24+ monorepo :
25+ uses : cloudposse/github-actions-workflows/.github/workflows/controller-monorepo.yml@main
26+ with :
27+ dir : ./apps
28+
29+ ci :
30+ uses : cloudposse/github-actions-workflows/.github/workflows/ci-dockerized-app-promote.yml@main
31+ needs : [monorepo]
32+ if : ${{ needs.monorepo.outputs.apps != '[]' }}
33+ strategy :
34+ matrix :
35+ app : ${{ fromJson(needs.monorepo.outputs.apps) }}
36+ with :
37+ organization : ${{ github.event.repository.owner.login }}
38+ repository : ${{ github.event.repository.name }}
39+ app : ${{ matrix.app }}
40+ version : ${{ inputs.version }}
41+ matrix-step-name : ci
42+ matrix-key : ${{ matrix.app }}
43+ secrets :
44+ ecr-region : ${{ secrets.ECR_REGION }}
45+ ecr-iam-role : ${{ secrets.ECR_IAM_ROLE }}
46+ registry : ${{ secrets.ECR_REGISTRY }}
47+ secret-outputs-passphrase : ${{ secrets.GHA_SECRET_OUTPUT_PASSPHRASE }}
48+
49+ ci-outputs :
50+ runs-on : ubuntu-latest
51+ needs : [ci]
52+ steps :
53+ -
uses :
cloudposse/[email protected] 54+ id : current
55+ with :
56+ matrix-step-name : ci
57+ outputs :
58+ image : ${{ toJson(fromJson(steps.current.outputs.result).image) }}
59+ tag : ${{ toJson(fromJson(steps.current.outputs.result).tag) }}
60+
61+
62+ cd-staging :
63+ name : cd / staging
64+ uses : cloudposse/github-actions-workflows/.github/workflows/cd-ecs.yml@main
65+ needs : [ monorepo, ci-outputs ]
66+ if : ${{ needs.monorepo.outputs.apps != '[]' }}
67+ strategy :
68+ matrix :
69+ app : ${{ fromJson(needs.monorepo.outputs.apps) }}
70+ with :
71+ image : ${{ fromJson(needs.ci-outputs.outputs.image)[matrix.app] }}
72+ tag : ${{ fromJson(needs.ci-outputs.outputs.tag)[matrix.app] }}
73+ repository : ${{ github.event.repository.name }}
74+ app : ${{ matrix.app }}
75+ environment : staging
76+ spacelift-organization : ${{ github.event.repository.owner.login }}
77+ matrix-step-name : cd/staging
78+ matrix-key : ${{ matrix.app }}
79+ secrets :
80+ secret-outputs-passphrase : ${{ secrets.GHA_SECRET_OUTPUT_PASSPHRASE }}
81+ github-private-actions-pat : ${{ secrets.PUBLIC_REPO_ACCESS_TOKEN }}
82+ spacelift-api-key-id : ${{ secrets.SPACELIFT_API_KEY_ID }}
83+ spacelift-api-key-secret : ${{ secrets.SPACELIFT_API_KEY_SECRET }}
84+
85+ cd-production :
86+ name : cd / production
87+ uses : cloudposse/github-actions-workflows/.github/workflows/cd-ecs.yml@main
88+ needs : [ monorepo, ci-outputs ]
89+ if : ${{ needs.monorepo.outputs.apps != '[]' }}
90+ strategy :
91+ matrix :
92+ app : ${{ fromJson(needs.monorepo.outputs.apps) }}
93+ with :
94+ image : ${{ fromJson(needs.ci-outputs.outputs.image)[matrix.app] }}
95+ tag : ${{ fromJson(needs.ci-outputs.outputs.tag)[matrix.app] }}
96+ repository : ${{ github.event.repository.name }}
97+ app : ${{ matrix.app }}
98+ environment : production
99+ spacelift-organization : ${{ github.event.repository.owner.login }}
100+ matrix-step-name : cd/production
101+ matrix-key : ${{ matrix.app }}
102+ secrets :
103+ secret-outputs-passphrase : ${{ secrets.GHA_SECRET_OUTPUT_PASSPHRASE }}
104+ github-private-actions-pat : ${{ secrets.PUBLIC_REPO_ACCESS_TOKEN }}
105+ spacelift-api-key-id : ${{ secrets.SPACELIFT_API_KEY_ID }}
106+ spacelift-api-key-secret : ${{ secrets.SPACELIFT_API_KEY_SECRET }}
0 commit comments