Correct “Egyptian” #320
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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-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-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-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 |