Modo de implantação avançado

Com a integração padrão do Looker Git, os desenvolvedores do Looker confirmam as alterações na ramificação de desenvolvimento e depois mesclam a ramificação de desenvolvimento na ramificação de produção. Depois, ao implantar no ambiente do Looker, o Looker usa o commit mais recente na ramificação de produção. Consulte a página de documentação Como usar o controle de versões e a implantação para ver o fluxo de trabalho padrão do Git e outras opções para implementações avançadas do Git.

Para implementações avançadas do Git em que você não quer que o commit mais recente da ramificação de produção seja usado no ambiente do Looker, um administrador do Looker pode ativar o modo de implantação avançado. Quando ativado, o modo de implantação avançada permite que um desenvolvedor com permissão deploy especifique um SHA ou uma tag de confirmação diferente para implantar no ambiente de produção do Looker, em vez de usar a confirmação mais recente na ramificação de produção. Se você quiser implantar uma confirmação de uma ramificação diferente, use o webhook do modo de implantação avançado ou o endpoint da API.

O modo de implantação avançado ajuda a consolidar repositórios em fluxos de trabalho do desenvolvedor em vários ambientes, em que cada ambiente aponta para uma versão diferente de uma base de código. Ela também permite que um ou vários desenvolvedores ou administradores tenham mais controle sobre as mudanças implantadas na produção.

Quando o modo de implantação avançado está ativado, o Looker não solicita que os desenvolvedores implantem as alterações na produção. Em vez disso, o Looker solicita que os desenvolvedores mesclem as alterações na ramificação de produção. A partir daí, as alterações só podem ser implantadas das seguintes maneiras:

Como ativar o modo de implantação avançado

Para ativar o modo de implantação avançado:

  1. Navegue até a guia Configuração da página Configurações do projeto selecionando o ícone Configurações no menu.
  2. Marque a caixa de seleção ao lado de Ativar o modo de implantação avançada, na seção Implantação.
  3. Selecione o botão Save Project Configuration para salvar as alterações.

Controle de versão com o modo de implantação avançado

Quando o modo de implantação avançado está ativado, a implantação na produção usando o Looker não é mais uma opção para os desenvolvedores. Em vez disso, quando o desenvolvedor fizer um commit, o botão Git vai solicitar que ele mescle as mudanças na ramificação principal, em vez de solicitar a implantação na produção.

As mudanças são implantadas na produção usando um webhook, a API ou o gerenciador de implantação.

Deployment Manager

Para projetos com o modo de implantação avançado ativado, os desenvolvedores do Looker com a permissão deploy podem usar o Deployment Manager para implantar uma confirmação ou tag no ambiente de produção do Looker.

Para acessar o Deployment Manager, selecione o ícone Implantar no menu suspenso.

O Deployment Manager mostra todas as confirmações e tags que foram implantadas anteriormente no modo de implantação avançado.

Se você ainda não usou o modo de implantação avançado para implantar um commit, clique no botão Selecionar commit para conferir o histórico de confirmações que os desenvolvedores do Looker mesclaram à ramificação de produção.

Para projetos que usaram o modo de implantação avançado para implantar uma confirmação, o histórico de confirmação também mostrará as tags associadas a uma confirmação, se houver, e indicará qual confirmação é a versão atual que está sendo usada para produção.

Se a ramificação de produção tiver commits mais recentes do que os implantados, o Deployment Manager vai mostrar essas informações e a confirmação mais recente que os desenvolvedores do Looker mesclaram à ramificação de produção.

Como implantar uma confirmação do Deployment Manager

Há várias maneiras de implantar uma confirmação pelo Deployment Manager:

  1. Para implantar uma confirmação que ainda não foi implantada, clique no botão Selecionar commit para selecionar todas as confirmações que foram mescladas na ramificação de produção remota. Se você quiser implantar uma confirmação de uma ramificação diferente, use o webhook do modo de implantação avançado ou o endpoint da API.
  2. Para implantar a confirmação mesclada mais recentemente na ramificação de produção remota, clique no botão Implantar mais recente.
  3. Para implantar uma confirmação ou tag já implantada, clique no menu de três pontos Opções no Deployment Manager e depois em Implantar na produção.

Se você escolher uma confirmação que não tenha sido implantada anteriormente, o Deployment Manager exibirá o menu Implantar confirmação. Para implantar uma confirmação do menu Implantar confirmação, siga estas etapas:

  1. Para implantar a confirmação sem atribuir a ela uma tag, selecione Implantar sem inclusão de tags e escolha Implantar no ambiente. Caso contrário, mantenha a opção Tag e implantação selecionada.
  2. Especifique uma tag para a confirmação. Uma tag do Git marca a importância da confirmação no histórico do repositório, como o número ou o nome da versão. Observe o seguinte sobre as tags do Git:

    • As tags do Git precisam ser exclusivas no repositório Git. Não é possível usar a mesma tag para duas confirmações diferentes no repositório.
    • As tags do Git não podem conter espaços ou determinados caracteres especiais. Consulte a documentação de referência do Git para conhecer as regras de nomenclatura de referências no Git.
  3. Também é possível adicionar uma descrição à tag para dar mais detalhes sobre a confirmação.

  4. Selecione Implantar no ambiente para implantar o commit na versão de produção da sua instância do Looker.

Depois de implantar um commit, o Deployment Manager vai marcar o commit como a versão atual no seu ambiente de produção do Looker.

Como implantar com webhooks

Para projetos com o modo de implantação avançado, é possível usar o webhook de implantação para implantar alterações na produção.

Para configurar o webhook de implantação, primeiro adicione um secret do webhook ao projeto do Looker na página Configurações do projeto. Isso garante que somente as partes autorizadas possam acionar o webhook de implantação.

Dois webhooks estão disponíveis para implantar alterações na produção com o modo de implantação avançado ativado. Um webhook é para implantar o cabeçalho de uma ramificação e o outro é para implantar uma tag ou SHA do Git específica.

O webhook para implantar o cabeçalho de uma ramificação usa este formato:

<Looker URL>/webhooks/projects/<LookML project name>/deploy/branch/<Git branch name>

O webhook para implantar um SHA ou uma tag de confirmação usa este formato:

<Looker URL>/webhooks/projects/<LookML project name>/deploy/ref/<commit SHA or tag>

Substitua as informações entre colchetes angulares < > pelas informações específicas do endereço da instância, do projeto do LookML e do nome da ramificação ou da tag SHA/de confirmação. Confira um exemplo de webhook para implantar o nome da tag v1.0 do projeto e_faa na instância docsexamples.dev.looker.com do Looker:

https://docsexamples.dev.looker.com/webhooks/projects/e_faa/deploy/ref/v1.0

Como implantar com a API

Em projetos com o modo de implantação avançado, é possível usar a API Looker para implantar mudanças na produção.

Para implantar com a API, o usuário da API que fizer a chamada precisará ter a permissão deploy. Consulte as páginas de documentação Autenticação da API Looker e Introdução à API para mais informações sobre como autenticar e usar a API Looker.

Para implantar com a API, use o endpoint deploy_ref_to_production. Esse endpoint pode ser chamado de várias maneiras diferentes. Os exemplos a seguir são para os métodos HTTPS e SDK.

HTTPS

Para implantar manualmente usando o endpoint de API deploy_ref_to_production, consulte os exemplos a seguir, que usam o método HTTPS. Para mais informações e exemplos de como chamar manualmente a API usando solicitações CURL, consulte o arquivo readme do GitHub Como autenticar na API (em inglês) ou use o APIs Explorer. É possível instalar o APIs Explorer na sua instância do Looker no Marketplace do Looker.

Use os exemplos a seguir em uma solicitação HTTPS para implantar o cabeçalho de uma ramificação, uma SHA de confirmação específica ou uma tag pelo endpoint de API deploy_ref_to_production:

Implantar o cabeçalho de uma ramificação: <HOST_URL>/api/4.0/projects/<PROJECT_ID>/deploy_ref_to_production?branch=<BRANCH_NAME>

Implantar um SHA de confirmação ou uma tag: <HOST_URL>/api/4.0/projects/<PROJECT_ID>/deploy_ref_to_production?ref=<SHA_OR_TAG>

SDK

Como alternativa, use um dos SDKs do Looker em vez de fazer solicitações manuais à API. Os SDKs lidam com detalhes de autenticação, serialização de parâmetros e respostas e outras questões.

A implantação com o deploy_ref_to_production pelo método do SDK vai ficar assim:

Implantar o cabeçalho de uma ramificação: deploy_ref_to_production(<PROJECT_ID>, {branch: <BRANCH_NAME>})

Implantar um SHA de confirmação ou uma tag: deploy_ref_to_production(<PROJECT_ID>, {ref: <SHA_OR_TAG>})