Tech Blog

グローバルな家族アプリFammを運営するTimers inc (タイマーズ) の公式Tech Blogです。弊社のエンジニアリングを支える記事を随時公開。エンジニア絶賛採用中!→ https://timers-inc.com/engineering

Circle CI CLI を使ってローカル環境でビルドを実行する

サーバーサイドエンジニアの鈴木です。API サーバーの CI として Circle CI が利用されており、最近 Circle CI CLI を使う機会があったので得られた知見をいくつかの共有します。

Circle CLI をインストールする

下記のコマンドを実行することで Circle CI CLI がインストールされ、circleci コマンドが利用できるようになります。このインストール方法は公式のドキュメントに記載されているものです。

curl -o /usr/local/bin/circleci https://circle-downloads.s3.amazonaws.com/releases/build_agent_wrapper/circleci && chmod +x /usr/local/bin/circleci

config.yml の文法が正しいか確認する

circleci config validate コマンドを実行すると、.circleci/config.yml の文法が正しいかどうかの検証を行ってくれます。YAML ファイルとしての文法だけでなく、Circle CI が要求する仕様を満たしているかも検証されます。デフォルトでは .circleci/config.yml が対象ですが、 -c オプションに続いてパスを指定することで任意の位置のファイルを検証することができます。

ローカルでビルドを実行する

circleci build コマンドを実行すると、ローカルでビルドが実行されます。デフォルトではジョブ名が build のジョブが実行されます。--build オプションを使うことで任意のジョブを実行することができます。また、このコマンドでも -c オプションを使うことで利用する config.yml を指定することができます。

ローカルのディレクトリを Circle CI のコンテナにマウントする

circleci build コマンドの -v オプションを使うとローカルの任意のディレクトリを Circle CI のコンテナにマウントすることができます。これにより、ローカルに置いてあるファイルやディレクトリをテストを実行中に参照できるようになります。どのディレクトリをどこにマウントするかを : で区切って指定します。下記の例では、ローカルの /Users/timers/workspace/something を Circle CI コンテナ内の /home/circleci/project/something にマウントします。

circleci build -v /Users/timers/workspace/something:/home/circleci/project/something

環境変数を指定する

circleci build コマンドの -e オプションを使うと、ビルド中に利用する環境変数を指定することができます。

circleci build -e SOMEENV="TIMERS"

積極採用中!!

子育て家族アプリFamm、カップル専用アプリPairyを運営するTimers inc. では、現在エンジニアを積極採用中! 急成長中のサービスの技術の話を少しでも聞いてみたい方、スタートアップで働きたい方など、是非お気軽にご連絡ください! 採用HP : http://timers-inc.com/engineerings

Timersでは各職種を積極採用中!

急成長スタートアップで、最高のものづくりをしよう。

募集の詳細をみる