ci: upgrade to new actions #760
Workflow file for this run
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: E2E | |
on: [pull_request] | |
env: | |
CACHE_DIST_KEY: dist-${{ github.head_ref }}-${{ github.ref }}-${{ github.sha }} | |
CYPRESS_CACHE_FOLDER: ./node_modules/cache-cypress | |
UNIVERSAL_SERVER: http://localhost:4000 | |
STATIC_SERVER: http://localhost:8080 | |
jobs: | |
build-demo: | |
if: ${{ !contains(github.head_ref, 'release/') }} | |
name: Build demo | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/[email protected] | |
with: | |
fetch-depth: 10 | |
- uses: taiga-family/ci/actions/setup/[email protected] | |
- name: Mark demo-app directory for persist in cache | |
uses: actions/cache@v3 | |
with: | |
path: dist/demo | |
key: ${{ env.CACHE_DIST_KEY }} | |
- name: Build demo | |
# --optimization false to keep `window.ng` inside Cypress tests | |
run: npm run build -- --optimization false | |
- name: Build SSR server | |
run: npm run build:ssr | |
e2e-kit: | |
if: ${{ !contains(github.head_ref, 'release/') }} | |
needs: [build-demo] | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
project: [date, date-range, date-time, number, time] | |
name: Kit / ${{ matrix.project }} | |
steps: | |
- uses: actions/[email protected] | |
- uses: taiga-family/ci/actions/setup/[email protected] | |
- name: Download demo build from cache | |
uses: actions/cache@v3 | |
with: | |
path: dist/demo | |
key: ${{ env.CACHE_DIST_KEY }} | |
- name: Serving SSR server | |
run: | | |
npm run serve:ssr -- --ci & sleep 5 | |
curl -X GET -I -f "${{ env.UNIVERSAL_SERVER }}" | |
- name: Run Cypress tests | |
run: | |
npm run cy:run -- --spec "**/kit/${{ matrix.project }}/**/*.cy.ts" --config baseUrl="${{ env.UNIVERSAL_SERVER | |
}}" | |
e2e-recipes: | |
if: ${{ !contains(github.head_ref, 'release/') }} | |
needs: [build-demo] | |
runs-on: ubuntu-latest | |
name: Recipes | |
steps: | |
- uses: actions/[email protected] | |
- uses: taiga-family/ci/actions/setup/[email protected] | |
- name: Download demo build from cache | |
uses: actions/cache@v3 | |
with: | |
path: dist/demo | |
key: ${{ env.CACHE_DIST_KEY }} | |
- name: Serving SSR server | |
run: | | |
npm run serve:ssr -- --ci & sleep 5 | |
curl -X GET -I -f "${{ env.UNIVERSAL_SERVER }}" | |
- name: Run Cypress tests | |
run: npm run cy:run -- --spec "**/recipes/**/*.cy.ts" --config baseUrl="${{ env.UNIVERSAL_SERVER }}" | |
e2e-others: | |
if: ${{ !contains(github.head_ref, 'release/') }} | |
needs: [build-demo] | |
runs-on: ubuntu-latest | |
name: Others | |
steps: | |
- uses: actions/[email protected] | |
- uses: taiga-family/ci/actions/setup/[email protected] | |
- name: Download demo build from cache | |
uses: actions/cache@v3 | |
with: | |
path: dist/demo | |
key: ${{ env.CACHE_DIST_KEY }} | |
- name: Serving SSR server | |
run: | | |
npm run serve:ssr -- --ci & sleep 5 | |
curl -X GET -I -f "${{ env.UNIVERSAL_SERVER }}" | |
- name: Run Cypress tests | |
# Replace with npm run cy:run -- --spec "**/!(kit|recipes)/*.cy.ts" --config baseUrl="${{ env.UNIVERSAL_SERVER }}" | |
# After this issue fix: https://github.com/cypress-io/cypress/issues/22407 | |
run: | |
npm run cy:run -- --spec "**/(angular|react|ssr|addons|others)/**/*.cy.ts" --config baseUrl="${{ | |
env.UNIVERSAL_SERVER }}" | |
concurrency: | |
group: e2e-${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true |