도구 통합에 대한 작업

DevOps Insights 2026년 8월 31일에 서비스 종료되어 중단될 예정입니다. Continuous Delivery 은 2027년 2월 12일에 au-syd, ca-tor, us-east 지역에서 중단될 예정입니다. 또한 해당 날짜를 기점으로 Code Risk Analyzer는 모든 지역에서 서비스가 중단될 예정입니다. 특정 지역에서 해당 기능을 실제로 사용하지 않는 경우, 해당 지역의 기능은 예정보다 일찍 중단될 수 있으며 새로운 인스턴스 등록이 더 이상 허용되지 않을 수 있습니다. 자세히 알아보기

콘솔, API 또는 Terraform을 사용하여 도구 통합을 추가, 업데이트 및 삭제할 수 있습니다. 오픈 도구 체인을 작성하는 동안 사용자는 개발, 배치 및 운영 태스크를 지원하는 도구 통합을 구성할 수 있습니다. 또는 도구 통합을 추가하고 구성하여 기존 도구 체인을 사용자 정의할 수도 있습니다.

금융 서비스를 위한 IBM Cloud 과의 도구 통합 이해

Continuous Delivery 및 도구 체인 서비스는 유효성 검증된 금융 서비스에 대해 IBM Cloud 으로 지정되지만 이 지정은 도구 체인에 통합할 수 있는 모든 도구에 적용되지는 않습니다.

다음 도구 및 도구 통합은 금융 서비스의 유효성이 검증되지 않습니다.

  • Continuous Delivery 서비스의 Git Repos and Issue Tracking 컴포넌트입니다.
  • 금융 서비스 유효성 검증됨으로 지정되지 않은 IBM Cloud 카탈로그의 서비스에 대한 도구 통합입니다.
  • IBM Cloud에서 소유하고 운영하지 않는 써드파티, 고객 또는 도구 및 서비스에 대한 도구 통합입니다.

금융 서비스 유효성 검증 도구 및 도구 통합에 대한 자세한 정보는 도구 통합 을 참조하십시오.

IBM Cloud for Financial Services에 대한 자세한 정보는 IBM Cloud Framework for Financial Services 를 참조하십시오.

Continuous Delivery 서비스는 IBM Cloud for Financial Services와 동일한 지역에서 금융 서비스 검증(Financial Services Validated)을 받았습니다. 금융 서비스 검증(Financial Services Validated)으로 지정된 멀티존 리전에 대한 자세한 내용은 ' IBM Cloud 리소스를 승인된 멀티존 리전에만 배포하세요'를 참조하십시오.

콘솔을 사용하여 도구 통합 추가

콘솔을 사용하여 도구 체인에 도구 통합을 추가할 수 있습니다.

  1. IBM Cloud 콘솔에서 메뉴 아이콘 햄버거 아이콘 > 플랫폼 자동화 > 툴체인을 클릭합니다.
  2. 도구 체인 페이지에서 도구 체인을 클릭하여 해당 개요 페이지를 여십시오. 또는 사용자 앱의 앱 세부사항 페이지에서 도구 체인 이름을 클릭하십시오.
  3. 추가할 도구 연동 목록을 보려면 ‘추가’를 클릭하세요.
  4. 추가할 도구 통합을 클릭하십시오.
  5. 도구 통합을 구성하는 데 필요한 정보를 입력하십시오.
  6. 통합 작성을 클릭하여 도구 체인에 도구 통합을 추가하십시오.

API와 도구 통합 추가

API를 사용하여 도구 체인에 도구 통합을 추가할 수 있습니다.

  1. IAM 베어러 토큰을 확보하십시오. 또는 SDK를 사용하는 경우 IAM API키를 얻고 환경 변수를 사용하여 클라이언트 옵션을 설정하십시오.

    export CD_TOOLCHAIN_AUTH_TYPE=iam && \
    export CD_TOOLCHAIN_APIKEY={iam_api_key} && \
    export CD_TOOLCHAIN_URL={base_url}
    
  2. 도구 통합을 작성할 도구 체인의 ID를 찾으십시오.

  3. 추가할 도구 통합에 해당하는 tool_type_id 을 찾으십시오.

  4. 대상 툴체인 내에 도구 통합 기능을 추가하십시오.

    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();
    

다음 표에서는 이전 단계에서 사용된 각 변수를 나열하고 설명합니다.

API와의 도구 통합 프로비저닝을 위한 변수
가변 설명
{base_url} 툴체인 API 엔드포인트 URL. 지원되는 값에 대한 자세한 내용은 엔드포인트 URL 를 참조하세요.
{iam_api_key} IAM API 키.
{iam_token} 유효한 IAM 베어러 토큰입니다.
{tool_name} 도구 통합의 이름입니다.
{tool_parameters} 도구 통합을 작성하는 데 사용할 매개변수를 나타내는 고유 키-값 쌍입니다. 각 도구 통합에 대해 지원되는 매개변수에 대한 자세한 정보는 도구 통합 을 참조하십시오.
{tool_type_id} 도구 통합의 유형을 나타내는 고유한 짧은 이름입니다. 지원되는 값 목록은 도구 통합 을 참조하십시오.
{toolchain_id} 도구 통합을 작성할 도구 체인입니다.

Terraform과의 도구 통합 추가

Terraform을 사용하여 도구 체인에 도구 통합을 추가할 수 있습니다.

  1. Terraform CLI를 설치하고 Terraform을 위한 IBM Cloud 제공자 플러그인을 구성하려면 IBM Cloud®에서 Terraform 시작하기 튜토리얼을 따르십시오.

  2. 이름이 main.tf인 Terraform 구성 파일을 작성하십시오. 이 파일에서 HCL( HashiCorp Configuration Language)을 사용하여 리소스 인스턴스를 생성하는 구성을 추가하십시오. 이 구성 언어 사용에 대한 자세한 정보는 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 레지스트리에서 지원되는 도구 통합 리소스의 전체 목록을 참조하십시오.

  3. Terraform CLI를 초기화하십시오.

    terraform init
    
  4. Terraform 실행 플랜을 작성하십시오. 이 계획은 도구 통합을 작성하기 위해 실행해야 하는 모든 조치를 요약합니다.

    terraform plan
    
  5. Terraform 실행 계획을 적용합니다. Terraform은 도구 통합을 작성하는 데 필요한 모든 조치를 수행합니다.

    terraform apply
    

콘솔을 사용하여 도구 통합 업데이트

툴체인을 생성할 때 툴 통합 설정을 연기한 경우, 해당 카드에 ‘구성’ 버튼이 표시됩니다. 툴체인을 생성할 때 툴 연동을 구성한 경우, 콘솔을 사용하여 구성 설정을 업데이트할 수 있습니다.

  1. IBM Cloud 콘솔에서 메뉴 아이콘 햄버거 아이콘 > 플랫폼 자동화 > 툴체인을 클릭합니다.
  2. '툴체인' 페이지에서 업데이트하려는 도구 통합이 포함된 툴체인을 클릭하여 해당 툴체인의 '개요' 페이지를 엽니다. 또는 사용자 앱의 앱 세부사항 페이지에서 도구 체인 이름을 클릭하십시오.
  3. 처음으로 도구 통합을 구성해야 하는 경우에는 해당 카드에서 구성을 클릭하십시오.
  4. 도구 통합 구성을 완료하면 통합 저장을 클릭하십시오.
  5. 도구 통합의 구성을 업데이트해야 하는 경우 조치 아이콘 조치 아이콘 > 구성을 클릭하십시오.
  6. 설정 업데이트를 완료하면 통합 저장을 클릭하십시오.

API를 사용하여 도구 통합 업데이트

툴체인을 생성할 때 툴 연동을 구성한 경우, API를 통해 구성 설정을 업데이트할 수 있습니다.

  1. IAM 베어러 토큰을 확보하십시오. 또는 SDK를 사용하는 경우 IAM API키를 얻고 환경 변수를 사용하여 클라이언트 옵션을 설정하십시오.

    export CD_TOOLCHAIN_AUTH_TYPE=iam && \
    export CD_TOOLCHAIN_APIKEY={iam_api_key} && \
    export CD_TOOLCHAIN_URL={base_url}
    
  2. 도구 통합이 존재하는 도구 체인의 ID를 찾으십시오.

  3. 도구 체인의 ID를 사용하여 도구 통합의 ID를 찾으십시오.

  4. 대상 도구 체인 내에서 도구 통합을 업데이트하십시오.

    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();
    

다음 표에서는 이전 단계에서 사용된 각 변수를 나열하고 설명합니다.

API와의 도구 통합을 업데이트하기 위한 변수
가변 설명
{base_url} 툴체인 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을 사용하여 구성 설정을 업데이트할 수 있습니다.

  1. IBM Cloud에 대한 튜토리얼에 따라 Terraform CLI를 설치하고 Terraform에 대한 IBM Cloud 제공자 플러그인을 구성하십시오.

  2. 도구 통합을 작성하는 데 사용한 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 레지스트리에서 지원되는 도구 통합 리소스의 전체 목록을 참조하십시오.

  3. Terraform CLI를 초기화하십시오.

    terraform init
    
  4. Terraform 실행 플랜을 작성하십시오. 이 계획은 도구 통합을 수정하기 위해 실행해야 하는 모든 조치를 요약합니다.

    terraform plan
    
  5. Terraform 실행 계획을 적용합니다. Terraform은 도구 통합을 수정하는 데 필요한 모든 조치를 수행합니다.

    terraform apply
    

콘솔을 사용하여 도구 통합 삭제

콘솔을 사용하여 도구 체인에서 도구 통합을 삭제할 수 있습니다. 도구 체인에서 도구 통합을 삭제하는 경우 삭제를 실행 취소할 수 없습니다.

  1. IBM Cloud 콘솔에서 메뉴 아이콘 햄버거 아이콘 > 플랫폼 자동화 > 툴체인을 클릭합니다.
  2. 도구 체인 페이지에서 도구 체인을 클릭하여 해당 개요 페이지를 여십시오. 또는 사용자 앱의 앱 세부사항 페이지에서 도구 체인 이름을 클릭하십시오.
  3. 삭제할 도구 통합에서 조치 아이콘 조치 아이콘 > 삭제를 클릭하십시오.
  4. 삭제를 클릭하여 확인하십시오.

API와의 도구 통합 삭제

API를 사용하여 도구 체인에서 도구 통합을 삭제할 수 있습니다. 도구 체인에서 도구 통합을 삭제하는 경우 삭제를 실행 취소할 수 없습니다.

  1. IAM 베어러 토큰을 확보하십시오. 또는 SDK를 사용하는 경우 IAM API키를 얻고 환경 변수를 사용하여 클라이언트 옵션을 설정하십시오.

    export CD_TOOLCHAIN_AUTH_TYPE=iam && \
    export CD_TOOLCHAIN_APIKEY={iam_api_key} && \
    export CD_TOOLCHAIN_URL={base_url}
    
  2. 도구 통합이 존재하는 도구 체인의 ID를 찾으십시오.

  3. 도구 체인의 ID를 사용하여 도구 통합의 ID를 찾으십시오.

  4. 대상 도구 체인 내에서 도구 통합을 삭제하십시오.

    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();
    

다음 표에서는 이전 단계에서 사용된 각 변수를 나열하고 설명합니다.

API와의 도구 통합을 삭제하기 위한 변수
가변 설명
{base_url} 툴체인 API 엔드포인트 URL. 값 목록을 포함하여 이 엔드포인트에 대한 자세한 내용은 URL, 값 목록은 엔드포인트 URL 를 참조하세요.
{iam_api_key} IAM API 키.
{iam_token} 유효한 IAM 베어러 토큰입니다.
{tool_id} 삭제하려는 도구 통합의 ID입니다.
{toolchain_id} 도구 통합이 존재하는 도구 체인의 ID입니다.

Terraform과의 도구 통합 삭제

Terraform을 사용하여 도구 체인에서 도구 통합을 삭제할 수 있습니다. 도구 체인에서 도구 통합을 삭제하는 경우 삭제를 실행 취소할 수 없습니다.

  1. Terraform CLI를 설치하고 Terraform을 위한 IBM Cloud 제공자 플러그인을 구성하려면 IBM Cloud에서 Terraform 시작하기 튜토리얼을 따르십시오.

  2. 도구 통합을 작성하는 데 사용한 Terraform 구성 파일을 사용하십시오. 구성 파일에서 도구 통합 자원을 주석 처리하거나 제거하십시오.

  3. Terraform CLI를 초기화하십시오.

    terraform init
    
  4. Terraform 실행 플랜을 작성하십시오. 이 계획은 도구 통합을 삭제하기 위해 실행해야 하는 모든 조치를 요약합니다.

    terraform plan
    
  5. Terraform 실행 계획을 적용합니다. Terraform은 도구 통합을 삭제하는 데 필요한 모든 조치를 수행합니다.

    terraform apply
    

도구 통합

Continuous Delivery 서비스는 여러 도구 통합을 지원합니다.

Continuous Delivery 및 도구 체인 서비스는 유효성 검증된 금융 서비스에 대해 IBM Cloud 으로 지정되지만 이 지정은 도구 체인에 통합할 수 있는 모든 도구에 적용되지는 않습니다. 다음 표는 IBM Cloud 툴체인과 함께 사용될 때 금융 서비스 검증을 위해 Continuous Delivery 으로 지정된 툴 통합 및 툴을 나타냅니다.

Continuous Delivery 툴체인 API 를 사용하여 툴 통합을 생성하는 경우, API 요청에서 tool_type_id 매개변수를 다음 표에 나열된 툴 통합의 툴 유형 ID 값으로 설정하십시오.

IBM Cloud 도구 체인에서 도구 통합을 사용할 수 있습니다 공개
도구 통합 도구 유형 ID 유효성 검증된 금융 서비스
App Configuration 애플리케이션 구성
Artifactory Artifactory
Bitbucket 비트버킷킷
Delivery Pipeline 파이프라인(pipeline) 체크표시 아이콘
Delivery Pipeline Private Worker 개인용 작업자
DevOps Insights 드레인 브로커 체크표시 아이콘
Event Notifications 이벤트 알림 체크표시 아이콘
Git Repos and Issue Tracking 호스티지티
클라우드 Object Storage 클라우드객체저장소
GitHub 지통됨
GitLab GitLab
HashiCorp Vault 해시코르pvault
Jenkins jenkins
JIRA JIRA
Key Protect 키 보호
Nexus Nexus
기타 도구 사용자 정의 도구
PagerDuty PagerDuty
Rational Team Concert 합리성 팀 콘서트
Sauce Labs 소세브
Secrets Manager Secrets Manager 체크표시 아이콘
Slack slack
SonarQube sonarqube

IBM Cloud Public에서 소스 코드로 개발을 시작하려는 경우, Git Repos and Issue Tracking을 구성하기 전에 GitHub 도구 통합 또는 Delivery Pipeline 도구 통합을 구성하십시오.