feat: project tailwind #5277
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: Deploy to environment | |
on: | |
pull_request: | |
types: | |
- opened | |
- ready_for_review | |
- reopened | |
- synchronize | |
concurrency: development_environment | |
jobs: | |
setup: | |
name: Setup | |
if: github.event.pull_request.draft == false | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout code | |
uses: actions/[email protected] | |
- name: Set Node version | |
uses: actions/[email protected] | |
with: | |
node-version-file: .nvmrc | |
cache: yarn | |
- name: Generate packages cache key | |
run: ./scripts/checksum.sh ./packages.txt packages | |
- name: Restore Node modules | |
id: node-modules | |
uses: actions/[email protected] | |
with: | |
path: | | |
./node_modules | |
./applications/*/*/node_modules | |
./packages/*/node_modules | |
key: ${{ runner.os }}-modules-v4-${{ hashFiles('**/yarn.lock') }} | |
restore-keys: | | |
${{ runner.os }}-modules- | |
- name: Restore packages | |
id: packages | |
uses: actions/[email protected] | |
with: | |
path: ./packages/*/lib | |
key: ${{ runner.os }}-packages-v4-${{ hashFiles('**/packages.txt') }} | |
restore-keys: | | |
${{ runner.os }}-packages- | |
- name: Restore cache | |
id: cache | |
uses: actions/[email protected] | |
with: | |
path: ~/.cache/Cypress | |
key: ${{ runner.os }}-cache-v4-${{ hashFiles('**/yarn.lock') }} | |
restore-keys: | | |
${{ runner.os }}-cache- | |
- name: Install dependencies | |
if: steps.node-modules.outputs.cache-hit != 'true' || steps.cache.outputs.cache-hit != 'true' | |
run: yarn | |
- name: Build packages | |
if: steps.packages.outputs.cache-hit != 'true' || steps.node-modules.outputs.cache-hit != 'true' | |
run: yarn package | |
# Auth0 tenant | |
auth0-tenant: | |
name: Deploy Auth0 tenant | |
runs-on: ubuntu-latest | |
needs: setup | |
env: | |
AUTH0_ALLOW_DELETE: true | |
AUTH0_CLIENT_ID: ${{ secrets.AUTH0_CLIENT_ID_DEV }} | |
AUTH0_CLIENT_SECRET: ${{ secrets.AUTH0_CLIENT_SECRET_DEV }} | |
AUTH0_DOMAIN: ${{ secrets.AUTH0_DOMAIN_DEV }} | |
AUTH0_SES_ACCESS_KEY_ID: ${{ secrets.AUTH0_SES_ACCESS_KEY_ID }} | |
AUTH0_SES_ACCESS_SECRET_KEY: ${{ secrets.AUTH0_SES_ACCESS_SECRET_KEY }} | |
AUTH0_SES_REGION: ${{ secrets.AUTH0_SES_REGION }} | |
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} | |
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} | |
PREFIX: id-develop | |
PROD_DOMAIN: ${{ secrets.PROD_DOMAIN }} | |
PUBLIC_URL: https://id-develop.${{ secrets.PROD_DOMAIN }} | |
REACT_APP_GA: ${{ secrets.GA_ID_DEV }} | |
STAGE: develop | |
YARN_ENABLE_IMMUTABLE_INSTALLS: false | |
steps: | |
- name: Checkout code | |
uses: actions/[email protected] | |
- name: Set Node version | |
uses: actions/[email protected] | |
with: | |
node-version-file: .nvmrc | |
cache: yarn | |
- name: Generate packages cache key | |
run: ./scripts/checksum.sh ./packages.txt packages | |
- name: Restore Node modules | |
uses: actions/[email protected] | |
with: | |
path: | | |
./node_modules | |
./applications/*/*/node_modules | |
./packages/*/node_modules | |
key: ${{ runner.os }}-modules-v4-${{ hashFiles('**/yarn.lock') }} | |
restore-keys: | | |
${{ runner.os }}-modules- | |
- name: Restore packages | |
uses: actions/[email protected] | |
with: | |
path: ./packages/*/lib | |
key: ${{ runner.os }}-packages-v4-${{ hashFiles('**/packages.txt') }} | |
restore-keys: | | |
${{ runner.os }}-packages- | |
- name: Restore application cache | |
uses: actions/[email protected] | |
with: | |
path: | | |
./applications/id/client/node_modules/.cache | |
./applications/id/client/.serverless | |
./applications/id/infrastructure/.serverless | |
key: ${{ runner.os }}-id-v4-${{ github.sha }} | |
restore-keys: | | |
${{ runner.os }}-id-v4- | |
- name: Deploy ID infrastructure | |
run: yarn workspace @id/infrastructure deploy --stage $STAGE | |
- name: Build ID client | |
run: yarn workspace @id/client build | |
- name: Build ID emails | |
run: yarn workspace @id/emails build | |
- name: Deploy client | |
run: yarn workspace @id/client deploy --stage $STAGE | |
- name: Deploy to Auth0 | |
run: yarn workspace @id/tenant deploy -c config.json | |
# Anti virus | |
anti-virus: | |
name: Deploy anti virus | |
runs-on: ubuntu-latest | |
needs: setup | |
env: | |
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} | |
AWS_DEFAULT_REGION: eu-west-1 | |
SENTRY_DSN: ${{ secrets.SENTRY_DSN_CORE_BACKEND }} | |
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} | |
STAGE: ${{ github.event.pull_request.number }} | |
YARN_ENABLE_IMMUTABLE_INSTALLS: false | |
steps: | |
- name: Checkout code | |
uses: actions/[email protected] | |
- name: Set Node version | |
uses: actions/[email protected] | |
with: | |
node-version-file: .nvmrc | |
cache: yarn | |
- name: Generate packages cache key | |
run: ./scripts/checksum.sh ./packages.txt packages | |
- name: Restore Node modules | |
uses: actions/[email protected] | |
with: | |
path: | | |
./node_modules | |
./applications/*/*/node_modules | |
./packages/*/node_modules | |
key: ${{ runner.os }}-modules-v4-${{ hashFiles('**/yarn.lock') }} | |
restore-keys: | | |
${{ runner.os }}-modules- | |
- name: Restore packages | |
uses: actions/[email protected] | |
with: | |
path: ./packages/*/lib | |
key: ${{ runner.os }}-packages-v4-${{ hashFiles('**/packages.txt') }} | |
restore-keys: | | |
${{ runner.os }}-packages- | |
- name: Restore application cache | |
uses: actions/[email protected] | |
with: | |
path: | | |
./applications/core/anti-virus/node_modules/.cache | |
./applications/core/anti-virus/.serverless | |
key: ${{ runner.os }}-core-anti-virus-v4-${{ github.sha }} | |
restore-keys: | | |
${{ runner.os }}-core-anti-virus-v4- | |
- name: Deploy | |
uses: nick-fields/[email protected] | |
with: | |
command: yarn workspace @core/anti-virus deploy --stage $STAGE | |
max_attempts: 3 | |
on_retry_command: yarn workspace @core/anti-virus clean | |
retry_on: error | |
timeout_minutes: 15 | |
- name: Check for definitions | |
id: definitions | |
continue-on-error: true | |
run: aws s3api head-object --bucket anti-virus-${{ github.event.pull_request.number }}-definitions --key daily.cvd | |
- name: Update definitions | |
if: steps.definitions.outcome != 'success' | |
run: yarn workspace @core/anti-virus update-definitions --stage $STAGE | |
# Cypress (API) | |
cypress-api: | |
name: Deploy Cypress API | |
runs-on: ubuntu-latest | |
needs: setup | |
env: | |
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} | |
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} | |
CY_API_KEY: ${{ secrets.CY_API_KEY }} | |
CY_API_GITHUB_PRIVATE_KEY: ${{ secrets.CY_API_GITHUB_PRIVATE_KEY }} | |
CY_API_GITHUB_APP_ID: ${{ secrets.CY_API_GITHUB_APP_ID }} | |
CY_API_GITHUB_CLIENT_ID: ${{ secrets.CY_API_GITHUB_CLIENT_ID }} | |
CY_API_GITHUB_INSTALLATION_ID: ${{ secrets.CY_API_GITHUB_INSTALLATION_ID }} | |
STAGE: develop | |
YARN_ENABLE_IMMUTABLE_INSTALLS: false | |
steps: | |
- name: Checkout code | |
uses: actions/[email protected] | |
- name: Set Node version | |
uses: actions/[email protected] | |
with: | |
node-version-file: .nvmrc | |
cache: yarn | |
- name: Restore Node modules | |
uses: actions/[email protected] | |
with: | |
path: | | |
./node_modules | |
./applications/*/*/node_modules | |
./packages/*/node_modules | |
key: ${{ runner.os }}-modules-v4-${{ hashFiles('**/yarn.lock') }} | |
restore-keys: | | |
${{ runner.os }}-modules- | |
- name: Restore packages | |
uses: actions/[email protected] | |
with: | |
path: ./packages/*/lib | |
key: ${{ runner.os }}-packages-v4-${{ hashFiles('**/packages.txt') }} | |
restore-keys: | | |
${{ runner.os }}-packages- | |
- name: Restore application cache | |
uses: actions/[email protected] | |
with: | |
path: | | |
./applications/cypress/api/node_modules/.cache | |
./applications/cypress/api/.serverless | |
key: ${{ runner.os }}-cypress-api-v4-${{ github.sha }} | |
restore-keys: | | |
${{ runner.os }}-cypress-api-v4- | |
- name: Deploy | |
run: yarn workspace @cypress/api deploy --stage $STAGE | |
# Accounts (queue) | |
accounts-queue: | |
name: Deploy accounts queue | |
runs-on: ubuntu-latest | |
needs: | |
- setup | |
- accounts-data | |
env: | |
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} | |
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} | |
SENTRY_DSN: ${{ secrets.SENTRY_DSN_ACCOUNTS_BACKEND }} | |
STAGE: ${{ github.event.pull_request.number }} | |
YARN_ENABLE_IMMUTABLE_INSTALLS: false | |
steps: | |
- name: Checkout code | |
uses: actions/[email protected] | |
- name: Set Node version | |
uses: actions/[email protected] | |
with: | |
node-version-file: .nvmrc | |
cache: yarn | |
- name: Generate packages cache key | |
run: ./scripts/checksum.sh ./packages.txt packages | |
- name: Restore Node modules | |
uses: actions/[email protected] | |
with: | |
path: | | |
./node_modules | |
./applications/*/*/node_modules | |
./packages/*/node_modules | |
key: ${{ runner.os }}-modules-v4-${{ hashFiles('**/yarn.lock') }} | |
restore-keys: | | |
${{ runner.os }}-modules- | |
- name: Restore packages | |
uses: actions/[email protected] | |
with: | |
path: ./packages/*/lib | |
key: ${{ runner.os }}-packages-v4-${{ hashFiles('**/packages.txt') }} | |
restore-keys: | | |
${{ runner.os }}-packages- | |
- name: Restore application cache | |
uses: actions/[email protected] | |
with: | |
path: | | |
./applications/accounts/queue/node_modules/.cache | |
./applications/accounts/queue/.serverless | |
key: ${{ runner.os }}-accounts-queue-v4-${{ github.sha }} | |
restore-keys: | | |
${{ runner.os }}-accounts-queue-v4- | |
- name: Deploy | |
run: yarn workspace @accounts/queue deploy --stage $STAGE | |
# Accounts (storage) | |
accounts-storage: | |
name: Deploy accounts storage | |
runs-on: ubuntu-latest | |
needs: | |
- setup | |
- anti-virus | |
env: | |
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} | |
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} | |
SENTRY_DSN: ${{ secrets.SENTRY_DSN_ACCOUNTS_BACKEND }} | |
STAGE: ${{ github.event.pull_request.number }} | |
YARN_ENABLE_IMMUTABLE_INSTALLS: false | |
steps: | |
- name: Checkout code | |
uses: actions/[email protected] | |
- name: Set Node version | |
uses: actions/[email protected] | |
with: | |
node-version-file: .nvmrc | |
cache: yarn | |
- name: Generate packages cache key | |
run: ./scripts/checksum.sh ./packages.txt packages | |
- name: Restore Node modules | |
uses: actions/[email protected] | |
with: | |
path: | | |
./node_modules | |
./applications/*/*/node_modules | |
./packages/*/node_modules | |
key: ${{ runner.os }}-modules-v4-${{ hashFiles('**/yarn.lock') }} | |
restore-keys: | | |
${{ runner.os }}-modules- | |
- name: Restore packages | |
uses: actions/[email protected] | |
with: | |
path: ./packages/*/lib | |
key: ${{ runner.os }}-packages-v4-${{ hashFiles('**/packages.txt') }} | |
restore-keys: | | |
${{ runner.os }}-packages- | |
- name: Restore application cache | |
uses: actions/[email protected] | |
with: | |
path: | | |
./applications/accounts/storage/node_modules/.cache | |
./applications/accounts/storage/.serverless | |
key: ${{ runner.os }}-accounts-storage-v4-${{ github.sha }} | |
restore-keys: | | |
${{ runner.os }}-accounts-storage-v4- | |
- name: Deploy | |
run: yarn workspace @accounts/storage deploy --stage $STAGE | |
# Accounts (data) | |
accounts-data: | |
name: Deploy accounts data | |
runs-on: ubuntu-latest | |
needs: | |
- setup | |
- accounts-storage | |
env: | |
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} | |
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} | |
SENTRY_DSN: ${{ secrets.SENTRY_DSN_ACCOUNTS_BACKEND }} | |
STAGE: ${{ github.event.pull_request.number }} | |
YARN_ENABLE_IMMUTABLE_INSTALLS: false | |
steps: | |
- name: Checkout code | |
uses: actions/[email protected] | |
- name: Set Node version | |
uses: actions/[email protected] | |
with: | |
node-version-file: .nvmrc | |
cache: yarn | |
- name: Generate packages cache key | |
run: ./scripts/checksum.sh ./packages.txt packages | |
- name: Restore Node modules | |
uses: actions/[email protected] | |
with: | |
path: | | |
./node_modules | |
./applications/*/*/node_modules | |
./packages/*/node_modules | |
key: ${{ runner.os }}-modules-v4-${{ hashFiles('**/yarn.lock') }} | |
restore-keys: | | |
${{ runner.os }}-modules- | |
- name: Restore packages | |
uses: actions/[email protected] | |
with: | |
path: ./packages/*/lib | |
key: ${{ runner.os }}-packages-v4-${{ hashFiles('**/packages.txt') }} | |
restore-keys: | | |
${{ runner.os }}-packages- | |
- name: Restore application cache | |
uses: actions/[email protected] | |
with: | |
path: | | |
./applications/accounts/data/node_modules/.cache | |
./applications/accounts/data/.serverless | |
key: ${{ runner.os }}-accounts-data-v4-${{ github.sha }} | |
restore-keys: | | |
${{ runner.os }}-accounts-data-v4- | |
- name: Deploy | |
run: yarn workspace @accounts/data deploy --stage $STAGE | |
# Accounts (warm up) | |
accounts-warm-up: | |
name: Deploy accounts warm up | |
runs-on: ubuntu-latest | |
needs: | |
- setup | |
- accounts-data | |
env: | |
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} | |
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} | |
SENTRY_DSN: ${{ secrets.SENTRY_DSN_ACCOUNTS_BACKEND }} | |
STAGE: ${{ github.event.pull_request.number }} | |
YARN_ENABLE_IMMUTABLE_INSTALLS: false | |
steps: | |
- name: Checkout code | |
uses: actions/[email protected] | |
- name: Set Node version | |
uses: actions/[email protected] | |
with: | |
node-version-file: .nvmrc | |
cache: yarn | |
- name: Generate packages cache key | |
run: ./scripts/checksum.sh ./packages.txt packages | |
- name: Restore Node modules | |
uses: actions/[email protected] | |
with: | |
path: | | |
./node_modules | |
./applications/*/*/node_modules | |
./packages/*/node_modules | |
key: ${{ runner.os }}-modules-v4-${{ hashFiles('**/yarn.lock') }} | |
restore-keys: | | |
${{ runner.os }}-modules- | |
- name: Restore packages | |
uses: actions/[email protected] | |
with: | |
path: ./packages/*/lib | |
key: ${{ runner.os }}-packages-v4-${{ hashFiles('**/packages.txt') }} | |
restore-keys: | | |
${{ runner.os }}-packages- | |
- name: Restore application cache | |
uses: actions/[email protected] | |
with: | |
path: | | |
./applications/accounts/warm-up/node_modules/.cache | |
./applications/accounts/warm-up/.serverless | |
key: ${{ runner.os }}-accounts-warm-up-v4-${{ github.sha }} | |
restore-keys: | | |
${{ runner.os }}-accounts-warm-up-v4- | |
- name: Deploy | |
run: yarn workspace @accounts/warm-up deploy --stage $STAGE | |
- name: Warm up | |
if: github.event.action != 'synchronize' | |
run: yarn workspace @accounts/warm-up start --stage $STAGE | |
# Accounts (notifications) | |
accounts-notifications: | |
name: Deploy accounts notifications | |
runs-on: ubuntu-latest | |
needs: | |
- setup | |
- accounts-data | |
env: | |
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} | |
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} | |
STAGE: ${{ github.event.pull_request.number }} | |
YARN_ENABLE_IMMUTABLE_INSTALLS: false | |
steps: | |
- name: Checkout code | |
uses: actions/[email protected] | |
- name: Set Node version | |
uses: actions/[email protected] | |
with: | |
node-version-file: .nvmrc | |
cache: yarn | |
- name: Generate packages cache key | |
run: ./scripts/checksum.sh ./packages.txt packages | |
- name: Restore Node modules | |
uses: actions/[email protected] | |
with: | |
path: | | |
./node_modules | |
./applications/*/*/node_modules | |
./packages/*/node_modules | |
key: ${{ runner.os }}-modules-v4-${{ hashFiles('**/yarn.lock') }} | |
restore-keys: | | |
${{ runner.os }}-modules- | |
- name: Restore packages | |
uses: actions/[email protected] | |
with: | |
path: ./packages/*/lib | |
key: ${{ runner.os }}-packages-v4-${{ hashFiles('**/packages.txt') }} | |
restore-keys: | | |
${{ runner.os }}-packages- | |
- name: Restore application cache | |
uses: actions/[email protected] | |
with: | |
path: | | |
./applications/accounts/notifications/node_modules/.cache | |
./applications/accounts/notifications/.serverless | |
key: ${{ runner.os }}-accounts-notifications-v4-${{ github.sha }} | |
restore-keys: | | |
${{ runner.os }}-accounts-notifications-v4- | |
- name: Deploy | |
run: yarn workspace @accounts/notifications deploy --stage $STAGE | |
# Accounts (reports) | |
accounts-reports: | |
name: Deploy accounts reports | |
runs-on: ubuntu-latest | |
needs: | |
- setup | |
- accounts-data | |
- accounts-notifications | |
- accounts-storage | |
env: | |
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} | |
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} | |
SENTRY_DSN: ${{ secrets.SENTRY_DSN_ACCOUNTS_BACKEND }} | |
STAGE: ${{ github.event.pull_request.number }} | |
YARN_ENABLE_IMMUTABLE_INSTALLS: false | |
steps: | |
- name: Checkout code | |
uses: actions/[email protected] | |
- name: Set Node version | |
uses: actions/[email protected] | |
with: | |
node-version-file: .nvmrc | |
cache: yarn | |
- name: Generate packages cache key | |
run: ./scripts/checksum.sh ./packages.txt packages | |
- name: Restore Node modules | |
uses: actions/[email protected] | |
with: | |
path: | | |
./node_modules | |
./applications/*/*/node_modules | |
./packages/*/node_modules | |
key: ${{ runner.os }}-modules-v4-${{ hashFiles('**/yarn.lock') }} | |
restore-keys: | | |
${{ runner.os }}-modules- | |
- name: Restore packages | |
uses: actions/[email protected] | |
with: | |
path: ./packages/*/lib | |
key: ${{ runner.os }}-packages-v4-${{ hashFiles('**/packages.txt') }} | |
restore-keys: | | |
${{ runner.os }}-packages- | |
- name: Restore application cache | |
uses: actions/[email protected] | |
with: | |
path: | | |
./applications/accounts/reports/node_modules/.cache | |
./applications/accounts/reports/.serverless | |
key: ${{ runner.os }}-accounts-reports-v4-${{ github.sha }} | |
restore-keys: | | |
${{ runner.os }}-accounts-reports-v4- | |
- name: Deploy | |
run: yarn workspace @accounts/reports deploy --stage $STAGE | |
# Accounts (API) | |
accounts-api: | |
name: Deploy accounts API | |
runs-on: ubuntu-latest | |
needs: | |
- setup | |
- accounts-data | |
- accounts-queue | |
- accounts-reports | |
- accounts-storage | |
- auth0-tenant | |
env: | |
AUTH0_DOMAIN: ${{ secrets.AUTH0_DOMAIN_DEV }} | |
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} | |
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
SENTRY_DSN: ${{ secrets.SENTRY_DSN_ACCOUNTS_BACKEND }} | |
STAGE: ${{ github.event.pull_request.number }} | |
YARN_ENABLE_IMMUTABLE_INSTALLS: false | |
steps: | |
- name: Checkout code | |
uses: actions/[email protected] | |
- name: Set Node version | |
uses: actions/[email protected] | |
with: | |
node-version-file: .nvmrc | |
cache: yarn | |
- name: Generate packages cache key | |
run: ./scripts/checksum.sh ./packages.txt packages | |
- name: Restore Node modules | |
uses: actions/[email protected] | |
with: | |
path: | | |
./node_modules | |
./applications/*/*/node_modules | |
./packages/*/node_modules | |
key: ${{ runner.os }}-modules-v4-${{ hashFiles('**/yarn.lock') }} | |
restore-keys: | | |
${{ runner.os }}-modules- | |
- name: Restore packages | |
uses: actions/[email protected] | |
with: | |
path: ./packages/*/lib | |
key: ${{ runner.os }}-packages-v4-${{ hashFiles('**/packages.txt') }} | |
restore-keys: | | |
${{ runner.os }}-packages- | |
- name: Restore env vars | |
uses: actions/[email protected] | |
with: | |
path: ./applications/accounts/client/.env.production | |
key: ${{ runner.os }}-accounts-client-env-vars-checks-v4-${{ github.run_id }} | |
restore-keys: | | |
${{ runner.os }}-accounts-client-env-vars-checks- | |
- name: Restore application cache | |
uses: actions/[email protected] | |
with: | |
path: | | |
./applications/accounts/api/node_modules/.cache | |
./applications/accounts/api/.serverless | |
key: ${{ runner.os }}-accounts-api-v4-${{ github.sha }} | |
restore-keys: | | |
${{ runner.os }}-accounts-api-v4- | |
- name: Deploy | |
run: yarn workspace @accounts/api deploy --stage $STAGE | |
- name: Export env vars | |
uses: xom9ikk/[email protected] | |
with: | |
path: ./applications/accounts/client | |
mode: production | |
- name: Publish URL | |
uses: mshick/[email protected] | |
with: | |
message-id: config | |
message: | | |
Add these params to your `.env.local` file | |
``` | |
REACT_APP_APPSYNC_URL="${{ env.REACT_APP_APPSYNC_URL }}" | |
REACT_APP_AWS_REGION="${{ env.REACT_APP_AWS_REGION }}" | |
``` | |
# Accounts (client) | |
accounts-client: | |
name: Test accounts client | |
runs-on: ubuntu-latest | |
needs: | |
- setup | |
- auth0-tenant | |
- accounts-api | |
- accounts-warm-up | |
- cypress-api | |
strategy: | |
fail-fast: false | |
matrix: | |
containers: | |
- 1 | |
- 2 | |
env: | |
CURRENTS_API_URL: ${{ secrets.CYPRESS_API_URL }} | |
CURRENTS_RECORD_KEY: ${{ secrets.CYPRESS_RECORD_KEY }} | |
CYPRESS_AUDIENCE: ${{ secrets.ACCOUNTS_APP_AUDIENCE }} | |
CYPRESS_AUTH_URL: ${{ secrets.CYPRESS_AUTH_URL_DEV }} | |
CYPRESS_CLIENT_ID: ${{ secrets.ACCOUNTS_APP_CLIENT_ID_DEV }} | |
CYPRESS_PASSWORD: ${{ secrets.CYPRESS_PASSWORD }} | |
CYPRESS_USERNAME: ${{ secrets.CYPRESS_USERNAME }} | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
REACT_APP_AUTH0_AUDIENCE: ${{ secrets.ACCOUNTS_APP_AUDIENCE }} | |
REACT_APP_AUTH0_CLIENT_ID: ${{ secrets.ACCOUNTS_APP_CLIENT_ID_DEV }} | |
REACT_APP_AUTH0_DOMAIN: ${{ secrets.AUTH0_DOMAIN_DEV }} | |
REACT_APP_GA: ${{ secrets.GA_ACCOUNTS_DEV }} | |
REACT_APP_SENTRY_DSN: ${{ secrets.SENTRY_DSN_ACCOUNTS_CLIENT }} | |
SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }} | |
steps: | |
- name: Checkout code | |
uses: actions/[email protected] | |
- name: Set Node version | |
uses: actions/[email protected] | |
with: | |
node-version-file: .nvmrc | |
cache: yarn | |
- name: Generate packages cache key | |
run: ./scripts/checksum.sh ./packages.txt packages | |
- name: Restore Node modules | |
uses: actions/[email protected] | |
with: | |
path: | | |
./node_modules | |
./applications/*/*/node_modules | |
./packages/*/node_modules | |
key: ${{ runner.os }}-modules-v4-${{ hashFiles('**/yarn.lock') }} | |
restore-keys: | | |
${{ runner.os }}-modules- | |
- name: Restore packages | |
uses: actions/[email protected] | |
with: | |
path: ./packages/*/lib | |
key: ${{ runner.os }}-packages-v4-${{ hashFiles('**/packages.txt') }} | |
restore-keys: | | |
${{ runner.os }}-packages- | |
- name: Restore cache | |
uses: actions/[email protected] | |
with: | |
path: ~/.cache/Cypress | |
key: ${{ runner.os }}-cache-v4-${{ hashFiles('**/yarn.lock') }} | |
restore-keys: | | |
${{ runner.os }}-cache- | |
- name: Restore env vars | |
uses: actions/[email protected] | |
with: | |
path: ./applications/accounts/client/.env.production | |
key: ${{ runner.os }}-accounts-client-env-vars-checks-v4-${{ github.run_id }} | |
restore-keys: | | |
${{ runner.os }}-accounts-client-env-vars-checks- | |
- name: Restore application cache | |
uses: actions/[email protected] | |
with: | |
path: | | |
./applications/accounts/client/node_modules/.cache | |
./applications/accounts/client/.serverless | |
key: ${{ runner.os }}-accounts-client-v4-${{ github.sha }} | |
restore-keys: | | |
${{ runner.os }}-accounts-client-v4- | |
- name: Build client | |
run: yarn workspace @accounts/client build | |
- name: Smoke tests | |
uses: cypress-io/[email protected] | |
with: | |
command: yarn workspace @accounts/client e2e-ci | |
install: false | |
start: yarn workspace @accounts/client serve | |
wait-on: http://localhost:3000 |