3
0
Fork 0
mirror of https://github.com/actions/cache.git synced 2024-12-05 00:39:32 +01:00

Remove recommendation to cache node_modules (#69)

* Update npm caching examples

* Fix output name

* Remove extra details tag
This commit is contained in:
Josh Gross 2019-11-07 21:04:46 -05:00 committed by GitHub
parent bde557aefd
commit bc821d0c12
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 43 additions and 14 deletions

View file

@ -28,7 +28,7 @@ Create a workflow `.yml` file in your repositories `.github/workflows` directory
### Example workflow
```yaml
name: Example Caching with npm
name: Caching Primes
on: push
@ -39,22 +39,19 @@ jobs:
steps:
- uses: actions/checkout@v1
- name: Cache node modules
- name: Cache Primes
id: cache-primes
uses: actions/cache@v1
with:
path: node_modules
key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-node-
path: prime-numbers
key: ${{ runner.os }}-primes
- name: Install Dependencies
run: npm install
- name: Generate Prime Numbers
if: steps.cache-primes.outputs.cache-hit != 'true'
run: /generate-primes.sh -d prime-numbers
- name: Build
run: npm run build
- name: Test
run: npm run test
- name: Use Prime Numbers
run: /primes.sh -d prime-numbers
```
## Ecosystem Examples

View file

@ -70,10 +70,42 @@ Using [NuGet lock files](https://docs.microsoft.com/nuget/consume-packages/packa
## Node - npm
For npm, cache files are stored in `~/.npm` on Posix, or `%AppData%/npm-cache` on Windows. See https://docs.npmjs.com/cli/cache#cache
>Note: It is not recommended to cache `node_modules`, as it can break across Node versions and won't work with `npm ci`
### macOS and Ubuntu
```yaml
- uses: actions/cache@v1
with:
path: node_modules
path: ~/.npm
key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-node-
```
### Windows
```yaml
- uses: actions/cache@v1
with:
path: ~\AppData\Roaming\npm-cache
key: ${{ runner.os }}-node-${{ hashFiles('**\package-lock.json') }}
restore-keys: |
${{ runner.os }}-node-
```
### Using multiple systems and `npm config`
```yaml
- name: Get npm cache directory
id: npm-cache
run: |
echo "::set-output name=dir::$(npm config get cache)"
- uses: actions/cache@v1
with:
path: ${{ steps.npm-cache.outputs.dir }}
key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-node-