Update playwright version #209
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: 2wr-app CI/CD | |
permissions: | |
id-token: write | |
on: | |
push: | |
paths: | |
- '2wr-app/**' | |
- '.github/workflows/2wr-app.yaml' | |
branches: [ main ] | |
pull_request: | |
paths: | |
- '2wr-app/**' | |
- '.github/workflows/2wr-app.yaml' | |
branches: [ main ] | |
workflow_dispatch: | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
node-version: [16.x] | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Use Node.js ${{ matrix.node-version }} | |
uses: actions/setup-node@v1 | |
with: | |
node-version: ${{ matrix.node-version }} | |
- run: npm ci | |
working-directory: ./2wr-app | |
- run: npx playwright install chromium --with-deps | |
working-directory: ./2wr-app | |
- name: Write sample env file for e2e tests | |
run: 'cp ./2wr-app/.env-sample ./2wr-app/.env' | |
- run: npm run e2etest | |
env: | |
TWO_WEEKS_READY_E2E_TEST_USERNAME: ${{ secrets.TWO_WEEKS_READY_E2E_TEST_USERNAME }} | |
TWO_WEEKS_READY_E2E_TEST_PASSWORD: ${{ secrets.TWO_WEEKS_READY_E2E_TEST_PASSWORD }} | |
working-directory: ./2wr-app | |
- name: Upload e2e Test Results Recordings and Screenshots | |
uses: actions/upload-artifact@v2 | |
if: failure() | |
with: | |
name: e2e-test-results | |
path: ./2wr-app/test-results | |
- name: Upload e2e Test Results Report | |
uses: actions/upload-artifact@v2 | |
if: ${{ always() }} | |
with: | |
name: e2e-test-report | |
path: ./2wr-app/playwright-report | |
- name: Clear sample env file from e2e tests | |
run: 'rm ./2wr-app/.env' | |
- name: Write env file | |
run: 'echo "$DEV_ENV" > ./2wr-app/.env' | |
shell: bash | |
env: | |
DEV_ENV: ${{secrets.DEV_ENV}} | |
- run: npm run build | |
working-directory: ./2wr-app | |
deploy_to_dev: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
node-version: [16.x] | |
needs: build | |
if: github.event_name != 'pull_request' | |
environment: development | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Use Node.js ${{ matrix.node-version }} | |
uses: actions/setup-node@v1 | |
with: | |
node-version: ${{ matrix.node-version }} | |
- run: npm ci | |
working-directory: ./2wr-app | |
- name: Write env file | |
run: 'echo "$DEV_ENV" > ./2wr-app/.env' | |
shell: bash | |
env: | |
DEV_ENV: ${{secrets.DEV_ENV}} | |
- run: npm run build | |
working-directory: ./2wr-app | |
- name: Azure Login | |
uses: azure/login@v1 | |
with: | |
client-id: ${{ secrets.AZURE_CLIENT_ID }} | |
tenant-id: ${{ secrets.AZURE_TENANT_ID }} | |
subscription-id: ${{ secrets.AZURE_SUBSCRIPTION_ID }} | |
- name: Azure Deploy Resources | |
uses: Azure/[email protected] | |
with: | |
inlineScript: | | |
chmod +x $GITHUB_WORKSPACE/az/deploy-frontend.sh | |
$GITHUB_WORKSPACE/az/deploy-frontend.sh -s $GITHUB_WORKSPACE/2wr-app/dist/ | |
deploy_to_beta: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
node-version: [16.x] | |
needs: deploy_to_dev | |
if: github.event_name != 'pull_request' | |
environment: beta | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Use Node.js ${{ matrix.node-version }} | |
uses: actions/setup-node@v1 | |
with: | |
node-version: ${{ matrix.node-version }} | |
- run: npm ci | |
working-directory: ./2wr-app | |
- name: Write env file | |
run: 'echo "$ENV" > ./2wr-app/.env' | |
shell: bash | |
env: | |
ENV: ${{secrets.ENV}} | |
- run: npm run build | |
working-directory: ./2wr-app | |
- name: Azure Login | |
uses: azure/login@v1 | |
with: | |
client-id: ${{ secrets.AZURE_CLIENT_ID }} | |
tenant-id: ${{ secrets.AZURE_TENANT_ID }} | |
subscription-id: ${{ secrets.AZURE_SUBSCRIPTION_ID }} | |
- name: Azure Deploy Resources | |
uses: Azure/[email protected] | |
with: | |
inlineScript: | | |
chmod +x $GITHUB_WORKSPACE/az/deploy-frontend.sh | |
$GITHUB_WORKSPACE/az/deploy-frontend.sh -s $GITHUB_WORKSPACE/2wr-app/dist/ -r 2wr-beta-resources -e 2wrbeta |