Skip to content

Plt 1605 establish cdap-test and cdap-prod codebuild runners (#400) #119

Plt 1605 establish cdap-test and cdap-prod codebuild runners (#400)

Plt 1605 establish cdap-test and cdap-prod codebuild runners (#400) #119

Workflow file for this run

name: tofu-apply
on:
workflow_dispatch:
push:
branches:
- main
paths:
- 'terraform/services/**'
schedule:
- cron: '12 14 * * 1-5'
concurrency:
group: tofu-plan-or-apply
env:
TENV_GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
jobs:
apply:
permissions:
contents: read
id-token: write
runs-on: codebuild-cdap-${{github.run_id}}-${{github.run_attempt}}
strategy:
fail-fast: false
matrix:
app: [ab2d, bcda, dpc]
env: [dev, test, sandbox, prod]
include:
- app: cdap
env: prod
- app: cdap
env: test
steps:
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- uses: sigstore/cosign-installer@d58896d6a1865668819e1d91763c7751a165e159 # v3.9.2
- uses: cmsgov/cdap/actions/setup-tenv@8343fb96563ce4b74c4dececee9b268f42bd4a40
- uses: cmsgov/cdap/actions/setup-sops@84a6bcee5b70d63c44f8fec4f9b542cb5ec29a54
- uses: cmsgov/cdap/actions/setup-yq@328406d6e1d435b4e3da598bcdab22e576c3945e
- uses: aws-actions/configure-aws-credentials@00943011d9042930efac3dcd3a170e4273319bc8 # v5.1.0
with:
role-to-assume: arn:aws:iam::${{ contains(fromJSON('["dev", "test"]'), matrix.env) && secrets.NON_PROD_ACCOUNT || secrets.PROD_ACCOUNT }}:role/delegatedadmin/developer/${{ matrix.app }}-${{ matrix.env }}-github-actions
aws-region: ${{ vars.AWS_REGION }}
- run: scripts/tofu-plan
env:
APPLY: "true"
APP: ${{ matrix.app }}
ENV: ${{ matrix.env }}
alert:
permissions:
contents: read
id-token: write
runs-on: codebuild-cdap-${{github.run_id}}-${{github.run_attempt}}
if: failure()
needs: [apply]
steps:
- uses: slackapi/slack-github-action@91efab103c0de0a537f72a35f6b8cda0ee76bf0a # v2.1.1
with:
method: chat.postMessage
token: ${{ secrets.SLACK_BOT_TOKEN }}
payload: |
channel: ${{ secrets.SLACK_CHANNEL_ID }}
text: "Terraform apply failure: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}"