Skip to content

feat: order recurrence (subscription support) #7061

feat: order recurrence (subscription support)

feat: order recurrence (subscription support) #7061

Workflow file for this run

name: Development
on:
workflow_dispatch:
push:
branches:
- master
- develop
pull_request:
types: [opened, synchronize]
paths-ignore:
- '**.md'
- 'docs/**'
env:
NODE_VERSION: 18.16.0
ICM_BASE_URL: https://develop.icm.intershop.de
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 }}
Quality:
needs: [CancelPrevious]
runs-on: ubuntu-latest
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
# disable CI mode so lazy components are linted
env:
CI: false
- name: Install e2e dependencies
run: cd e2e && npm i
- name: Code Formatting
run: npm exec npm-run-all format check-no-changes
- name: .dockerignore Sync
run: npm exec npm-run-all update-dockerignore check-no-changes
- name: Clean Localizations
run: npm exec npm-run-all clean-localizations check-no-changes
- name: Compile Angular
run: npm run build client
env:
NODE_OPTIONS: --max_old_space_size=8192
- name: Compile Unit Tests
run: npm run compile
- name: Compile Cypress Tests
run: cd e2e && npm run build
- name: Run Escalated ESLint Rules
run: npm run lint-hard
- name: Check File Synchronization Status
run: npm run check-file-synchronization
Jest:
needs: [CancelPrevious]
runs-on: ubuntu-latest
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: PWA Jest
run: npm test
- name: eslint-rules Jest
run: npm run test:eslint-rules
- name: schematics Jest
run: npm run test:schematics
env:
CI: false
DeadCode:
needs: [Quality, Jest]
runs-on: ubuntu-latest
if: "!startsWith(github.ref, 'refs/tags/') && github.ref != 'refs/heads/master' && github.ref != 'refs/heads/develop'"
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0
- 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: Find Dead Code
run: npm run dead-code
- name: Find Unused TestBed declarations
run: npm exec npm-run-all "cleanup-testbed --related origin/develop" check-no-changes
Schematics:
needs: [Quality, Jest]
runs-on: ubuntu-latest
env:
CI: false
strategy:
fail-fast: false
matrix:
test: ['normal', 'customization']
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: Test Schematics
run: |
bash e2e/test-schematics-${{ matrix.test }}.sh
npm run lint-hard
ProductionPWA:
needs: [Quality, Jest]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Production Build PWA Image
run: docker compose build pwa
Nginx:
needs: [Quality, Jest]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Build Nginx Image
run: docker compose build nginx