34 lines
823 B
YAML
34 lines
823 B
YAML
name: Setup NodeJS with package cache
|
|
|
|
on:
|
|
workflow_call:
|
|
inputs:
|
|
node-version-file:
|
|
description: Path to the Node.js version file
|
|
type: string
|
|
required: false
|
|
default: .nvmrc
|
|
|
|
jobs:
|
|
setup-node:
|
|
name: Setup NodeJS
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: actions/cache@v4
|
|
id: cache-modules
|
|
with:
|
|
path: |
|
|
~/.npm
|
|
node_modules
|
|
key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}
|
|
restore-keys: |
|
|
${{ runner.os }}-node-
|
|
- uses: actions/setup-node@v4
|
|
with:
|
|
node-version-file: ${{ inputs.node-version-file }}
|
|
cache: "npm"
|
|
- if: steps.cache-modules.outputs.cache-hit != 'true'
|
|
run: npm ci
|