diff --git a/doc/ci/caching/index.md b/doc/ci/caching/index.md index 0109d87921b394161a0f2a8e9a33609a2c4744ab..a60310076a87382a62fd99d225fd0afd7ecbe783 100644 --- a/doc/ci/caching/index.md +++ b/doc/ci/caching/index.md @@ -206,10 +206,11 @@ templates](https://gitlab.com/gitlab-org/gitlab-foss/tree/master/lib/gitlab/ci/t ### Caching Node.js dependencies -Assuming your project is using [npm](https://www.npmjs.com/) or -[Yarn](https://classic.yarnpkg.com/en/) to install the Node.js dependencies, the -following example defines `cache` globally so that all jobs inherit it. -Node.js modules are installed in `node_modules/` and are cached per-branch: +Assuming your project is using [npm](https://www.npmjs.com/) to install the Node.js +dependencies, the following example defines `cache` globally so that all jobs inherit it. +By default, npm stores cache data in the home folder `~/.npm` but since +[you can't cache things outside of the project directory](../yaml/README.md#cachepaths), +we tell npm to use `./.npm` instead, and it is cached per-branch: ```yaml # @@ -221,10 +222,10 @@ image: node:latest cache: key: ${CI_COMMIT_REF_SLUG} paths: - - node_modules/ + - .npm/ before_script: - - npm install + - npm ci --cache .npm --prefer-offline test_async: script: