Код Gitlab ci работает для ветки, но не для мастера - PullRequest
0 голосов
/ 12 июля 2020

В настоящее время работает над кешированием node_modules , чтобы ускорить мой конвейер. Код ниже - это этап в моем файле .gitlab-ci . Я хочу кэшировать node_modules, чтобы при следующем запуске конвейера он захватил папку из кеша. Единственный раз, когда он запускает переустановку (с использованием чистой установки), - это если package-lock. json изменилось ИЛИ если папка node_modules не существует.

Работает, когда Я отправляю sh в ветку, но когда я объединяю его и он запускается в основной ветке, он пропускается. Не отображается в конвейере.

Я очистил кеши бегунов и даже попытался перейти прямо к мастеру, но безрезультатно.

Есть ли у кого-нибудь какие-нибудь идеи?

Код ниже:

setup:
  stage: setup
  cache: 
    key: $CI_COMMIT_REF_SLUG
    paths:
      - node_modules/
  script:
    - echo "Setting up by installing dependencies"
    - npm ci
  rules: 
    - exists:
        - node_modules
      when: never
    - changes:
        - package-lock.json
...