カクカクしかじか

技術的なアレコレ

ローカルでCircleCIのconfig.ymlの文法エラーを検知する方法

想定読者

  • 仕事ではCircleCIを使っているけど自分で一からセットアップしたことがない方
  • そもそもCircleCIに触れることが初めての方

はじめに

通常のCIサービスだとローカルからリモートのリポジトリにプッシュして、はじめてローカルの設定ファイルの不備に気付くといったことになるのですが、CicleCIはその他のCIサービスと異なり、ローカル実行環境が用意されています。 今回はそうしたローカル実行環境からCicleCIの設定時点のファイルの文法エラーをローカルで検知する方法を確認したいと思います。

CircleCIのconfig.ymlのファイルの文法エラーを検知する方法

  • CicleCI CLIを使う

CicleCI CLIのダウンロード方法(Mac/Linuxの場合)

$ curl -fLSs https://circle.ci/cli | bash

ローカルにて文法チェック

  • 事前にRailsアプリのルートに .circleci/cinfig.yml が用意されている想定
  • circleci config validate コマンド
$ circleci config validate
Error: Unable to parse YAML
while parsing a block collection
 in 'string', line 25, column 7:
          - checkout
          ^
expected <block end>, but found '?'
 in 'string', line 39, column 7:
          code_analy
          ^

上記のように事前に設定ファイルの文法エラーに気付くことが出来るので、CIを自分でセットアップすることに慣れていない人間にとっては、ちょっぴり便利なのではないでしょうか?