無料でビルドを開始
CircleCI.comアカデミーブログコミュニティサポート

config.yml のサンプルファイル

11 months ago7 min read
クラウド
Server v4.x
Server v3.x
Helpful Resources
このページの内容

.circleci/config.yml のサンプルファイルをご紹介します。

CircleCI では Visual Studio Code の拡張機能を作成しました。一連の便利な機能により、Web アプリと Visual Studio Code 間のコンテキストの切り替え作業を減らすことができます。

VS Code 拡張機能を使用すると、構文の検証、ハイライト、自動補完機能による提案をリアルタイムに実行でき、設定ファイルの作成や変更、およびトラブルシューティングにかかる時間を短縮できます。 CircleCI アカウントでこの拡張機能を認証すると、コードエディターから直接 CircleCI パイプラインを確認して管理したり、ワークフローのステータス変更の通知が可能になります。

CircleCI VS Code の拡張機能は、 VS コードマーケットプレースからダウンロードできます。

シンプルな設定ファイルサンプル

同時実行ワークフロー

上記の例では、順次実行ワークフローを使用し、かつ test ジョブをマスター ブランチでのみ実行するよう設定しています。 同時実行、順序化、およびワークフローの手動承認機能を使ったジョブの実行のオーケストレーションの詳細は、 ワークフローのドキュメントを参照してください。

下記設定ファイルサンプルのワークフロービューを示します。 同時実行ワークフローのグラフ

順次実行ワークフロー

上記の例では、順次実行ワークフローを使用し、かつ test ジョブをマスター ブランチでのみ実行するよう設定しています。 ジョブ制御の同時実行化、シーケンシャル化、もしくは承認して処理を続行するワークフローについて、詳しくは ワークフローに関するページを参照してください。

次の図に、ジョブを 1 つずつ順番に実行する以下の設定ファイル サンプルのワークフロー ビューを示します。順次実行ワークフローのグラフ

承認ジョブ

以下に、ジョブの順次実行ワークフローの設定ファイル サンプルを示します。 ここでは、まず build ジョブを実行し、build ジョブの完了後 test ジョブを実行しています。 ジョブ制御の同時実行化、シーケンシャル化、もしくは承認して処理を続行するワークフローについて、詳しくは ワークフローに関するページを参照してください。

次の図に、以下の設定ファイル サンプルのワークフロー ビューを示します。 この図は 3 部構成であり、アプリで hold ステップをクリックすると表示される承認ポップアップと、hold ジョブが承認され deploy ジョブが実行された後のワークフロー ビューも示されています。

承認ワークフローのグラフ

順次実行ワークフローの設定例

以下に、次の CircleCI 設定機能を使用した .circleci/config.yml ファイル サンプルを示します。

  • 順次実行ワークフロー
  • Orb (Cloud の version: 2.1 設定ファイルのみ): node Orb でキャッシュを自動処理しています。 キャッシュの保存と復元の方法については Server の version: 2.0 サンプルを参照してください。
  • セカンダリ サービス コンテナ
  • ワークスペース
  • アーティファクトの保存

上記は、test ジョブが main ブランチでのみ実行されるよう設定された順次実行ワークフローの例です。 ジョブ制御の同時実行化、シーケンシャル化、もしくは承認して処理を続行するワークフローについて、詳しくは ワークフローに関するページを参照してください。

Server の 2.0 設定ファイル サンプルの詳細については、 GitHub 上の完全版デモ リポジトリを参照してください。

Cloud の 2.1 設定ファイル サンプルの詳細については、次のワークフローのグラフを参照してください

ファンイン・ファンアウト

注: ジョブを実行できるのは、そのジョブの依存関係が満たされているときのみなので、事前に実行される上流ジョブすべての依存関係が必要になります。 そのため、requires: キーのブロックで、直近の依存関係のみを指定する必要があります。

複数の Executor タイプを利用する設定例

1 つのワークフローのなかで、複数の Executor タイプを利用できます。

Example-1 では、Linux、Windows、macOS のそれぞれでプロジェクトのビルドおよびテストを行っています。

Example-2 では、iOS アプリのプロジェクトに関する部分を macOS でビルドし、それ以外の iOS ツール( SwiftLint Danger) は Docker でビルドしています。

関連項目


Suggest an edit to this page

Make a contribution
Learn how to contribute