Trabalhando com integrações de ferramentas
DevOps Insights chegará ao fim de sua vida útil e será descontinuado em 31 de agosto de 2026. O serviço Continuous Delivery será descontinuado nas seguintes regiões em 12 de fevereiro de 2027: au-syd, ca-tor, us-east. O Code Risk Analyzer também será descontinuado em todas as regiões nessa data. Se uma região não apresentar uso ativo desses recursos, os recursos nessa região poderão ser descontinuados mais cedo e deixar de aceitar novas instâncias. Saiba mais
Você pode adicionar, atualizar e excluir integrações de ferramentas usando o console, com a API ou com Terraform. É possível configurar integrações de ferramentas que suportam tarefas de desenvolvimento, implementação e operações ao criar uma cadeia de ferramentas aberta ou é possível incluir e configurar integrações de ferramentas para customizar uma cadeia de ferramentas existente.
Entendendo integrações de ferramentas com IBM Cloud para Serviços Financeiros
Embora os serviços Continuous Delivery e Toolchain sejam designados como IBM Cloud para os Serviços Financeiros Validados, esta designação não se aplica a todas as ferramentas que você pode integrar em cadeias de ferramentas.
As seguintes ferramentas e integrações de ferramentas são not Financial Services Validated:
- O componente Git Repos and Issue Tracking do serviço Continuous Delivery.
- Integrações de ferramentas para serviços no catálogo IBM Cloud que não são designados como Serviços Financeiros Validados.
- Integrações de ferramentas para terceiros, cliente ou ferramentas e serviços que não são de propriedade e operados por IBM Cloud.
Para obter mais informações sobre quais ferramentas e integrações de ferramentas são os Serviços Financeiros Validados, consulte Integrações de Ferramenta.
Para obter mais informações sobre IBM Cloud para Serviços Financeiros, consulte IBM Cloud Framework para Serviços Financeiros.
O serviço Continuous Delivery é validado para serviços financeiros nas mesmas regiões que IBM Cloud para serviços financeiros. Para obter mais informações sobre quais regiões multizona são designadas como validadas para serviços financeiros, consulte Implante seus recursos do IBM Cloud apenas em regiões multizona aprovadas.
Como adicionar uma integração de ferramenta usando o console
Você pode adicionar integrações de ferramentas em sua cadeia de ferramentas usando o console.
- No console IBM Cloud, clique no ícone
Menu > Automação da plataforma > Cadeias de ferramentas.
- Na página Cadeias de ferramentas, clique em uma cadeia de ferramentas para abrir a sua página de Visão geral. Como alternativa, na página Detalhes do app em seu app, clique no nome da cadeia de ferramentas.
- Para ver uma lista das integrações de ferramentas a serem adicionadas, clique em “Adicionar ”.
- Clique em uma integração de ferramenta que deseja incluir.
- Insira quaisquer informações necessárias para configurar a integração de ferramenta.
- Clique em Criar integração para incluir a integração de ferramenta em sua cadeia de ferramentas.
Como adicionar uma integração de ferramenta com a API
Você pode adicionar integrações de ferramentas em sua cadeia de ferramentas com a API.
-
Obter um token de portador de IAM. Alternativamente, se você estiver usando um SDK, obtenha uma chave API IAM e configure as opções do cliente usando variáveis de ambiente.
export CD_TOOLCHAIN_AUTH_TYPE=iam && \ export CD_TOOLCHAIN_APIKEY={iam_api_key} && \ export CD_TOOLCHAIN_URL={base_url} -
Consulte o ID da cadeia de ferramentas no qual deseja criar sua integração de ferramentas.
-
Consulte o valor
tool_type_idque corresponde à integração da ferramenta que você deseja adicionar. -
Adicione a integração da ferramenta à cadeia de ferramentas pretendida.
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();
A tabela a seguir lista e descreve cada uma das variáveis que são utilizadas nas etapas anteriores.
| Variável | Descrição |
|---|---|
{base_url} |
O ponto de extremidade da API Toolchain URL. Para obter mais informações sobre os valores suportados, consulte Endpoint URL. |
{iam_api_key} |
Sua chave de API do IAM. |
{iam_token} |
Um token de portador IAM válido. |
{tool_name} |
O nome da integração da ferramenta. |
{tool_parameters} |
Pares de valor de chave exclusiva que representam os parâmetros a serem usados para criar a integração da ferramenta. Para obter mais informações sobre os parâmetros suportados para cada integração de ferramenta, consulte Integrações de Ferramenta. |
{tool_type_id} |
O nome exclusivo, abreviado, que representa o tipo de integração da ferramenta. Para obter uma lista de valores suportados, consulte Integrações de ferramentas. |
{toolchain_id} |
A cadeia de ferramentas na qual criar a integração da ferramenta. |
Como adicionar uma integração de ferramenta com Terraform
Você pode adicionar integrações de ferramentas à sua cadeia de ferramentas com Terraform.
-
Para instalar a CLI do Terraform e configurar o plug-in do IBM Cloud Provider para o Terraform, siga o tutorial de Introdução ao Terraform no IBM Cloud®.
-
Crie um arquivo de configuração do Terraform que seja denominado
main.tf. Neste arquivo, adicione a configuração para criar instâncias de recursos usando a Linguagem de Configuração do HashiCorp (HCL). Para obter mais informações sobre o uso dessa linguagem de configuração, consulte a documentação Terraform.O exemplo a seguir cria uma integração de ferramentas Delivery Pipeline usando o recurso
ibm_cd_toolchain_tool_pipeline, em quetoolchain_idé um GUID que representa a cadeia de ferramentas na qual será criada a integração da ferramenta.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" } }Para obter mais informações sobre recursos de integração de ferramentas, veja a lista completa de recursos de integração de ferramentas suportados no IBM Cloud Terraform Registry.
-
Inicialize a CLI do Terraform.
terraform init -
Crie um plano de execução do Terraform. Este plano resume todas as ações que devem ser executadas para criar a integração da ferramenta.
terraform plan -
Aplique o plano de execução do Terraform. O Terraform toma todas as ações necessárias para criar a integração da ferramenta.
terraform apply
Como atualizar uma integração de ferramentas usando o console
Se você adiou a configuração da integração de uma ferramenta ao criar uma cadeia de ferramentas, um botão “Configurar” será exibido no cartão correspondente. Se você configurou uma integração de ferramenta ao criar uma cadeia de ferramentas, é possível atualizar as configurações por meio do console.
- No console IBM Cloud, clique no ícone
Menu > Automação da plataforma > Cadeias de ferramentas.
- Na página “Cadeias de ferramentas”, clique na cadeia de ferramentas que contém a integração da ferramenta que você deseja atualizar para abrir a página “Visão geral” dela. Como alternativa, na página Detalhes do app em seu app, clique no nome da cadeia de ferramentas.
- Se precisar configurar uma integração de ferramenta pela primeira vez, em seu cartão, clique em Configurar.
- Quando tiver finalizado a configuração da integração de ferramenta, clique em Salvar integração.
- Se você precisar atualizar uma configuração da integração da ferramenta, clique no ícone Ações
> Configurar.
- Quando tiver finalizado a atualização das configurações, clique em Salvar integração.
Como atualizar uma integração de ferramentas com a API
Se você configurou uma integração de ferramenta ao criar uma cadeia de ferramentas, é possível atualizar as configurações por meio da API.
-
Obter um token de portador de IAM. Alternativamente, se você estiver usando um SDK, obtenha uma chave API IAM e configure as opções do cliente usando variáveis de ambiente.
export CD_TOOLCHAIN_AUTH_TYPE=iam && \ export CD_TOOLCHAIN_APIKEY={iam_api_key} && \ export CD_TOOLCHAIN_URL={base_url} -
Consulte o ID da cadeia de ferramentas onde a integração da ferramenta existe.
-
Usando o ID da cadeia de ferramentas, olhe para cima o ID da integração da ferramenta.
-
Atualize a integração da ferramenta dentro da cadeia de ferramentas direcionada.
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();
A tabela a seguir lista e descreve cada uma das variáveis que são utilizadas nas etapas anteriores.
| Variável | Descrição |
|---|---|
{base_url} |
O endpoint da API Toolchain URL, por exemplo, https://api.us-south.devops.cloud.ibm.com/toolchain/v2. Para obter mais informações sobre esse endpoint URL, incluindo uma lista de valores, consulte Endpoint URL. |
{iam_api_key} |
Sua chave de API do IAM. |
{iam_token} |
Um token de portador IAM válido. |
{new_tool_name} |
O novo nome da integração da ferramenta. |
{new_tool_parameters} |
Os pares chave-valor exclusivos que representam os parâmetros a serem usados para atualizar a integração da ferramenta. Para visualizar uma lista de parâmetros para cada integração de ferramenta, consulte Integrações de Ferramenta. |
{tool_id} |
O ID da integração da ferramenta que você deseja atualizar. |
{toolchain_id} |
O ID da cadeia de ferramentas onde a integração da ferramenta existe. |
Como atualizar uma integração de ferramentas com Terraform
Se você configurou uma integração de ferramenta ao criar uma cadeia de ferramentas, é possível atualizar as configurações usando o Terraform.
-
Instale o CLI Terraform e configure o plug-in do provedor IBM Cloud para Terraform, seguindo o tutorial para Introdução ao Terraform em IBM Cloud.
-
Use o arquivo de configuração Terraform que você usou para criar a integração da ferramenta. Se a sua integração de ferramentas não foi criada com Terraform, execute
terraform importpara evitar criar outra integração de ferramentas. Para obter mais informações sobre o uso dessa linguagem de configuração, consulte a documentação Terraform.O exemplo a seguir atualiza o nome de uma integração de ferramenta Delivery Pipeline existente usando o recurso
ibm_cd_toolchain_tool_pipeline, em quetoolchain_idé um GUID que representa a cadeia de ferramentas onde a integração da ferramenta existe.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" } }Para obter mais informações sobre recursos de integração de ferramentas, veja a lista completa de recursos de integração de ferramentas suportados no IBM Cloud Terraform Registry.
-
Inicialize a CLI do Terraform.
terraform init -
Crie um plano de execução do Terraform. Este plano resume todas as ações que devem ser executadas para modificar a integração da ferramenta.
terraform plan -
Aplique o plano de execução do Terraform. O Terraform toma todas as ações necessárias para modificar a integração da ferramenta.
terraform apply
Como excluir uma integração de ferramentas usando o console
Você pode excluir integrações de ferramentas da sua cadeia de ferramentas usando o console. Se você excluir uma integração de ferramenta a partir de sua cadeia de ferramentas, a exclusão não poderá ser desfeita.
- No console IBM Cloud, clique no ícone
Menu > Automação da plataforma > Cadeias de ferramentas.
- Na página Cadeias de ferramentas, clique em uma cadeia de ferramentas para abrir a sua página de Visão geral. Como alternativa, na página Detalhes do app em seu app, clique no nome da cadeia de ferramentas.
- Sobre a integração da ferramenta que deseja excluir, clique no ícone Ações
> Excluir.
- Confirme clicando em Excluir.
Como excluir uma integração de ferramenta com a API
Você pode excluir integrações de ferramentas da sua cadeia de ferramentas com a API. Se você excluir uma integração de ferramenta a partir de sua cadeia de ferramentas, a exclusão não poderá ser desfeita.
-
Obter um token de portador de IAM. Alternativamente, se você estiver usando um SDK, obtenha uma chave API IAM e configure as opções do cliente usando variáveis de ambiente.
export CD_TOOLCHAIN_AUTH_TYPE=iam && \ export CD_TOOLCHAIN_APIKEY={iam_api_key} && \ export CD_TOOLCHAIN_URL={base_url} -
Consulte o ID da cadeia de ferramentas onde a integração da ferramenta existe.
-
Usando o ID da cadeia de ferramentas, olhe para cima o ID da integração da ferramenta.
-
Excluir a integração da ferramenta dentro da cadeia de ferramentas direcionada.
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();
A tabela a seguir lista e descreve cada uma das variáveis que são utilizadas nas etapas anteriores.
| Variável | Descrição |
|---|---|
{base_url} |
O ponto de extremidade da API Toolchain URL. Para obter mais informações sobre esse endpoint URL, incluindo uma lista de valores, consulte Endpoint URL para obter uma lista de valores. |
{iam_api_key} |
Sua chave de API do IAM. |
{iam_token} |
Um token de portador IAM válido. |
{tool_id} |
O ID da integração da ferramenta que você deseja excluir. |
{toolchain_id} |
O ID da cadeia de ferramentas onde a integração da ferramenta existe. |
Como excluir uma integração de ferramenta com Terraform
Você pode excluir integrações de ferramentas da sua cadeia de ferramentas com Terraform. Se você excluir uma integração de ferramenta a partir de sua cadeia de ferramentas, a exclusão não poderá ser desfeita.
-
Para instalar a CLI do Terraform e configurar o plug-in do IBM Cloud Provider para o Terraform, siga o tutorial de Introdução ao Terraform no IBM Cloud.
-
Use o arquivo de configuração Terraform que você usou para criar a integração da ferramenta. Comente ou remova o recurso de integração da ferramenta a partir do arquivo de configuração.
-
Inicialize a CLI do Terraform.
terraform init -
Crie um plano de execução do Terraform. Este plano resume todas as ações que devem ser executadas para excluir a integração da ferramenta.
terraform plan -
Aplique o plano de execução do Terraform. O Terraform toma todas as ações necessárias para excluir a integração da ferramenta.
terraform apply
Integrações de ferramenta
O serviço Continuous Delivery suporta várias integrações de ferramentas.
Embora os serviços Continuous Delivery e Toolchain sejam designados como IBM Cloud para os Serviços Financeiros Validados, esta designação não se aplica a todas as ferramentas que você pode integrar em cadeias de ferramentas. A tabela a seguir indica quais integrações de ferramentas e ferramentas são designadas como IBM Cloud para Serviços Financeiros Validado quando são usadas com cadeias de ferramentas Continuous Delivery.
Se você estiver usando a API da cadeia de ferramentas Continuous Delivery para criar uma integração de ferramenta, defina o tool_type_id parâmetro na solicitação da API como o valor do ID do tipo de ferramenta para a integração de ferramenta listada na tabela a seguir.
| Integração de ferramentas | ID do tipo de ferramenta | Serviços financeiros validados |
|---|---|---|
| App Configuration | configuração do aplicativo | |
| Artifactory | Artifactory | |
| Bitbucket | bitbucketgit | |
| Delivery Pipeline | processamento de canais | |
| Delivery Pipeline Private Worker | private_trabalhador | |
| DevOps Insights | corretor de serviços | |
| Event Notifications | notificações de eventos | |
| Git Repos and Issue Tracking | git hospedado | |
| Nuvem Object Storage | armazenamento de objetos na nuvem | |
| GitHub | githubconsolidado | |
| GitLab | GitLab | |
| HashiCorp Vault | hashicorpvault | |
| Jenkins | jenkins | |
| JIRA | JIRA | |
| Key Protect | proteção de teclas | |
| Nexus | Nexus | |
| Outras ferramentas | persontool | |
| PagerDuty | PagerDuty | |
| Rational Team Concert | racionalteamconcert | |
| Sauce Labs | saucelabs | |
| Secrets Manager | SecretsManager | |
| Slack | slack | |
| SonarQube | sonarqube |
Se você desejar iniciar o desenvolvimento com o seu código-fonte no IBM Cloud Public, configure a integração da ferramenta do GitHub ou a integração da ferramenta do Git Repos and Issue Tracking antes de configurar o Delivery Pipeline.