パイプラインのフィードバック統合
以降のセクションでは、パイプラインのフィードバック・リリース・マーカーをご使用の CI/CD パイプラインと統合する方法について説明します。
リリース API
Releases 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 orb を使用すると、ワークフローから新しいリリースを作成し、最新のリリースを追跡することができます。 CircleCI ワークフローから最新のリリースを追跡できます。
Concourse
Instana Pipeline Feedback リソースを使用すると、 Concourse CI パイプラインから新しいリリースを作成し、最新のリリースを追跡できます。
GitHub アクション
Taimosは GitHub アクションの統合を構築した。
Harness
Harnessは、お客様のデプロイメントと本番アプリケーションを監視するために、Instanaとの継続的検証統合を構築しました。
Jenkins
また、既存のCI/CDツールとのスムーズな統合を可能にするため、 Jenkins プラグインを提供しています。 このプラグインと詳細情報は GitHub.
BOSH デプロイメント
重要: パイプライン・フィードバック機能の状況は、現在 実験的です。 多くのサービスインスタンスがあり、それぞれに専用のBOSHデプロイメントがあるような環境では、少しおしゃべりになりすぎるかもしれない。 ご意見をお聞かせください。
Instana タイルは、Pivotal Platform 基盤全体で実行されている BOSH デプロイメントを自動的に検出し、Instana 内のパイプライン フィードバック機能の一部として、これらのデプロイメントが releases として報告されます。
詳しくは、 Pipeline Feedbackのドキュメントをご覧ください。
BOSH デプロイメント用のパイプライン フィードバック機能にオプトインするには、 OpsManager の Instana タイル構成内で、 Agent 自動構成 > [Experimental] Pipeline Feedback for BOSH オプションを有効にします。
次の設定を正しく構成するようにしてください。
- 「バックエンド接続」>「API エンドポイント URL」: Instana のテナント・ユニットを指定する必要があります。
- バックエンド接続 > APIトークン : 少なくとも
Configuration of releasesのパーミッションを持つAPIトークンが必要です。 詳細については、 APIトークンのドキュメントを参照してください。
変更をロールアウトするには、OpsManager で VMware Tanzu Application Service for VMs (旧称: Pivotal Application Service (PAS)) タイルまたは VMware Tanzu Kubernetes Grid (旧称: Pivotal Container Service (PKS)) タイルに対する「変更の適用」を選択します。