husky + lint-stagedでコミット時にCircleCIのyamlを検証する
CircleCIのCLIには、yamlの検証ができるcircleci config validateがあります。 これをpackage.jsonなどのlint-stagedの設定に追加してやると、.circleci/co […]
広告ここから
広告ここまで
目次
CircleCIのCLIには、yamlの検証ができるcircleci config validate
があります。
これをpackage.jsonなどのlint-stagedの設定に追加してやると、.circleci/config.ymlを更新したときに構文エラーが出ていないか確認できます。
"lint-staged": {
"*.{js,jsx,ts,tsx}": [
"eslint --fix"
],
".circleci/config.yml": [
"circleci config validate"
]
},
問題なければコミットできます。
% git commit -m "chore: update ci config"
husky > npm run -s precommit (node v12.9.1)
↓ Running tasks for *.{js,jsx,ts,tsx} [skipped]
→ No staged files match *.{js,jsx,ts,tsx}
✔ Running tasks for .circleci/config.yml
構文エラーがあると、コミット前にrejectされます。
% git commit -m "chore: update ci config"
husky > npm run -s precommit (node v12.9.1)
↓ Running tasks for *.{js,jsx,ts,tsx} [skipped]
→ No staged files match *.{js,jsx,ts,tsx}
❯ Running tasks for .circleci/config.yml
✖ circleci config validate
→ ^
✖ circleci config validate found some errors. Please fix them and try committing again.
Error: Unable to parse YAML
while scanning a simple key
in 'string', line 121, column 3:
deploy-dev
^
could not find expected ':'
in 'string', line 122, column 13:
executor: node
^
husky > pre-commit hook failed (add --no-verify to bypass)