IBM Cloud Docs
Continuous Delivery サービス・インスタンスの削除

Continuous Delivery サービス・インスタンスの削除

リソース・グループ・ベースの Continuous Delivery サービス・インスタンスを削除できます。

Continuous Delivery サービス・インスタンスを削除するには、「管理者」または「エディター」のユーザー許可が必要です。

Continuous Delivery サービスのインスタンスを削除すると、削除されたサービス・インスタンスと同じリージョンおよびリソース・グループに含まれるツールチェーン内でのツール統合の使用能力に影響します。 この制限について詳しくは、プランの制限と使用法を参照してください。

統合請求 が有効になっているエンタープライズ・アカウント内の Continuous Delivery のインスタンスを完全に削除すると、エンタープライズ階層内のすべての Continuous Delivery サービス・インスタンスが個別の許可ユーザー・カウントの報告に戻ります。 その結果、エンタープライズ・アカウントで請求される許可ユーザーの総数が増える可能性があります。

コンソールを使ってContinuous Deliveryサービスインスタンスを削除する

  1. IBM Cloud にログインします。
  2. IBM Cloudアカウントの リソースリストに移動します。
  3. **「サービス」**セクションで、アクティブな Continuous Delivery サービス・インスタンスを見つけます。
  4. Continuous Delivery サービス・インスタンスの アクション オーバーフロー・アイコン メニューから、 削除をクリックします。
  5. **「削除」**をクリックして、Continuous Delivery サービスの削除を確認します。

CLIからContinuous Deliveryサービスインスタンスを削除する

  1. IBM Cloud CLI を使用して IBM Cloud にログインします。

    ibmcloud login
    

    ログインに失敗した場合は、ibmcloud login --ssoコマンドを実行して再試行してください。 フェデレーテッドIDを使用してログインする場合は、--ssoパラメーターが必要です。 このオプションを使用する場合は、CLI 出力にリストされているリンクに移動して、ワンタイム・パスコードを生成してください。

  2. オプション。 削除するインスタンスを識別するために、ターゲット・アカウント内のすべての Continuous Delivery サービス・インスタンスをリストします。

    ibmcloud resource service-instances --all-resource-groups --service-name continuous-delivery
    
  3. ibmcloud resource service-instance-delete コマンドを実行して、サービス・インスタンスを削除します。

    ibmcloud resource service-instance-delete SERVICE_NAME_OR_ID
    

以下の表では、前のステップで使用された各変数をリストして説明しています。

CLIからContinuous Deliveryサービスを削除するための変数
変数 説明
SERVICE_NAME_OR_ID 削除するContinuous Deliveryサービス・インスタンスの名前またはID。

APIによるContinuous Deliveryサービスインスタンスの削除

  1. IAM ベアラー・トークンを取得します。 あるいは、SDK を使用している場合は、 IAM API キーを取得 し、環境変数を使用してクライアント・オプションを設定します。

    export RESOURCE_CONTROLLER_APIKEY={iam_api_key}
    
  2. 削除したいContinuous Deliveryサービスインスタンスのインスタンスを削除します。

    curl -X DELETE \
      https://resource-controller.cloud.ibm.com/v2/resource_instances/{instance_id} \
      -H 'Authorization: Bearer {token}'
    
    import com.ibm.cloud.platform_services.resource_controller.v2.ResourceController;
    import com.ibm.cloud.platform_services.resource_controller.v2.model.*;
    ...
    ResourceController resourceControllerService = ResourceController.newInstance();
    DeleteResourceInstanceOptions deleteCdInstanceOptions = new DeleteResourceInstanceOptions.Builder()
       .id({instance_id})
       .recursive(false)
       .build();
    Response<Void> response = resourceControllerService.deleteResourceInstance(deleteCdInstanceOptions).execute();
    
    const ResourceControllerV2 = require('@ibm-cloud/platform-services/resource-controller/v2');
    const resourceControllerService = ResourceControllerV2.newInstance({});
    ...
    (async() => {
       const params = {
          id: {instance_id},
          recursive: false,
       };
       await resourceControllerService.deleteResourceInstance(params);
    })();
    
    from ibm_platform_services import ResourceControllerV2
    ...
    resource_controller_service = ResourceControllerV2.new_instance()
    response = resource_controller_service.delete_resource_instance(
       id={instance_id},
       recursive=False
    )
    
    import {
       "github.com/IBM/platform-services-go-sdk/resourcecontrollerv2"
    }
    ...
    resourceControllerServiceOptions := &resourcecontrollerv2.ResourceControllerV2Options{}
    resourceControllerService, err := resourcecontrollerv2.NewResourceControllerV2UsingExternalConfig(resourceControllerServiceOptions)
    deleteCdInstanceOptions := resourceControllerService.NewDeleteResourceInstanceOptions(
       {instance_id},
    )
    deleteCdInstanceOptions.SetRecursive(false)
    response, err := resourceControllerService.DeleteResourceInstance(deleteCdInstanceOptions)
    

以下の表では、前のステップで使用された各変数をリストして説明しています。

APIでContinuous Deliveryサービスを削除するための変数
変数 説明
{iam_api_key} IAM API キー。
{instance_id} 削除したいContinuous DeliveryサービスインスタンスのID。
{token} 有効な IAM ベアラ・トークン。

サービス・インスタンスの削除について詳しくは、 API を使用したリソース・インスタンスの削除 を参照してください。

Terraform を使用した Continuous Delivery サービス・インスタンスの削除

  1. 既存のサービス・インスタンスの resource ブロックを含む Terraform ファイル (例えば、 main.tf) を見つけます。 Continuous Deliveryでの Terraform の使用について詳しくは、 Terraform を使用した Continuous Delivery サービス・インスタンスの作成 を参照してください。

    以下の例の resource は、既存の Continuous Delivery サービス・インスタンスについて説明しています。

    data "ibm_resource_group" "group" {
      name = "default"
    }
    
    resource "ibm_resource_instance" "cd_service_instance" {
      name              = "my CD service instance"
      service           = "continuous-delivery"
      plan              = "lite"
      location          = "us-south"
      resource_group_id = data.ibm_resource_group.group.id
    }
    
  2. Terraform ファイルから resource ブロックを削除します。

  3. Terraform CLI を初期設定します。

    terraform init
    
  4. Terraform 実行プランを作成します。 このプランは、 Continuous Delivery サービス・インスタンスを削除するために実行する必要があるすべてのアクションを要約します。

    terraform plan
    
  5. Terraformの実行計画を適用する。 Terraform は、 Continuous Delivery サービス・インスタンスを削除するために必要なすべてのアクションを実行します。

    terraform apply
    

削除されたサービス・インスタンスのリストア

Continuous Delivery サービスのインスタンスを削除してから、7 日のデータ保存期間内であれば、その削除したサービス・インスタンスを復元することができます。 7 日間の期間が終了すると、サービス・インスタンスは完全に削除されます。

リストア可能なサービス・インスタンスを表示したり、削除されたサービスをリストアしたりするには、 リソースの再利用の使用 を参照してください。 削除したサービスの復元を試みるときにアクティブな Continuous Delivery サービス・インスタンスが存在すると、復元はブロックされます。 リソース・レクラメーションの詳細を表示する方法について詳しくは、 CLI を使用したレクラメーション処理されたリソースのリスト または API を使用したレクラメーション処理されたリソースのリスト を参照してください。

1 つのリージョンとリソース・グループに作成できる Continuous Delivery のアクティブ・インスタンスは 1 つだけです。 リージョンおよびリソース・グループから Continuous Delivery サービスのインスタンスを削除した後、削除したサービス・インスタンスを復元して、7 日間のデータ保存期間内にサービス・インスタンスを再作成することができます。 あるいは、 ibmcloud resource reclamation-delete コマンドを使用して、削除されたサービス・インスタンスを完全に削除してから、 Continuous Delivery サービス・インスタンスを再度作成 することもできます。