Skip to content

Add back parti. email GSI with base table's SK #304

Add back parti. email GSI with base table's SK

Add back parti. email GSI with base table's SK #304

Workflow file for this run

name: CI
concurrency: ci-${{ github.ref }}
on:
push:
branches: [master]
workflow_dispatch:
jobs:
idp-app-secret-roll-call:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Identity provider app secret roll call
working-directory: infra
env:
FACEBOOK_APP_SECRET: ${{ secrets.FACEBOOK_APP_SECRET }}
GOOGLE_APP_SECRET: ${{ secrets.GOOGLE_APP_SECRET }}
AMAZON_APP_SECRET: ${{ secrets.AMAZON_APP_SECRET }}
APPLE_APP_SECRET: ${{ secrets.APPLE_APP_SECRET }}
run: |
npm install
npx ts-node scripts/idp-app-secret-roll-call.ts
webapp-staging:
runs-on: ubuntu-latest
permissions:
id-token: write
contents: read
steps:
- uses: actions/checkout@v4
- name: Install backend
working-directory: backend
run: |
npm install
- name: Test backend
working-directory: backend
run: |
npm test
- name: Install backend-v2
working-directory: backend-v2
run: |
npm install
- name: Test backend-v2
working-directory: backend-v2
run: |
npm test
- name: Install infra
working-directory: infra
run: |
npm install
- name: Build infra
working-directory: infra
run: npm run build
- name: Test infra
working-directory: infra
run: |
npm test
- name: Build backend prod artifact
working-directory: backend
run: |
rm -rf node_modules
npm install --production
du -hs *
- name: Build backend-v2 prod artifact
working-directory: backend-v2
run: |
rm -rf node_modules
npm install --production
du -hs *
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v4
with:
role-to-assume: ${{ vars.TEST_ROLE_ARN }}
aws-region: us-east-1
- name: Deploy the webapp stack to the staging account
working-directory: infra
run: |
npm run deploy-webapp
frontend-staging:
needs: webapp-staging
permissions:
id-token: write
contents: read
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v4
with:
role-to-assume: ${{ vars.TEST_ROLE_ARN }}
aws-region: us-east-1
- name: Install, build, test, deploy
working-directory: frontend
run: |
npm run install-build-test-deploy
frontend-create-haggadah-staging:
needs: webapp-staging
runs-on: ubuntu-latest
permissions:
id-token: write
contents: read
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v4
with:
role-to-assume: ${{ vars.TEST_ROLE_ARN }}
aws-region: us-east-1
- name: Install, build, test, deploy (test account)
working-directory: frontend-create-haggadah
run: |
npm run install-build-test-deploy
content-staging:
runs-on: ubuntu-latest
needs: webapp-staging
permissions:
id-token: write
contents: read
steps:
- uses: actions/checkout@v4
- name: Install content
working-directory: content
run: |
npm install
- name: Test content
working-directory: content
run: |
npm test
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v4
with:
role-to-assume: ${{ vars.TEST_ROLE_ARN }}
aws-region: us-east-1
- name: itest content (SKIP)
working-directory: content
run: |
echo "Skipping, as this tests the incomplete preview-Haggadah feature"
# npm run it
- name: Deploy content
working-directory: content
run: |
npm run deploy
itest-staging:
needs: [frontend-staging, content-staging]
runs-on: ubuntu-latest
permissions:
id-token: write
contents: read
steps:
- uses: actions/checkout@v4
- name: Install
working-directory: itest
run: |
npm install
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v4
with:
role-to-assume: ${{ vars.TEST_ROLE_ARN }}
aws-region: us-east-1
- name: Run
working-directory: itest
run: |
npm run itest
itest-links-staging-2023:
runs-on: ubuntu-latest
needs: [frontend-staging, frontend-create-haggadah-staging, content-staging]
permissions:
id-token: write
contents: read
steps:
- uses: actions/checkout@v4
- name: Install itest
working-directory: itest
run: |
npm install
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v4
with:
role-to-assume: ${{ vars.TEST_ROLE_ARN }}
aws-region: us-east-1
- name: Run itest on the v2 link-based flow (staging account)
working-directory: itest
run: |
npm run itest-links
itest-links-staging-2019-magid:
runs-on: ubuntu-latest
needs: [frontend-staging, frontend-create-haggadah-staging, content-staging]
permissions:
id-token: write
contents: read
steps:
- uses: actions/checkout@v4
- name: Install itest
working-directory: itest
run: |
npm install
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v4
with:
role-to-assume: ${{ vars.TEST_ROLE_ARN }}
aws-region: us-east-1
- name: Run itest on the v2 link-based flow, 2019 magid (staging account)
working-directory: itest
env:
PARTICIPANTS_ARG: "8"
SCRIPT_TERM: "2019_Magid"
run: |
npm run itest-links
webapp-prod2:
needs:
[itest-staging, itest-links-staging-2019-magid, itest-links-staging-2023]
runs-on: ubuntu-latest
permissions:
id-token: write
contents: read
steps:
- uses: actions/checkout@v4
- name: Install infra
working-directory: infra
run: |
npm install
- name: Build infra
working-directory: infra
run: npm run build
- name: Build backend prod artifact
working-directory: backend
run: |
rm -rf node_modules
npm install --production
- name: Build backend2 prod artifact
working-directory: backend-v2
run: |
rm -rf node_modules
npm install --production
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v4
with:
role-to-assume: ${{ vars.PROD2_ROLE_ARN }}
aws-region: us-east-1
- name: Deploy the webapp stack to the prod2 account
working-directory: infra
run: |
npm run deploy-webapp
frontend-prod2:
needs: webapp-prod2
runs-on: ubuntu-latest
permissions:
id-token: write
contents: read
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v4
with:
role-to-assume: ${{ vars.PROD2_ROLE_ARN }}
aws-region: us-east-1
- name: Install, build, test, deploy
working-directory: frontend
env:
AWS_DEFAULT_REGION: "us-east-1"
run: |
npm run install-build-test-deploy
frontend-create-haggadah-prod2:
needs: webapp-prod2
runs-on: ubuntu-latest
permissions:
id-token: write
contents: read
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v4
with:
role-to-assume: ${{ vars.PROD2_ROLE_ARN }}
aws-region: us-east-1
- name: Install, build, test, deploy
working-directory: frontend-create-haggadah
env:
AWS_DEFAULT_REGION: "us-east-1"
run: |
npm run install-build-test-deploy
content-prod2:
runs-on: ubuntu-latest
needs: webapp-prod2
permissions:
id-token: write
contents: read
steps:
- uses: actions/checkout@v4
- name: Install content
working-directory: content
run: |
npm install
- name: Test content
working-directory: content
run: |
npm test
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v4
with:
role-to-assume: ${{ vars.PROD2_ROLE_ARN }}
aws-region: us-east-1
- name: itest content (SKIP)
working-directory: content
run: |
echo "Skipping, as this tests the incomplete preview-Haggadah feature"
# npm run it
- name: Deploy content
working-directory: content
run: |
npm run deploy
itest-prod2:
needs: [frontend-prod2, content-prod2]
runs-on: ubuntu-latest
permissions:
id-token: write
contents: read
steps:
- uses: actions/checkout@v4
- name: Install itest
working-directory: itest
run: |
npm install
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v4
with:
role-to-assume: ${{ vars.PROD2_ROLE_ARN }}
aws-region: us-east-1
- name: Run integration tests, prod account
working-directory: itest
run: |
npm run itest
itest-links-prod2-2023:
runs-on: ubuntu-latest
needs: [frontend-prod2, frontend-create-haggadah-prod2, content-prod2]
permissions:
id-token: write
contents: read
steps:
- uses: actions/checkout@v4
- name: Install itest
working-directory: itest
run: |
npm install
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v4
with:
role-to-assume: ${{ vars.PROD2_ROLE_ARN }}
aws-region: us-east-1
- name: Run itest on the v2 link-based flow (prod2 account)
working-directory: itest
run: |
npm run itest-links
itest-links-prod2-2019-magid:
runs-on: ubuntu-latest
needs: [frontend-prod2, frontend-create-haggadah-prod2, content-prod2]
permissions:
id-token: write
contents: read
steps:
- uses: actions/checkout@v4
- name: Install itest
working-directory: itest
run: |
npm install
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v4
with:
role-to-assume: ${{ vars.PROD2_ROLE_ARN }}
aws-region: us-east-1
- name: Run itest on the v2 link-based flow, 2019 magid (prod2 account)
working-directory: itest
env:
PARTICIPANTS: "8"
SCRIPT_TERM: "2019_Magid"
run: |
npm run itest-links