Skip to content

fix(ci): clean up numerous disparate installs #954

fix(ci): clean up numerous disparate installs

fix(ci): clean up numerous disparate installs #954

Workflow file for this run

name: Actions
on:
pull_request:
branches:
- master
- main
jobs:
install:
name: Install
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version-file: .nvmrc
- run: |
npm ci --omit=optional
npm install --no-save warframe-worldstate-parser@^3.x warframe-worldstate-data@^2.x
- uses: actions/cache/save@v4
with:
path: |
./node_modules/**/*
key: node-${{ hashFiles('**/package-lock.json') }}
lint:
needs: install
name: Lint
runs-on: ubuntu-latest
outputs:
cache-node-modules: ${{ steps.cache-node-modules.outputs.cache-primary-key }}
steps:
- uses: actions/checkout@v4
- name: Use Node.js
uses: actions/setup-node@v4
with:
node-version-file: .nvmrc
- uses: actions/cache/restore@v4
with:
path: |
node_modules
key: node-${{ hashFiles('**/package-lock.json') }}
- name: Run linters
run: npm run lint
test:
name: Test
runs-on: ubuntu-latest
needs: [lint]
strategy:
matrix:
node-version: ['lts/*', '20', '18']
steps:
- uses: actions/checkout@v4
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
- uses: actions/cache/restore@v4
with:
path: |
node_modules
key: node-${{ hashFiles('**/package-lock.json') }}
- run: npm test
env:
CI: true
parallel: true
coverage:
name: Coverage
runs-on: ubuntu-latest
needs: [lint, install]
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version-file: .nvmrc
- uses: actions/cache/restore@v4
with:
path: |
node_modules
key: node-${{ hashFiles('**/package-lock.json') }}
- run: npm test
env:
CI: true
- name: Coveralls
uses: coverallsapp/github-action@master