ツール統合の操作
DevOps Insights 2026年8月31 日にサービス終了となり、提供が中止されます。 Continuous Delivery は、2027年2月12日に以下のリージョンで提供が中止されます: au-syd、 ca-tor、 us-east。 また、同日をもって、「Code Risk Analyzer」もすべての地域で提供を終了いたします。 あるリージョンでこれらの機能が実際に利用されていない場合、そのリージョンの機能は早期に提供が終了し、新しいインスタンスの受け入れが停止される可能性があります。 詳細はこちら
コンソール、API、または Terraform を使用して、ツール統合を追加、更新、および削除することができます。 開発、デプロイメント、および運用の作業をサポートするツール統合をオープン・ツールチェーンの作成時に構成するか、ツール統合を追加および構成して既存のツールチェーンをカスタマイズすることができます。
IBM Cloud for Financial Services とのツール統合について
Continuous Delivery および Toolchain サービスは IBM Cloud for Financial Services Validated として指定されていますが、この指定は、ツールチェーンに統合できるすべてのツールに適用されるわけではありません。
以下のツールとツールの統合は、Financial Services Validated (検証済み) ではありません。
- Continuous Delivery サービスの Git Repos and Issue Tracking コンポーネント。
- Financial Services Validated として指定されていない IBM Cloud カタログ内のサービスのツール統合。
- IBM Cloudが所有および運用していないサード・パーティー、お客様、またはツールとサービスのツール統合。
どのツールおよびツール統合が Financial Services によって検証されるかについて詳しくは、 ツール統合 を参照してください。
Financial Services の IBM Cloud について詳しくは、 IBM Cloud Framework for Financial Services を参照してください。
Continuous Delivery サービスは、 IBM Cloud for Financial Servicesと同様の地域において金融サービス検証済みです。 金融サービス検証済みとして指定されているマルチゾーン地域の詳細については、 「 IBM Cloud リソースは承認済みマルチゾーン地域にのみデプロイする」 を参照してください。
コンソールを使用したツール統合の追加
コンソールを使用して、ツール統合をツールチェーンに追加できます。
- IBM Cloudコンソールから、メニューアイコンの
>Platform Automation>Toolchains をクリックします。
- 「ツールチェーン」ページで、ツールチェーンをクリックしてその「概要」ページを開きます。 代わりに、アプリの「アプリの詳細」ページで、ツールチェーン名をクリックすることもできます。
- 追加するツールの連携一覧を表示するには、「 追加 」をクリックしてください。
- 追加するツール統合をクリックします。
- 必要な情報を入力し、ツール統合を構成します。
- **「統合の作成」**をクリックし、ツールチェーンにツール統合を追加します。
API を使用したツール統合の追加
API を使用して、ツール統合をツールチェーンに追加できます。
-
IAM ベアラー・トークンを取得します。 あるいは、SDK を使用している場合は、 IAM API キーを取得 し、環境変数を使用してクライアント・オプションを設定します。
export CD_TOOLCHAIN_AUTH_TYPE=iam && \ export CD_TOOLCHAIN_APIKEY={iam_api_key} && \ export CD_TOOLCHAIN_URL={base_url} -
ツール統合の作成に使用する ツールチェーンの ID を検索 します。
-
追加するツール統合に対応する
tool_type_id値をルックアップ します。 -
対象のツールチェーン内にツールの統合機能を追加する。
curl -X POST --location --header "Authorization: Bearer {iam_token}" \ --header "Accept: application/json" \ --header "Content-Type: application/json" \ --data '{ "name": "{tool_name}", "tool_type_id": "{tool_type_id}", "parameters": {tool_parameters} }' \ "{base_url}/toolchains/{toolchain_id}/tools"const CdToolchainV2 = require('@ibm-cloud/continuous-delivery/cd-toolchain/v2'); const toolchainService = CdToolchainV2.newInstance(); ... (async() => { const toolPrototypeModel = { toolchainId: {toolchain_id}, toolTypeId: {tool_type_id}, name: {tool_name}, parameters: {tool_parameters} }; const response = await toolchainService.createTool(toolPrototypeModel); })();import ( "github.com/IBM/continuous-delivery-go-sdk/cdtoolchainv2" ) ... toolchainClientOptions := &cdtoolchainv2.CdToolchainV2Options{} toolchainClient, err := cdtoolchainv2.NewCdToolchainV2UsingExternalConfig(toolchainClientOptions) createToolOptions := toolchainClient.NewCreateToolOptions({toolchain_id}, {tool_type_id}) createToolOptions.SetName({tool_name}) createToolOptions.SetParameters({tool_parameters}) tool, response, err := toolchainClient.CreateTool(createToolOptions)from ibm_continuous_delivery.cd_toolchain_v2 import CdToolchainV2 ... toolchain_service = CdToolchainV2.new_instance() tool = toolchain_service.create_tool( name = {tool_name}, toolchain_id = {toolchain_id}, tool_type_id = {tool_type_id}, parameters = {tool_parameters} )import com.ibm.cloud.continuous_delivery.cd_toolchain.v2.CdToolchain; import com.ibm.cloud.continuous_delivery.cd_toolchain.v2.model.*; ... CdToolchain toolchainService = CdToolchain.newInstance(); CreateToolOptions createToolOptions = new CreateToolOptions.Builder() .name({tool_name}) .parameters({tool_parameters}) .toolchainId({toolchain_id}) .toolTypeId({tool_type_id}) .build(); Response<ToolchainToolPost> response = toolchainService.createTool(createToolOptions).execute(); ToolchainToolPost tool = response.getResult();
以下の表では、前のステップで使用された各変数をリストして説明します。
| 変数 | 説明 |
|---|---|
{base_url} |
Toolchain API エンドポイント URL。 サポートされる値の詳細については、 エンドポイント URL を参照してください。 |
{iam_api_key} |
IAM API キー。 |
{iam_token} |
有効なIAMベアラートークン。 |
{tool_name} |
ツール統合の名前です。 |
{tool_parameters} |
ツール統合の作成に使用するパラメーターを表す固有のキーと値のペア。 各ツール統合でサポートされるパラメーターについて詳しくは、 ツール統合 を参照してください。 |
{tool_type_id} |
ツール統合のタイプを表す、固有のショート・ネーム。 サポートされる値のリストについては、 ツール統合 を参照してください。 |
{toolchain_id} |
ツール統合を作成するためのツールチェーン。 |
Terraform とのツール統合の追加
Terraform を使用して、ツール統合をツールチェーンに追加できます。
-
Terraform CLI をインストールし、Terraform 用の IBM Cloud Provider プラグインを構成するために、Terraform on IBM Cloud® 入門のチュートリアルに従ってください。
-
main.tfという名前の Terraform 構成ファイルを作成します。 このファイルに、 HashiCorp 構成言語(HCL)を使用してリソースインスタンスを作成するための設定を追加してください。 この構成言語の使用について詳しくは、 Terraform の資料を参照してください。以下の例では、
ibm_cd_toolchain_tool_pipelineリソースを使用して Delivery Pipeline ツール統合を作成します。ここで、toolchain_idは、ツール統合を作成するツールチェーンを表す GUID です。data "ibm_cd_toolchain" "cd_toolchain" { toolchain_id = {toolchain_id} } resource "ibm_cd_toolchain_tool_pipeline" "cd_pipeline" { toolchain_id = data.ibm_cd_toolchain.cd_toolchain.id parameters { name = "myPipeline" } }ツール統合リソースについて詳しくは、 IBM Cloud Terraform レジストリーで、サポートされるツール統合リソースの完全なリストを参照してください。
-
Terraform CLI を初期設定します。
terraform init -
Terraform 実行プランを作成します。 このプランは、ツール統合を作成するために実行する必要があるすべてのアクションを要約します。
terraform plan -
Terraformの実行プランを適用します。 Terraform は、ツール統合を作成するために必要なすべてのアクションを実行します。
terraform apply
コンソールを使用したツール統合の更新
ツールチェーンの作成時にツール連携の設定を後回しにした場合、そのカードに「設定」ボタンが表示されます。 ツールチェーンの作成時にツールの統合を設定した場合は、コンソールを使用して設定を更新できます。
- IBM Cloudコンソールから、メニューアイコンの
>Platform Automation>Toolchains をクリックします。
- 「ツールチェーン」ページで、更新したいツール統合が含まれているツールチェーンをクリックし、その「概要」ページを開きます。 代わりに、アプリの「アプリの詳細」ページで、ツールチェーン名をクリックすることもできます。
- 初めてツール統合を構成する必要がある場合、そのツール統合のカードで**「構成」**をクリックします。
- ツール統合の構成が完了したら、**「統合の保存」**をクリックします。
- ツール統合の構成を更新する必要がある場合は、 「アクション」 アイコン
>「構成」 をクリックします。
- 設定の更新が完了したら、**「統合の保存」**をクリックします。
API を使用したツール統合の更新
ツールチェーンの作成時にツールの連携を設定した場合、API を使用してその設定を更新することができます。
-
IAM ベアラー・トークンを取得します。 あるいは、SDK を使用している場合は、 IAM API キーを取得 し、環境変数を使用してクライアント・オプションを設定します。
export CD_TOOLCHAIN_AUTH_TYPE=iam && \ export CD_TOOLCHAIN_APIKEY={iam_api_key} && \ export CD_TOOLCHAIN_URL={base_url} -
ツール統合が存在する ツールチェーンの ID を検索します。
-
ツールチェーンの ID を使用して、 ツール統合の ID を検索します。
-
ターゲット・ツールチェーン内のツール統合を更新します。
curl -X PATCH --location --header "Authorization: Bearer {iam_token}" \ --header "Accept: application/json" \ --header "Content-Type: application/merge-patch+json" \ --data '{ "name": "{new_tool_name}", "parameters": {new_tool_parameters} }' \ "{base_url}/toolchains/{toolchain_id}/tools/{tool_id}"const CdToolchainV2 = require('@ibm-cloud/continuous-delivery/cd-toolchain/v2'); const toolchainService = CdToolchainV2.newInstance(); ... (async() => { const toolPatchModel = { toolchainId: {toolchain_id}, toolId: {tool_id}, name: {new_tool_name}, parameters: {new_tool_parameters} }; const response = await toolchainService.updateTool(toolPatchModel); })();import ( "github.com/IBM/continuous-delivery-go-sdk/cdtoolchainv2" ) ... toolchainClientOptions := &cdtoolchainv2.CdToolchainV2Options{} toolchainClient, err := cdtoolchainv2.NewCdToolchainV2UsingExternalConfig(toolchainClientOptions) toolPatchModel := map[string]interface{}{ "name": {new_tool_name}, "parameters": {new_tool_parameters}, } updateToolOptions := toolchainClient.NewUpdateToolOptions({toolchain_id}, {tool_id}, toolPatchModel) tool, response, err := toolchainClient.UpdateTool(updateToolOptions)from ibm_continuous_delivery.cd_toolchain_v2 import CdToolchainV2 ... toolchain_service = CdToolchainV2.new_instance() tool = toolchain_service.update_tool( toolchain_id = {toolchain_id}, tool_id = {tool_id}, toolchain_tool_prototype_patch = { "name": {new_tool_name}, "parameters": {new_tool_parameters} } )import com.ibm.cloud.continuous_delivery.cd_toolchain.v2.CdToolchain; import com.ibm.cloud.continuous_delivery.cd_toolchain.v2.model.*; ... CdToolchain toolchainService = CdToolchain.newInstance(); HashMap<String,Object> toolchainToolPrototypePatch = new HashMap<>(); toolchainToolPrototypePatch.put("name", {new_tool_name}); toolchainToolPrototypePatch.put("parameters", {new_tool_parameters}); UpdateToolOptions updateToolOptions = new UpdateToolOptions.Builder() .toolchainId({toolchain_id}) .toolId({tool_id}) .toolchainToolPrototypePatch(toolchainToolPrototypePatch) .build(); Response<ToolchainToolPatch> response = toolchainService.updateTool(updateToolOptions).execute(); ToolchainToolPatch tool = response.getResult();
以下の表では、前のステップで使用された各変数をリストして説明します。
| 変数 | 説明 |
|---|---|
{base_url} |
Toolchain API のエンドポイント URL、例えば https://api.us-south.devops.cloud.ibm.com/toolchain/v2。 このエンドポイント URL の詳細については、値のリストも含めて、 エンドポイント URL を参照のこと。 |
{iam_api_key} |
IAM API キー。 |
{iam_token} |
有効なIAMベアラートークン。 |
{new_tool_name} |
ツール統合の新しい名前です。 |
{new_tool_parameters} |
ツール統合の更新に使用するパラメーターを表す固有のキーと値のペア。 各ツール統合のパラメーターのリストを確認するには、 ツール統合 を参照してください。 |
{tool_id} |
更新したいツール連携のID。 |
{toolchain_id} |
ツール統合が存在しているツールチェーンの ID。 |
Terraform とのツール統合の更新
ツールチェーンの作成時にツールの統合を設定した場合、Terraform を使用してその設定を更新できます。
-
Terraform CLI をインストールし、 Getting started with Terraform on IBM Cloudのチュートリアルに従って、Terraform 用に IBM Cloud プロバイダー・プラグインを構成します。
-
ツール統合の作成に使用した Terraform 構成ファイルを使用します。 Terraform を使用してツール統合が作成されていない場合は、
terraform importを実行して、別のツール統合が作成されないようにします。 この構成言語の使用について詳しくは、 Terraform の資料を参照してください。以下の例では、
ibm_cd_toolchain_tool_pipelineリソースを使用して、既存の Delivery Pipeline ツール統合の名前を更新します。ここで、toolchain_idは、ツール統合が存在するツールチェーンを表す GUID です。data "ibm_cd_toolchain" "cd_toolchain" { toolchain_id = {toolchain_id} } resource "ibm_cd_toolchain_tool_pipeline" "cd_pipeline" { toolchain_id = data.ibm_cd_toolchain.cd_toolchain.id parameters { name = "myUpdatedPipelineName" } }ツール統合リソースについて詳しくは、 IBM Cloud Terraform レジストリーで、サポートされるツール統合リソースの完全なリストを参照してください。
-
Terraform CLI を初期設定します。
terraform init -
Terraform 実行プランを作成します。 このプランでは、ツール統合を変更するために実行する必要があるすべてのアクションが要約されます。
terraform plan -
Terraformの実行プランを適用します。 Terraform は、ツール統合を変更するために必要なすべてのアクションを実行します。
terraform apply
コンソールを使用したツール統合の削除
コンソールを使用して、ツールチェーンからツール統合を削除できます。 ツールチェーンからツール統合を削除する場合、削除を取り消すことはできません。
- IBM Cloudコンソールから、メニューアイコンの
>Platform Automation>Toolchains をクリックします。
- 「ツールチェーン」ページで、ツールチェーンをクリックしてその「概要」ページを開きます。 代わりに、アプリの「アプリの詳細」ページで、ツールチェーン名をクリックすることもできます。
- 削除するツール統合で、 「アクション」 アイコン
>「削除」 をクリックします。
- **「削除」**をクリックして確認します。
API を使用したツール統合の削除
API を使用して、ツールチェーンからツール統合を削除できます。 ツールチェーンからツール統合を削除する場合、削除を取り消すことはできません。
-
IAM ベアラー・トークンを取得します。 あるいは、SDK を使用している場合は、 IAM API キーを取得 し、環境変数を使用してクライアント・オプションを設定します。
export CD_TOOLCHAIN_AUTH_TYPE=iam && \ export CD_TOOLCHAIN_APIKEY={iam_api_key} && \ export CD_TOOLCHAIN_URL={base_url} -
ツール統合が存在する ツールチェーンの ID を検索します。
-
ツールチェーンの ID を使用して、 ツール統合の ID を検索します。
-
ターゲット・ツールチェーン内のツール統合を削除します。
curl -X DELETE --location --header "Authorization: Bearer {iam_token}" \ "{base_url}/toolchains/{toolchain_id}/tools/{tool_id}"const CdToolchainV2 = require('@ibm-cloud/continuous-delivery/cd-toolchain/v2'); const toolchainService = CdToolchainV2.newInstance(); ... (async() => { const response = await toolchainService.deleteTool({ toolchainId: {toolchain_id}, toolId: {tool_id} }); })();import ( "github.com/IBM/continuous-delivery-go-sdk/cdtoolchainv2" ) ... toolchainClientOptions := &cdtoolchainv2.CdToolchainV2Options{} toolchainClient, err := cdtoolchainv2.NewCdToolchainV2UsingExternalConfig(toolchainClientOptions) deleteToolOptions := toolchainClient.NewDeleteToolOptions({toolchain_id}, {tool_id}) response, err := toolchainClient.DeleteTool(deleteToolOptions)from ibm_continuous_delivery.cd_toolchain_v2 import CdToolchainV2 ... toolchain_service = CdToolchainV2.new_instance() response = toolchain_service.delete_tool( toolchain_id = {toolchain_id}, tool_id = {tool_id} )import com.ibm.cloud.continuous_delivery.cd_toolchain.v2.CdToolchain; import com.ibm.cloud.continuous_delivery.cd_toolchain.v2.model.*; ... CdToolchain toolchainService = CdToolchain.newInstance(); DeleteToolOptions deleteToolOptions = new DeleteToolOptions.Builder() .toolchainId({toolchain_id}) .toolId({tool_id}) .build(); Response<Void> response = toolchainService.deleteTool(deleteToolOptions).execute();
以下の表では、前のステップで使用された各変数をリストして説明します。
| 変数 | 説明 |
|---|---|
{base_url} |
Toolchain API エンドポイント URL。 このエンドポイント URL の詳細については、値のリストも含めて、 エンドポイント URL を参照のこと。 |
{iam_api_key} |
IAM API キー。 |
{iam_token} |
有効なIAMベアラートークン。 |
{tool_id} |
削除したいツール連携のID。 |
{toolchain_id} |
ツール統合が存在しているツールチェーンの ID。 |
Terraform とのツール統合の削除
Terraform を使用して、ツールチェーンからツール統合を削除できます。 ツールチェーンからツール統合を削除する場合、削除を取り消すことはできません。
-
Terraform CLI をインストールし、Terraform 用の IBM Cloud Provider プラグインを構成するために、Terraform on IBM Cloud 入門のチュートリアルに従ってください。
-
ツール統合の作成に使用した Terraform 構成ファイルを使用します。 構成ファイルからツール統合リソースをコメント化または削除します。
-
Terraform CLI を初期設定します。
terraform init -
Terraform 実行プランを作成します。 このプランは、ツール統合を削除するために実行する必要があるすべてのアクションを要約します。
terraform plan -
Terraformの実行プランを適用します。 Terraform は、ツール統合を削除するために必要なすべてのアクションを実行します。
terraform apply
ツールの統合
Continuous Delivery サービスは、いくつかのツール統合をサポートします。
Continuous Delivery および Toolchain サービスは IBM Cloud for Financial Services Validated として指定されていますが、この指定は、ツールチェーンに統合できるすべてのツールに適用されるわけではありません。 以下の表は、 Continuous Delivery ツールチェーンと併用される場合に、金融サービス検証済み IBM Cloud として指定されるツール統合およびツールを示しています。
Continuous Delivery ツールチェーンAPI を使用してツール統合を作成する場合、APIリクエスト内のパラメータ tool_type_id を、以下の表に記載されているツール統合のツールタイプID 値に設定してください。
| ツール統合 | ツール・タイプ ID | 金融サービス検証済み |
|---|---|---|
| App Configuration | アプリ構成 | |
| Artifactory | Artifactory | |
| Bitbucket | ビットバケットギット | |
| Delivery Pipeline | パイプライン | |
| Delivery Pipeline Private Worker | プライベート・ワーカー | |
| DevOps Insights | DraserviceBroker | |
| Event Notifications | イベント通知 | |
| Git Repos and Issue Tracking | ホストされた Git | |
| クラウド Object Storage | クラウド・オブジェクトストレージ | |
| GitHub | ギスブリ | |
| GitLab | GitLab | |
| HashiCorp Vault | HashicorpVault | |
| Jenkins | jenkins | |
| JIRA | jira | |
| Key Protect | 鍵保護 | |
| ネクサス | Nexus | |
| その他のツール | カスタマイズ・ツール | |
| PagerDuty | PagerDuty | |
| Rational Team Concert | 合理的なチームコンサート | |
| Sauce Labs | ソーセラブ | |
| Secrets Manager | Secrets Manager | |
| Slack | 遊び | |
| SonarQube | sonarqube |
IBM Cloud Public でソース・コードを開発することから始める場合は、Git Repos and Issue Tracking を構成する前に GitHub ツール統合または Delivery Pipeline ツール統合を構成してください。