Reverter uma atualização usando a CLI
Este tutorial o orienta na reversão de uma implantação usando a CLI. Ao concluir este tutorial, você aprenderá a reverter alterações implementadas em uma configuração de arquitetura implementável em um projeto. Ao final deste tutorial, sua configuração de arquitetura implementável corresponderá à última versão implementada com sucesso.
Imagine que você é um desenvolvedor de software da empresa Example Corp. Seu arquiteto de infraestrutura descobriu a arquitetura implementável do Cloud Automation for Code Engine, e seu profissional de engenharia de automação de nuvem
a personalizou para atender plenamente às suas necessidades de negócios. Você implementou essa arquitetura personalizada chamada Example Corp's infrastructure em duas regiões. Em seguida, seu profissional de engenharia de automação
de nuvem lançou uma nova versão do Example Corp's infrastructure, então você atualizou suas implantações em execução para usar a versão mais recente. Recentemente, sua equipe descobriu um bug na região us-south. O bug
é novo, portanto, você deseja reverter a implantação da região us-south para o que era anteriormente, pois você sabe que essa implantação não incluía o bug.
Este tutorial usa um cenário fictício para ajudá-lo a entender como reverter alterações implantadas em uma configuração de arquitetura implantável em seu projeto. Ao concluir o tutorial, adapte cada etapa para atender às necessidades de sua organização.
Antes de Iniciar
-
Crie uma arquitetura implementável personalizada chamada
Example Corp's infrastructuree integre-a a um catálogo privado chamadoExample Corp catalog. -
Implante a infraestrutura da Example Corp em duas regiões usando um projeto chamado
Example Corp infrastructure. -
Atualize a infraestrutura da Example Corp com uma nova versão no catálogo privado e adicione duas opções de banco de dados que seus usuários podem escolher. Valide a versão no catálogo privado para que a nova versão esteja no estado
Validated draft. -
Atualize seu projeto para usar a versão mais recente do site
Example Corp's infrastructuree implemente as alterações.A versão mais recente do
Example Corp's infrastructureinclui opções de banco de dados que podem ser implantadas a partir do seu projetoExample Corp infrastructure. A conclusão deste tutorial não afeta nada em seu projeto, exceto a configuração doexample-corp-us-south. Se necessário, você pode desfazer a implantação das outras configurações do seu projeto separadamente, inclusive os bancos de dados. -
Para concluir este tutorial, instale a CLI do IBM Cloud.
Encontrar o ID do projeto, o ID da configuração e a versão para a qual você deseja reverter
Antes de executar os comandos da CLI para reverter suas alterações para uma versão implantada anteriormente, você precisa do ID da configuração example-corp-us-south e do ID do projeto Example Corp infrastructure que
contém a configuração.
Para localizar essas IDs e a versão usando a CLI, execute os seguintes comandos:
-
Faça login em IBM Cloud executando o seguinte comando
ibmcloud logincomando. Se você tiver várias contas, será solicitado a selecionar qual conta usar:ibmcloud login \ --ssoUse a opção
--ssopara fazer login pelo console. Se fizer isso, o console será aberto em um navegador da Web para que você faça login. Em seguida, é gerado um código para você colar na CLI. -
Localize o ID do projeto
Example Corp infrastructureem sua conta executando o seguinte comandoibmcloud project listcomando:ibmcloud project list \ --all-pagesUse a opção
--all-pagespara recuperar todos os projetos em sua conta. -
Use o ID do projeto
Example Corp infrastructuree o nome da configuração para encontrar o ID da configuração. Execute o seguinte comandoibmcloud project configspara fazer isso:ibmcloud project configs \ --project-id <Example-Corp-infrastructure-project-id> \ --all-pages -
Use o ID do projeto
Example Corp infrastructuree o ID da configuraçãoexample-corp-us-southpara localizar as versões dessa configuração no projeto. Execute o seguinteibmcloud project config-versionscomando:ibmcloud project config-versions \ --project-id <Example-Corp-infrastructure-project-id> \ --id <example-corp-us-south-id>Duas versões da configuração
example-corp-us-southdevem ser listadas. A versão dois está no estadodeployed, enquanto a versão um está no estadosuperseded. A versão mais antiga é a primeira que foi implantada. Essa é a versão para a qual você deseja reverter.
Recupere a versão para a qual você deseja reverter
Agora que você tem os IDs e a versão para a qual deseja reverter, execute o seguinte comando ibmcloud project config-version para recuperar a versão específica de example-corp-us-south. Certifique-se de incluir o parâmetro para retornar a saída no formato JSON:
ibmcloud project config-version \
--project-id <Example-Corp-infrastructure-project-id> \
--id <example-corp-us-south-id> \
--version 1 \
--output json
Copie o conteúdo do bloco definition na saída JSON e salve-o em um arquivo definition.json. O conteúdo do definition inclui os valores de entrada que você forneceu, a autorização que você usou
para conceder ao projeto acesso para implantar na sua conta de destino, o nome da sua configuração e o ID do localizador para Example Corp's infrastructure que identifica a arquitetura implantável no catálogo privado. Considere-o
como um instantâneo da versão 1 do site example-corp-us-south com todas as entradas e informações que você forneceu em seu projeto, por exemplo:
{
"authorizations": {},
"compliance_profile": {},
"description": "",
"inputs": {
"prefix": "us-south",
"region": "us-south"
},
"locator_id": "<Example-Corp-catalog-locator-id>",
"name": "example-corp-us-south",
"environment_id": "<Example-Corp-infrastructure-dev-id>"
}
Atualizar a configuração para usar a definição da versão anterior
Agora que você tem a definição da versão 1 de example-corp-us-south, atualize a configuração para usar essa definição. Isso atualiza o site example-corp-us-south para que ele fique exatamente como você o configurou
quando implantou a versão 1. Execute o seguinte comando ibmcloud project config-update para example-corp-us-south:
ibmcloud project config-update \
--project-id <Example-Corp-infrastructure-project-id> \
--id <example-corp-us-south-id> \
--definition "$(cat definition.json)"
Validar, aprovar e implementar as alterações
Agora que o site example-corp-us-south foi atualizado para usar a definição da primeira versão da configuração, é hora de validar, aprovar e implementar as alterações. Você pode usar o console para fazer isso ou executar os seguintes comandos da CLI:
-
Valide
example-corp-us-southexecutando o seguinte comandoibmcloud project config-validatecomando:ibmcloud project config-validate \ --project-id <Example-Corp-infrastructure-project-id> \ --id <example-corp-us-south-id> -
Aprovar
example-corp-us-southexecutando o seguinte comandoibmcloud project config-approvecomando:ibmcloud project config-approve \ --project-id <Example-Corp-infrastructure-project-id> \ --id <example-corp-us-south-id> \ --comment <Rolling back to the previously deployed version> -
Implante o site
example-corp-us-southexecutando o seguinte comandoibmcloud project config-deploycomando:ibmcloud project config-deploy \ --project-id <Example-Corp-infrastructure-project-id> \ --id <example-corp-us-south-id>
Depois que a implementação for concluída com êxito, o site example-corp-us-south será revertido para a primeira versão dessa configuração que você implementou a partir do projeto. Sua equipe agora pode investigar o bug e lançar
uma atualização para Example Corp's infrastructure, se necessário.