Реактивные скрипты Gitlab CI: не найдены - PullRequest
3 голосов
/ 02 апреля 2020

Я пытаюсь построить простой конвейер для примера проекта реагирования. Это мой файл .gitlab-ci.yml

image: node:12

stages:
  - build
  - test

build_react:
  stage: build
  script:
    - echo "Building deploy package"
    - yarn install
    - yarn build
    - echo "Build successful"
  artifacts:
    expire_in: 1 hour
    paths:
      - build

test_react:
  stage: test
  needs: [build_react]
  script:
    - echo "Testing project"
    - yarn test --watchAll=false
    - echo "Test successful"

Сборка пройдена, но на этапе тестирования она не удалась с жалобой на

 $ react-scripts test --watchAll=false
 /bin/sh: 1: react-scripts: not found

enter image description here

1 Ответ

3 голосов
/ 03 апреля 2020

Кажется, проблема в build_react:
Команда yarn install установит зависимости в папку node_modules (эта папка отсутствует в сохраненных файлах репозитория, поскольку она упоминается в .gitignore).
Если вам нужны зависимости в других зависимых заданиях (test_react в вашем случае), они должны быть указаны как cache или artifacts.
Таким образом, build_react может выглядеть как это:

⋮

build_react:
  stage: build
  script:
    - echo "Building deploy package"
    - yarn install
    - yarn build
    - echo "Build successful"
  artifacts:
    expire_in: 1 hour
    paths:
      - build
      - node_modules/    ### This will make the modules available to other dependent jobs

⋮
...