Skip to content

feat: save language selection as cookie #6042

feat: save language selection as cookie

feat: save language selection as cookie #6042

Workflow file for this run

name: Integration
on:
workflow_dispatch:
push:
branches:
- master
- develop
pull_request:
types: [opened, synchronize]
paths-ignore:
- '**.md'
- 'docs/**'
env:
NODE_VERSION: 18.16.0
NODE_OPTIONS: --max_old_space_size=8192
ICM_BASE_URL: http://pwa-review.northeurope.cloudapp.azure.com:8081
jobs:
CancelPrevious:
runs-on: ubuntu-latest
steps:
- name: Cancel Old Pipeline
if: "!startsWith(github.ref, 'refs/tags/') && github.ref != 'refs/heads/master' && github.ref != 'refs/heads/develop'"
uses: rokroskar/workflow-run-cleanup-action@master
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
Build:
needs: [CancelPrevious]
runs-on: ubuntu-latest
env:
TESTING: true
steps:
- uses: actions/checkout@v3
- name: Use Node.js 18
uses: actions/setup-node@v3
with:
node-version: ${{ env.NODE_VERSION }}
cache: npm
- name: Install root dependencies
run: npm ci
- name: Disable ServiceWorker
run: node schematics/customization/service-worker false
- name: Build SSR
run: npm run build:multi
- name: Upload Build Output
uses: actions/upload-artifact@v3
with:
name: dist
path: dist
Universal:
needs: [Build]
runs-on: ubuntu-latest
strategy:
matrix:
test: ['b2c', 'b2b']
steps:
- uses: actions/checkout@v3
- name: Use Node.js 18
uses: actions/setup-node@v3
with:
node-version: ${{ env.NODE_VERSION }}
cache: npm
- name: Download Build Output
uses: actions/download-artifact@v3
with:
name: dist
path: dist
- name: Set Environment
run: |
echo "LOGGING=true" >> $GITHUB_ENV
- name: Set B2C Environment
if: matrix.test == 'b2c'
run: |
echo "THEME=b2c" >> $GITHUB_ENV
- name: Set B2B Environment
if: matrix.test == 'b2b'
run: |
echo "THEME=b2b" >> $GITHUB_ENV
- name: Test Universal
run: |
node dist/$THEME/run-standalone &
sh e2e/test-universal.sh
Cypress:
needs: [Build, Universal]
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
test: ['b2c', 'b2b']
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Install e2e dependencies
run: cd e2e && npm i
- name: Download Build Output
uses: actions/download-artifact@v3
with:
name: dist
path: dist
- name: Set Environment
run: |
echo "PWA_BASE_URL=http://localhost:4200" >> $GITHUB_ENV
echo "LOGGING=true" >> $GITHUB_ENV
echo "BROWSER=chrome" >> $GITHUB_ENV
- name: Set B2C Environment
if: matrix.test == 'b2c'
run: |
echo "THEME=b2c" >> $GITHUB_ENV
- name: Set B2B Environment
if: matrix.test == 'b2b'
run: |
echo "THEME=b2b" >> $GITHUB_ENV
- name: Start SSR
run: |
node dist/$THEME/run-standalone &
- name: Cypress
uses: cypress-io/github-action@v4
with:
install: false
wait-on: 'http://localhost:4200'
wait-on-timeout: 180
working-directory: e2e
command: npx ts-node cypress-ci-e2e **/*${{ matrix.test }}*.e2e-spec.ts
- name: Upload Screenshots
uses: actions/upload-artifact@v3
if: failure()
with:
name: screenshots
path: e2e/cypress/screenshots
- name: Upload Videos
uses: actions/upload-artifact@v3
if: failure()
with:
name: videos
path: e2e/cypress/videos
Shellspec:
needs: [CancelPrevious]
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Execute shellspec tests
run: |
docker run --rm -v "${{ github.workspace }}/nginx/docker-entrypoint.d:/src" shellspec/shellspec