Новые действия GitHub запускаются в пустых папках
Я работаю с новыми действиями GitHub, идея рабочего процесса ниже заключается в том, чтобы запускаться при открытии или синхронизации pr, сначала он должен проверить и установить зависимости, а затем запустить несколько сценариев пряжи
name: PR to Master
on:
pull_request:
branches:
- master
jobs:
# Synchronize or Opened
synchronized_or_opened:
name: Synchronize or Opened
runs-on: ubuntu-latest
steps:
- uses: actions/bin/filter@master
with:
args: action 'opened|synchronize'
# Add Labels
add_labels:
name: Add Labels
runs-on: ubuntu-latest
steps:
- uses: actions/labeler@v2
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
needs: synchronized_or_opened
# Checkout
checkout:
name: Checkout
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@master
needs: synchronized_or_opened
# Install Dependencies
install_dependencies:
name: Install Dependencies
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [10.x]
steps:
- run: yarn dep:install-npm
needs: checkout
# Typecheck
typecheck:
name: Typecheck
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [10.x]
steps:
- run: yarn typecheck
needs: install_dependencies
# Prettier
prettier:
name: Prettier
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [10.x]
steps:
- run: yarn prettier
needs: install_dependencies
# ESLint
eslint:
name: ESlint
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [10.x]
steps:
- run: yarn eslint
needs: install_dependencies
# Danger
danger:
name: Danger
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [10.x]
steps:
- run: yarn danger
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
needs: install_dependencies
В настоящий момент он успешно переходит к этапу оформления заказа, но после запуска задания на установку появляется следующая ошибка
ошибка Не удалось найти файл package.json в "/home/runner/work/myRepo/myRepo"
Судя по этой проверке либо не удалось, либо я не в той папке?
1 ответ
Как упоминалось в документах по синтаксису рабочего процесса:
Каждое задание выполняется в новом экземпляре виртуальной среды, указанной при запуске.
Из того, что я вижу здесь, вы делаете шаг оформления заказа в отдельной работе от других. Делая это таким образом, это никак не влияет на другие рабочие места. Это должно быть определено внутри тех заданий, где выполняются ваши команды CLI npm.
Вот пример того, как это будет выглядеть на одной из ваших работ:
jobs:
# (...) Other jobs
# Install Dependencies
install_dependencies:
name: Install Dependencies
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [10.x]
steps:
- uses: actions/checkout@master
- run: yarn dep:install-npm
needs: checkout
# (...) Other jobs
В шаблонах рабочих процессов для начинающих GitHub есть несколько общих примеров.