Мне нужно перейти с CircleCI 1.0 на 2.0. После того, как я изменил старую конфигурацию на новую, сборка завершилась неудачно из-за сообщений о том, что eslint-plugin-prettier сообщил о более хороших нарушениях интервала.
MyProject - это мой репозиторий GitHub, и он содержит папку client
, в которой есть весь код переднего плана, который я хочу построить на CI. В папке client
есть
.eslintrc.json
...
"extends": ["airbnb", "prettier"],
"plugins": ["prettier"],
...
.prettierrc
{
"tabWidth": 4,
"trailingComma": "all",
"singleQuote": true
}
.gitattributes (я работаю в Windows 10) со следующим кодом:
*.js text eol=crlf
*.jsx text eol=crlf
и, конечно, package.json
Новая конфигурация CircleCI:
version: 2
jobs:
build:
working_directory: ~/MyProject
docker:
- image: circleci/node:6.14.3-jessie-browsers
steps:
- checkout
- run:
name: Install Packages
command: npm install
working_directory: client
- run:
name: Test
command: npm run validate
working_directory: client
Старая конфигурация CircleCI:
## Customize dependencies
machine:
node:
version: 6.1.0
# Remove cache before new build. It takes much time
# but fixing a build which is broken long time ago (and not detected because of cache)
# is even more time consuming
dependencies:
post:
- rm -r ~/.npm
## Customize test commands
test:
override:
- npm run validate
general:
build_dir: client
Сборка завершается неудачно из-за проблем с линтингом (все о количестве пробелов):
Итак, что может вызвать эти ошибки? У меня нет идей здесь. Сначала я подумал, что это может быть потому, что .prettierrc не был найден. Однако, когда я удалил его для эксперимента и запустил локально, я получил ошибки во всех файлах, в общей сложности более 1000. В то время как на CI с .prettierrc было только 188 в нескольких файлах.