クイックリファレンス

CircleCI パイプライン設定チートシート

CircleCI パイプライン設定のクイックリファレンス:VM 環境設定、依存関係キャッシュ、データベース準備、テスト実行、デプロイまでの流れを解説。

· 公開日

CircleCI を用いた CI/CD ビルド環境と自動デプロイジョブの設定をまとめたクイックリファレンスです。

パイプラインのライフサイクル段階

  • machine: ベースとなる VM ランタイム、OS、言語バージョンを設定します。
  • checkout: Git リポジトリをクローンし、サブモジュールを初期化します。
  • dependencies: キャッシュされたライブラリを復元し、言語の依存関係をインストールします。
  • database: テスト用データベースのテーブル準備とスキーマ読み込みを行います。
  • test: 単体テスト、機能テスト、統合テストスイートを実行します。
  • deployment: テストを通過したビルド成果物をステージング環境や本番環境へデプロイします。

設定例(YAML)

version: 2.1

executors:
  node-executor:
    docker:
      - image: cimg/node:18.16.0
      - image: cimg/postgres:14.2
        environment:
          POSTGRES_USER: ubuntu
          POSTGRES_DB: app_test
          POSTGRES_PASSWORD: ""

jobs:
  build-and-test:
    executor: node-executor
    steps:
      - checkout
      - restore_cache:
          keys:
            - v1-deps-{{ checksum "package-lock.json" }}
            - v1-deps-
      - run:
          name: 依存関係のインストール
          command: npm ci
      - save_cache:
          key: v1-deps-{{ checksum "package-lock.json" }}
          paths:
            - ~/.npm
      - run:
          name: ユニットテストの実行
          command: npm test

workflows:
  build-pipeline:
    jobs:
      - build-and-test

関連テーマ