Modo de implantação avançado

Com a integração padrão do Looker Git, os desenvolvedores do Looker confirmam as mudanças na ramificação de desenvolvimento e, em seguida, as mesclam 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 Usar o controle de versão e a implantação para conferir 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 a confirmação mais recente na sua ramificação de produção seja usada para o 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. Ele também dá a um ou vários desenvolvedores ou administradores um maior 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 mudanças na produção. Em vez disso, o Looker solicita que os desenvolvedores mesclem as mudanças 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. No Looker IDE, navegue até a página Project Configuration selecionando o ícone Settings no menu de ícones e, em seguida, a guia Configuration.
  2. Na página Project Configuration, marque a caixa de seleção ao lado de Enable Advanced Deploy Mode na seção Deployment.
  3. Selecione o botão Save Project Configuration para salvar a mudança.

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

Quando o modo de implantação avançado está ativado, o implantar na produção do Looker não é mais uma opção para os desenvolvedores. Em vez disso, quando o desenvolvedor fizer uma confirmação, 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 que têm a permissão deploy podem usar o gerenciador de implantação para implantar um commit ou uma 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 usando o 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 confirmações mais recentes do que a implantada, o gerenciador de implantação 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 um commit no Gerenciador de implantação:

  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 um commit de uma ramificação diferente, use o modo de implantação avançada webhook ou 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 que já foi 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 foi implantada anteriormente, o gerenciador de implantação vai mostrar o menu Deploy Commit. Para implantar uma confirmação do menu Implantar confirmação, siga estas etapas:

  1. Para implantar o commit sem atribuir uma tag, selecione Deploy without tagging e Deploy to Environment. Caso contrário, mantenha a opção Marcar e implantar 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 um número de versão ou nome da versão. Observe o seguinte sobre as tags do Git:

    • As tags do Git precisam ser exclusivas no repositório. 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 Deploy to Environment 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.

Implantação com webhooks

Para projetos com o modo de implantação avançado, use o webhook de implantação para implantar as mudanças na produção.

Para configurar o webhook de implantação, primeiro adicione um secret do webhook ao projeto do Looker na página Configuração do projeto. A adição de um secret de webhook garante que apenas partes autorizadas possam acionar o webhook de implantação.

Dois webhooks estão disponíveis para implantar mudanças 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 nos 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 de confirmação. Confira um exemplo de webhook para implantar o nome da tag v1.0 do projeto e_faa na instância do Looker docsexamples.dev.looker.com:

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

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 faz a chamada precisa 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. Os exemplos a seguir são para os métodos HTTPS e SDK.

HTTPS

Para implantar manualmente usando o endpoint da 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 readme do GitHub Como fazer a autenticação na API ou use o API Explorer. É possível instalar o API Explorer na sua instância do Looker pelo Looker Marketplace.

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 ou tag de commit: <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 os detalhes de autenticação, a serialização de parâmetros e respostas e outras questões.

A implantação com o deploy_ref_to_production e o método do SDK fica assim:

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

Implantar um SHA ou tag de commit: deploy_ref_to_production(<PROJECT_ID>, {ref: <SHA_OR_TAG>})