Automatizar as implantações do App Engine com o Cloud Build
Neste guia de início rápido, mostramos como implantar automaticamente um app armazenado no Cloud Source Repositories no App Engine após uma nova confirmação.
Antes de começar
- Conclua as etapas em
Criar um repositório de código no Cloud Source Repositories.
Depois de concluir esse guia, você terá um aplicativo que pode ser implantado no App Engine.
Enable the App Engine Admin, Cloud Build APIs.
Conceder ao App Engine acesso à conta de serviço do Cloud Build
O Cloud Build usa uma conta de serviço para implantar seu código. As permissões padrão dessa conta não permitem determinadas ações, como a implantação no App Engine.
Ative sua conta de serviço para implantar no App Engine concedendo à conta outros papéis de gerenciamento de identidade e acesso (IAM, na sigla em inglês):
No Console do Google Cloud, abra a página "Configurações do Cloud Build":
Abrir a página "Configurações do Cloud Build"
Você verá a página Permissões da conta de serviço:
Defina o status do papel Administrador do App Engine como Ativo.
Implantar o aplicativo
Em uma janela de terminal, acesse o diretório que contém o repositório:
cd hello-world
Implante o app de amostra:
gcloud app deploy app.yaml
Verifique se o app está em execução:
gcloud app browse
Em caso positivo, o navegador exibirá a mensagem
Hello, World!
.
Criar um arquivo cloudbuild.yaml
Em uma janela de terminal, acesse o diretório que contém o repositório:
cd hello-world
Usando um editor de texto, crie um arquivo chamado
cloudbuild.yaml
e cole as seguintes informações de configuração:steps: - name: "gcr.io/cloud-builders/gcloud" args: ["app", "deploy"] timeout: "1600s"
Adicionar o arquivo cloudbuild.yaml ao seu repositório
Adicione
cloudbuild.yaml
ao repositório:git add .
Confirme o arquivo com um comentário descrevendo o histórico desta ação:
git commit -m "Add cloudbuild.yaml file"
Usando o comando
git push
, adicione o conteúdo do repositório Git local ao Cloud Source Repositories:git push origin master
Criar um acionador de versão
No Console do Google Cloud, abra a página Gatilhos do Cloud Build.
Se seu projeto do Google Cloud não estiver selecionado, clique em Selecionar um projeto e, em seguida, no nome do projeto do Google Cloud.
Clique em Criar gatilho.
A página Criar gatilho é aberta.
Preencha as seguintes opções:
- No campo Nome, digite
app-engine-test
. - Em Evento, selecione Mover para uma ramificação.
- Em Origem, selecione
hello-world
como Repositório e^master$
como Ramificação. - Em Configuração, selecione arquivo de configuração do Cloud Build (yaml ou json).
- No campo local do arquivo de configuração do Cloud Build, digite
cloudbuild.yaml
depois do/
.
- No campo Nome, digite
Clique em Criar para salvar o gatilho de compilação.
Enviar uma alteração para seu aplicativo
Em uma janela de terminal, use um editor de texto para atualizar o arquivo
main.py
colando o seguinte código:#!/usr/bin/env python import webapp2 class MainHandler(webapp2.RequestHandler): def get(self): self.response.write('I update automatically!') app = webapp2.WSGIApplication([ ('/', MainHandler) ], debug=True)
Adicione o arquivo ao Git:
git add .
Confirme o arquivo com um comentário descrevendo o histórico desta ação:
git commit -m "Update app to demonstrate build triggers"
Usando o comando
git push
, adicione o conteúdo do repositório Git local ao Cloud Source Repositories:git push origin master
Visualizar sua versão em andamento
No Console do Google Cloud, abra a página Gatilhos do Cloud Build.
Se seu projeto do Google Cloud não estiver selecionado, clique em Selecionar um projeto e, em seguida, no nome do projeto do Google Cloud.
Clique em Histórico.
Será aberta uma lista de todas as versões. Na parte superior, há uma nova entrada que representa a versão iniciada depois que alteração foi enviada para o Cloud Source Repositories. Quando a versão estiver pronta, aparecerá uma marca de seleção verde ao lado da entrada de versão.
Testar novamente seu aplicativo
Em uma janela de terminal, abra seu aplicativo:
gcloud app browse
O navegador agora exibe a mensagem I update automatically!
.
Limpar
Para evitar cobranças na sua conta do Google Cloud pelos recursos usados nesta página, siga estas etapas.
Excluir o acionador de versão
No Console do Google Cloud, abra a página Gatilhos do Cloud Build.
Se seu projeto do Google Cloud não estiver selecionado, clique em Selecionar um projeto e, em seguida, no nome do projeto do Google Cloud.
Na mesma linha do gatilho que você quer excluir, clique em Mais more_vert e depois selecione Excluir.
Excluir o repositório
No console do Google Cloud, abra a página Todos os repositórios do Cloud Source Repositories.
Mantenha o ponteiro do mouse sobre o repositório que você quer excluir e clique em Configurações settings.
A página Configurações gerais é aberta.
Clique em Excluir este repositório delete.
A caixa de diálogo Remover repositório é aberta.
Digite o nome do repositório que você quer excluir.
Clique em Excluir.
A seguir
- Saiba mais sobre o Cloud Build.