メインコンテンツへスキップ
CircleCI アカウントを接続することで、CloudThinker エージェントがパイプライン状態の監視、ワークフローとジョブの調査、失敗したビルドとテストのログトリアージ、ワークフローの再実行・パイプラインのトリガー・デプロイのロールバックなど承認ゲートが必要なコントロールの実行を行えるようになります。 CircleCI は個人 API トークンで認証します。トークンはそれを作成したユーザーの権限を継承するため、エージェントがアクセスできる範囲はそのユーザーのプロジェクトアクセスに一致します。

前提条件

  • 調査したい組織とプロジェクトへのアクセスがある CircleCI アカウント
  • 個人 API トークン
  • 承認ゲートコントロールを使用する場合は、トークンのユーザーが対象プロジェクトでトリガー/パイプライン権限を持っている必要があります。
読み取り専用分析は標準の個人 API トークンで機能します。承認ゲートコントロールには、トークンのユーザーが対象プロジェクトでトリガー権限を持っていることも必要です。

セットアップ

1

個人 API トークンを作成する

CircleCI でユーザーアバター → User Settings → Personal API Tokensapp.circleci.com/settings/user/tokens)に移動し、Create New Token をクリックします。
  • Token name: cloudthinker
  • Expiry date: 有効期間を選択し、ローテーションを計画する
トークンを直ちにコピーしてください。CircleCI は一度しか表示しません。
2

CloudThinker で接続を追加する

Connections → CircleCI に移動して以下を入力します。
  • Token: 作成した個人 API トークン
  • Base URL: CircleCI クラウドの場合は https://circleci.com、セルフホスト Server または Standalone の場合はインストール URL
Connect をクリックします。CloudThinker が認証情報を検証し、Connected ステータスを表示します。
個人 API トークンは作成直後にコピーしてください。紛失した場合は新しいトークンを作成する必要があります。

接続の詳細

フィールド説明
CIRCLECI_TOKEN接続の認証に使用する個人 API トークン
CIRCLECI_BASE_URLクラウドの場合は https://circleci.com、Server または Standalone のインストール URLhttps://circleci.com
CloudThinker はトークンから組織とフォロー中のプロジェクトを解決するため、CircleCI クラウドでは手動での組織 ID やプロジェクト ID の設定は不要です。

必要な権限

個人 API トークンはそれを作成したユーザーのアクセスを継承します。読み取り操作は対象プロジェクトを参照できるユーザーのトークンであれば機能します。コントロール操作には、トークンのユーザーがプロジェクトでトリガー/パイプライン権限を持っていること および CloudThinker での明示的な承認も必要です。
最小権限の原則に従ってください。CloudThinker に必要なプロジェクトアクセスのみを持つユーザー配下でトークンを作成し、ガードレールを外すのではなくコントロール操作を承認ゲートに保ってください。

エージェントの機能

接続後、エージェントは CircleCI のプロジェクト、パイプライン、ログへの読み取りアクセスを持ちます。
機能説明
プロジェクト検出フォロー中のプロジェクトを一覧表示し、アクティブな組織を解決する
パイプライン状態プロジェクトの最新パイプライン状態を調査する
ワークフローとジョブパイプラインのワークフローとそのジョブをレビューする
ビルドとテストログ失敗のトリアージのためにビルドとテスト出力を取得する
パイプラインコントロールパイプラインの実行、ワークフローの再実行、評価テストの実行、デプロイのロールバック、プロンプトテンプレートの作成 — 承認が必要

接続の確認

@alex list my followed CircleCI projects and show the latest pipeline status for one of them

プロンプト例

@alex check the latest CircleCI pipeline status for my main project and #report any failures
@alex the latest workflow failed — pull the build and test logs, find the error, and #recommend a fix
@alex list my followed CircleCI projects and their most recent pipeline status #dashboard
プロジェクトが多い組織では、エージェントが絞り込んだ結果を返せるよう、単一プロジェクトにリクエストを限定してください。

トラブルシューティング

トークンが欠落、期限切れ、または失効しています。新しい個人 API トークンを作成して CircleCI 接続を再接続してください。
トークンのユーザーがプロジェクトをフォローしていないか、解決された組織が間違っています。CircleCI で少なくとも 1 つのプロジェクトをフォローしてから、検出を再実行してください。
トークンにプロジェクトのトリガー/パイプライン権限がありません。そのプロジェクトでトリガー権限を持つユーザーのトークンを再生成して再接続してください。
使用 API は有料プランのみ、コンポーネントバージョンは Server または Standalone のみです。プランティアを確認してください。これは設定エラーではなく、ティア制限です。
CIRCLECI_BASE_URL がまだ https://circleci.com に設定されています。Server または Standalone のインストール URL に変更して再接続してください。
デプロイのロールバックは本番環境に影響する破壊的な操作であり、承認ゲートが必要で、Server または Standalone のみで利用可能です(クラウドのみの組織では利用不可)。プロンプトが表示されたらアクションを承認し、インストールがサポートしていることを確認してください。

セキュリティ

  • 最小権限 — エージェントがユースケースに必要な権限のみを付与します。まず読み取り専用から始め、後から拡張してください。
  • デフォルトで読み取り専用 — エージェントにこの接続で変更を行わせる場合を除き、読み取り専用の認証情報を使用してください。
  • 認証情報のローテーション — 通常のスケジュールに従ってキーとトークンをローテーションしてください。接続を更新すると、CloudThinker が新しい値を自動的に取得します。
  • オフボーディング時に失効 — 接続を削除するか、チームメンバーが退職する際には、プロバイダー側で認証情報を無効化してください。
  • コントロールの承認 — ガードレールを外すのではなく、パイプライン、再実行、ロールバックなどの書き込みアクションを承認ゲートに保ってください。
  • 正しいベース URL — クラウドの場合は https://circleci.com、セルフホストの Server または Standalone の場合はインストール URL を使用してください。

関連情報

https://mintcdn.com/cloudthinker/aLd-ttc-SCW-aFky/images/icons/jenkins.svg?fit=max&auto=format&n=aLd-ttc-SCW-aFky&q=85&s=871f9df2f5553b663f1b5c33f11bf5da

Jenkins 接続

ビルドパイプライン監視とジョブ分析

承認

承認ゲートアクションの仕組み