Skip to content

fix: Eliminate dependencies on @nx/node in init generator #189

fix: Eliminate dependencies on @nx/node in init generator

fix: Eliminate dependencies on @nx/node in init generator #189

Workflow file for this run

# Build, Test, Lint & e2e pushes.
# TODO: use the .nvmrc for node versions
# https://github.com/actions/setup-node/issues/32
name: CI
on:
# support manual trigger of this workflow
workflow_dispatch:
# run this build action for all pushes to main
push:
branches: ['main']
# also run for pull requests that target main
pull_request:
branches:
- main
jobs:
setup:
runs-on: ubuntu-latest
env:
CI: true
strategy:
matrix:
node-version: [16,18]
steps:
# Setup steps
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- name: Cache node modules
id: cache-node-modules
uses: actions/cache@v3
with:
path: node_modules
key: ${{ runner.os }}-node-modules-${{ matrix.node-version }}-${{ hashFiles('**/package-lock.json') }}
- name: Install npm
if: steps.cache-node-modules.outputs.cache-hit != 'true'
run: npm ci
build:
needs: [setup]
runs-on: ubuntu-latest
env:
CI: true
strategy:
matrix:
node-version: [16,18]
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v1
with:
node-version: ${{ matrix.node-version }}
- name: Cache node modules
id: cache-node-modules
uses: actions/cache@v3
with:
path: node_modules
key: ${{ runner.os }}-node-modules-${{ matrix.node-version }}-${{ hashFiles('**/package-lock.json') }}
- name: Build
run: npm run build
lint:
needs: [setup]
runs-on: ubuntu-latest
env:
CI: true
strategy:
matrix:
node-version: [16,18]
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- name: Cache node modules
id: cache-node-modules
uses: actions/cache@v3
with:
path: node_modules
key: ${{ runner.os }}-node-modules-${{ matrix.node-version }}-${{ hashFiles('**/package-lock.json') }}
- name: Lint Affected Apps
run: npm run lint
test:
needs: [setup]
runs-on: ubuntu-latest
env:
CI: true
strategy:
matrix:
node-version: [16,18]
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- name: Cache node modules
id: cache-node-modules
uses: actions/cache@v3
with:
path: node_modules
key: ${{ runner.os }}-node-modules-${{ matrix.node-version }}-${{ hashFiles('**/package-lock.json') }}
- run: npm run test
# e2e might be too much work todo for every push, lets see.
e2e:
needs: [setup]
runs-on: ubuntu-latest
env:
CI: true
strategy:
matrix:
node-version: [16,18]
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- name: Cache node modules
id: cache-node-modules
uses: actions/cache@v3
with:
path: node_modules
key: ${{ runner.os }}-node-modules-${{ matrix.node-version }}-${{ hashFiles('**/package-lock.json') }}
- run: npm run e2e