Skip to content

Feat/jovu onboarding #6270

Feat/jovu onboarding

Feat/jovu onboarding #6270

Workflow file for this run

name: E2E
concurrency: ${{ github.ref }}-e2e
on:
workflow_dispatch:
inputs:
nx-base:
type: string
description: Commit SHA, branch or tag name used by Nx in the affected jobs.
required: true
default: next
nx-skip-cache:
type: boolean
description: Rerun the tasks even when the results are available in the cache.
default: false
nx-force-all:
type: boolean
description: Forces Nx to consider all projects (apps and libs) as affected.
default: false
pull_request:
types: [opened, reopened, synchronize]
paths-ignore:
- "**/*.md"
- ".all-contributorsrc"
push:
branches:
- master
- next
paths-ignore:
- "**/*.md"
- ".all-contributorsrc"
env:
NX_CLOUD_ACCESS_TOKEN: ${{ secrets.NX_CLOUD_ACCESS_TOKEN }}
NX_BRANCH: ${{ github.head_ref || github.ref_name }}
NX_FORCE_ALL: ${{ fromJSON('["", "--all"]')[ inputs.nx-force-all ] }} # This relies on type coercion, an implicit cast from boolean true to 1 or false to 0, which is then used as array index.
NX_SKIP_NX_CACHE: ${{ inputs.nx-skip-cache || false }}
BASE: ${{ github.base_ref || inputs.nx-base || github.event.repository.default_branch }}
jobs:
nx:
uses: ./.github/workflows/nx.template.yml
with:
nx-head: ${{ github.head_ref && format('refs/pull/{0}/merge', github.event.number) || github.ref_name }}
nx-base: ${{ github.base_ref || inputs.nx-base || github.event.repository.default_branch }}
nx-skip-cache: ${{ inputs.nx-skip-cache || false }} # This relies on type coercion, an implicit cast from boolean true to 1 or false to 0, which is then used as array index.
nx-force-all: ${{ inputs.nx-force-all || false }}
e2e:
runs-on: ubuntu-latest
needs: nx
if: ${{ needs.nx.outputs.affected-e2e != '[]' && needs.nx.outputs.affected-e2e != ''}}
strategy:
fail-fast: false
matrix:
project: ${{ fromJson(needs.nx.outputs.affected-e2e) }}
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 1
- uses: actions/setup-node@v4
with:
node-version-file: "package.json"
cache: "npm"
cache-dependency-path: "**/package-lock.json"
- name: Cache global node modules
id: cache-node-modules
uses: actions/cache@v4
env:
cache-name: cache-node-modules
with:
path: node_modules
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('package-lock.json') }}
- name: Install Dependencies
if: ${{ steps.cache-node-modules.outputs.cache-hit != 'true' }}
run: npm ci
- name: e2e
if: github.event_name == 'push' || ( github.event_name == 'pull_request' && github.head_ref != 'next' )
run: npx nx e2e ${{ matrix.project }} --prod