【サークルシーアイ】

CircleCI とは?

最終更新:
💡 設定した条件でビルド・テスト・デプロイを実行する

コードのビルドやテスト、デプロイの処理を自動化するCI/CDサービス。設定ファイルでジョブと実行条件を定義し、コードの変更などをきっかけに実行する。

📌 このページのポイント
CircleCI:設定した処理をつなぐ .circleci/config.yml 手順と実行条件を定義 ワークフローの一例 ビルド テスト 承認 デプロイ 前の処理の成功・承認を条件に進む Orbs:設定の部品を再利用 コマンド / ジョブ / 実行環境
承認を挟むワークフローの例。起動条件、処理、依存関係は設定する。
ひよこ ひよこ
コードを書けば自動でデプロイされるの?
ペンギン先生 ペンギン先生
プロジェクトを接続し、実行する処理や起動条件を設定して使うよ。コードの変更などでパイプラインを起動できるけど、テストやデプロイが何も設定せずに動くわけではない。デプロイの前に承認を入れる構成も作れるんだ
ひよこ ひよこ
どこに設定を書くの?
ペンギン先生 ペンギン先生
基本はリポジトリ内の.circleci/config.ymlというYAMLファイルだよ。ジョブの中にビルドやテストなどの手順を書き、ワークフローで実行するジョブや順序を決める。例えばテストが成功した後に、承認を経てデプロイする構成にできるんだ
ひよこ ひよこ
処理を動かす環境も選べる?
ペンギン先生 ペンギン先生
DockerコンテナやLinux仮想マシン、macOSなどの実行環境を指定できるよ。使いたいOSやツール、必要な資源に合わせて選ぶ。別のCIサービスより必ず速いということではなく、自分の処理や条件で確認するんだ
ひよこ ひよこ
Orbsって何なの?
ペンギン先生 ペンギン先生
よく使うコマンド、ジョブ、実行環境の設定をパッケージとして再利用する仕組みだよ。設定を共通化できるけど、利用するバージョンや必要な認証情報、実際に実行する処理は確認する。取り込むだけで外部サービスの設定まで完了するわけではないんだ
ひよこ ひよこ
認証用のトークンは設定ファイルに書くの?
ペンギン先生 ペンギン先生
コードに直接書かず、環境変数やContextなどを使って渡すよ。ただし、処理の中で表示すればログに出る可能性がある。実行するコマンドやシークレットの扱いを確認し、値をログやコマンド履歴へ出さないようにするんだ
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「CircleCI」って出てきたら「ビルドやテストなどの処理を設定して自動化するサービス」と思えばだいたいOK!
📖 おまけ:英語の意味
「CircleCI」 = CI/CDサービスの名前
💬 CIはContinuous Integration(継続的インテグレーション)の略だよ。CircleCIは、ビルドやテストなどを自動化するサービスの名前なんだ

参考資料

← 用語集にもどる