パイプラインのフィードバック統合
以降のセクションでは、パイプラインのフィードバック・リリース・マーカーをご使用の CI/CD パイプラインと統合する方法について説明します。
リリース API
リリースの一覧 ` API ` には、リリースの作成、読み取り、更新、削除を行うためのエンドポイントが用意されています。 リリース・マーカーは、以下の 4 つの異なるスコープで作成できます。
- グローバル
- アプリケーション・パースペクティブ
- サービス
- アプリケーション・パースペクティブ内のサービス
次の例では、curl コマンドを使用して、指定した時点 (ミリ秒単位の UNIX タイム・スタンプ) に My First Global Release という名前の新しいグローバル・リリース・マーカーを作成します。
curl --location --request POST "{{base}}/api/releases" \
--header "Authorization: apiToken {{apiToken}}" \
--header "Content-Type: application/json" \
--data "{
\"name\": \"My First Global Release\",
\"start\": 1601890420046,
}"
このリリース・マーカーは、アプリケーション、サービス、およびエンドポイントのすべてのダッシュボード・ページに表示されます。
既存のアプリケーション・パースペクティブに基づいてリリース・マーカーを作成するには、要求本文にアプリケーション名のリストとともに applications を追加します。
curl --location --request POST "{{base}}/api/releases" \
--header "Authorization: apiToken {{apiToken}}" \
--header "Content-Type: application/json" \
--data "{
\"name\": \"My First Application Scoped Release\",
\"start\": 1601890420046,
\"applications\": [
{
\"name\": \"My Application\"
}
]
}"
このリリース・マーカーは、アプリケーション マイ・アプリケーションのダッシュボードに表示されます。
特定のサービスに対するリリース・マーカーの作成方法を次のスニペットに示します。
curl --location --request POST "{{base}}/api/releases" \
--header "Authorization: apiToken {{apiToken}}" \
--header "Content-Type: application/json" \
--data "{
\"name\": \"My First Service Scoped Release\",
\"start\": 1601890420046,
\"services\": [
{
\"name\": "\"my-service\"
}
]
}"
このサービス・スコープのリリース・マーカーは、サービスのダッシュボード マイ・サービス およびサービスを含むすべてのアプリケーション・ダッシュボード マイ・サービスに表示されます。 スコープをサービスに限定したリリース・マーカーは、特定のアプリケーションのセットに対して作成することもできます。
curl --location --request POST "{{base}}/api/releases" \
--header "Authorization: apiToken {{apiToken}}" \
--header "Content-Type: application/json" \
--data "{
\"name\": \"My First Service Scoped Release\",
\"start\": 1601890420046,
\"services\": [
{
\"name\": \"my-service\",
\"scopedTo\": {
\"applications\": [
{
\"name\": \"My Application\"
}
]
}
}
]
}"
ここで示したリリース・マーカーは、特定のアプリケーション My Application 内のサービス my-service に対してのみ表示され、アプリケーション内の他のサービスには表示されません。
統合
CircleCI
「 Instana Pipeline Feedback 」オーブを使用すると、 CircleCI のワークフロー内で手軽に新しいリリースを作成し、最新のリリースを追跡することができます。
Concourse
「 Instana パイプラインフィードバック 」リソースを使用すると、 Concourse CI パイプライン内で手軽に新しいリリースを作成し、最新のリリースを追跡することができます。
GitHub アクション
Taimosは、 GitHub のアクションに対応した連携機能を構築しました。
Harness
Harnessは、Instana との継続的検証統合を実現し、デプロイや本番環境のアプリケーションを監視します。
Jenkins
あるいは、既存の CI/CD ツールとのスムーズな統合を可能にする Jenkins プラグインを提供しています。 プラグインおよび詳細情報については、 GitHubを参照してください。
BOSH デプロイメント
重要: パイプライン・フィードバック機能の状況は、現在 実験的です。 多くのサービスインスタンスがあり、それぞれが専用のBOSHデプロイメントを持っているような環境では、少しおしゃべりになりすぎるかもしれない。 ご意見をお聞かせください。
「 Instana 」タイルは、Pivotal Platform基盤上で実行されているBOSHデプロイメントを自動的に検出し、 Instana 内の「Pipeline Feedback」機能の一環として、これらのデプロイメントが報告されます releases。
詳細については、 Pipeline Feedback のドキュメントをご覧ください。
「BOSHデプロイメント向けパイプラインフィードバック」機能を利用するには、 OpsManager 内の「 Instana 」タイルの設定で、 「Agentの自動設定」> [実験的]「BOSH向けパイプラインフィードバック」オプションを有効にしてください。
次の設定を正しく構成するようにしてください。
- 「バックエンド接続」>「API エンドポイント URL」: Instana のテナント・ユニットを指定する必要があります。
- バックエンド接続 > API トークン :少なくとも「
Configuration of releasespermission」権限を持つ API トークンが必要です。 詳細については、 API トークンのドキュメントをご覧ください。
変更をロールアウトするには、OpsManager で VMware Tanzu Application Service for VMs (旧称: Pivotal Application Service (PAS)) タイルまたは VMware Tanzu Kubernetes Grid (旧称: Pivotal Container Service (PKS)) タイルに対する「変更の適用」を選択します。