Esta página descreve como configurar elementos do seu projeto para integrá-los ao Git para controle de versões.
Configurações do projeto
Você precisa ser um administrador do Looker para alterar as opções na página Configurações do projeto. Os desenvolvedores do Looker que não são administradores podem ver a página Configurações do projeto, mas não podem alterar as opções nela.
A página Configurações do projeto apresenta opções de configuração para seu projeto. Para ver essa página, abra seu projeto e selecione o ícone Configurações no menu de ícones à esquerda.
Aqui, você pode acessar três seções:
Configuração
Na guia Configuração da página Configurações do projeto, é possível definir as seguintes configurações:
- Nome: o nome do seu projeto. Você pode renomear seu projeto editando o texto e clicando no botão Save Project Configuration. Consulte a página de documentação Acesso e edição de informações do projeto para mais detalhes.
Git Production Branch Name: especifique o nome da ramificação do Git a ser usada como o destino da mesclagem de branches de desenvolvimento do seu projeto. O branch do Git precisa existir em seu repositório Git. Consulte a seção Nome da ramificação de produção do Git nesta página para mais informações.
Qualidade do código: determina se os desenvolvedores precisam executar o LookML Validator no projeto antes de confirmar as mudanças. A Qualidade do código tem as seguintes opções:
- Exigir correção de erros e avisos antes de realizar a confirmação: os desenvolvedores do Looker só podem confirmar as alterações depois de executar o LookML Validator e resolver todos os erros e avisos. Essa é a configuração recomendada.
- Exigir apenas a correção de erros antes de realizar a confirmação: os desenvolvedores do Looker só podem confirmar as alterações depois de executar o LookML Validator e resolver todos os erros. Os desenvolvedores podem confirmar alterações quando há avisos. Embora não seja recomendada, essa opção pode ser útil, por exemplo, se novos avisos forem introduzidos para funcionar com o LookML após uma atualização do Looker.
- Permitir a confirmação de códigos corrompidos: os desenvolvedores do Looker podem confirmar alterações sem executar o LookML Validator e independentemente de erros ou avisos existirem no LookML. Esta opção não é recomendada, pois pode resultar em LookML que não funciona ou que produz resultados errôneos.
Exigir que os testes de dados sejam aprovados antes de implantar este projeto na produção: exige que os desenvolvedores executem testes de dados antes de implantar qualquer alteração. Se os testes de dados forem aprovados, o ambiente de desenvolvimento integrado permitirá que o desenvolvedor implante alterações na produção. Consulte a página de documentação do parâmetro
test
para informações sobre como configurar testes de dados no projeto LookML. Consulte a página de documentação Como usar o controle de versões e a implantação para mais informações sobre como executar testes de dados no projeto.Git Integration: especifica os níveis de integração com seu provedor Git. Consulte Opções de integração do Git para ver mais detalhes.
Ativar o modo de implantação avançada: uma configuração que, quando ativada, permite que os usuários implantem qualquer SHA, tag ou ramificação na produção. Consulte a página de documentação do Modo de implantação avançada para mais informações sobre o uso do controle de versões com o Modo de implantação avançado ativado.
Webhook Deploy Secret: configura a autenticação para implantar alterações na produção da sua instância do Looker. Consulte a página da documentação Como configurar o secret de implantação do webhook para ver mais detalhes.
Redefinir conexão Git: esse botão abre a janela Configure Git, em que você pode atualizar as configurações de conexão para seu repositório Git.
A redefinição da conexão do Git preservará o histórico do Git para o branch mestre. Ele também preservará o histórico da ramificação pessoal de cada desenvolvedor do Looker quando sincronizar o modo de desenvolvedor. Para preservar o histórico de todos os branches, consulte a página Práticas recomendadas de migração para um novo repositório Git.
Excluir projeto: esse botão exclui o projeto, removendo todo o LookML do projeto em todos os ambientes de desenvolvimento e produção na instância do Looker.
Resumo do Git: esta seção mostra a configuração do Git do projeto e as informações da ramificação do Git do usuário atual.
Nome da ramificação de produção do Git
Com a integração Git padrão do Looker, todos os desenvolvedores do Looker mesclam as mudanças em uma ramificação chamada master
. Use o campo Git Production Branch Name para especificar qual ramificação do repositório do Git deve ser usada como a ramificação de destino na qual as ramificações dos desenvolvedores do Looker serão mescladas. Consulte a página de documentação Como usar o controle de versão e implantação para ver o fluxo de trabalho padrão do Git e outras opções para implementações avançadas do Git.
Para projetos existentes, faça o seguinte antes de alterar o nome do branch de produção do Git:
- Peça a todos os desenvolvedores do projeto do Looker para confirmar as alterações e mesclar as ramificações com a ramificação de produção atual e pause o trabalho até que o nome da ramificação de produção do Git seja atualizado e salvo na configuração do projeto do Looker.
- Se o projeto usar solicitações de pull integradas, finalize e mescle as solicitações de pull abertas, conforme apropriado.
- Realize todas as preparações necessárias no provedor do Git, como criar uma nova ramificação no seu repositório, renomear a ramificação padrão do Git existente ou realizar as ações necessárias para que a Looker possa usá-la como uma ramificação de destino para mesclagem. No mínimo, você precisa verificar se a ramificação que quer usar é uma ramificação existente no repositório Git.
Para alterar o branch do Git que seu projeto usa como o destino de mesclagem dos branches de desenvolvimento:
- Selecione o ícone Settings no menu à esquerda para exibir a página Project Settings. A guia Configuração será aberta por padrão.
- No campo Git Production Branch Name, insira o nome da ramificação do Git que você quer usar como a ramificação de produção do seu projeto do Looker.
- Role para baixo e clique no botão Save Project Configuration para salvar a alteração.
Importar credenciais
Na seção Importar credenciais, você pode gerenciar as credenciais de autenticação para repositórios remotos privados. Consulte a página de documentação Importação de arquivos de outros projetos para mais detalhes.
Gerenciamento de branches
Na guia Branch Management da página Projects Settings, você vê todas as ramificações do Git associadas ao projeto. Consulte a página da documentação Como usar o controle de versão e implantação para mais detalhes.
Opções de integração do Git
Depois que você configurar a conexão Git, o Looker usará seu provedor Git para gerenciar os arquivos de origem do LookML, como descrito na página de documentação Como usar o controle de versões e a implantação.
Se você é um administrador do Looker, pode configurar opções adicionais para a integração do Looker com o Git usando as opções de integração do Git na guia Configuração da página Configurações do projeto:
- Desativado: o Looker não exibe links externos para a interface do seu provedor do Git.
- Mostrar links: o Looker fornecerá links externos para a interface do seu provedor do Git. Assim, seus desenvolvedores poderão ver o projeto nessa interface. O Looker também vai fornecer links para cada arquivo do projeto, para que os desenvolvedores possam ver o histórico do arquivo e as informações de culpa do Git na interface do provedor do Git. Consulte a seção Como integrar links externos ao seu provedor Git para mais informações sobre os links.
- Solicitações de envio recomendadas: além de fornecer links externos para a interface do seu provedor do Git, o Looker oferecerá aos desenvolvedores a opção de enviar uma solicitação de envio para que outro desenvolvedor possa aprovar mudanças antes de adicioná-las ao projeto. Consulte a seção Como integrar solicitações de envio para seu projeto para informações sobre como fazer a configuração.
- Solicitações de envio obrigatórias: o mesmo que acima, exceto que os desenvolvedores do LookML precisam abrir uma solicitação de envio para enviar alterações ao projeto. Consulte a seção Como integrar solicitações de envio para seu projeto para informações sobre como fazer a configuração.
Para salvar as configurações de integração do Git, role para baixo e clique em Save Project Configuration na seção Deployment.
Como integrar links externos ao seu provedor Git
Se você tiver ativado qualquer uma das opções extras de integração do Git (Show Links, Pull Requests Recommended ou Pull Requests Required, o Looker fornecerá links externos para a interface do seu provedor do Git. Esses links externos abrem uma nova guia do navegador para o site do seu provedor Git.
Para ver esses links externos, os desenvolvedores precisam ter uma conta do seu provedor Git e ter acesso ao repositório Git do projeto.
No menu Opções de arquivo de três pontos de cada um dos seus arquivos LookML, o Looker fornece links para o site do seu provedor Git para exibir o arquivo, as informações de responsabilidade do Git para o arquivo e o histórico de confirmação do arquivo.
No painel Git Actions, também é possível usar a opção View Project on <Git provider>
para abrir os arquivos do projeto no site do seu provedor Git.
Como integrar solicitações de envio ao projeto
Com a integração Git padrão do Looker, os desenvolvedores confirmam as alterações na ramificação de desenvolvimento e a mesclam na ramificação de produção. Em seguida, quando você implanta no ambiente do Looker, ele usa a confirmação mais recente na ramificação de produção. Consulte a página de documentação Como usar o controle de versão e implantação para ver o fluxo de trabalho padrão do Git e outras opções para implementações avançadas do Git.
Em vez de permitir que os desenvolvedores do Looker mesclem o branch de desenvolvimento no branch de produção do Looker, configure o projeto com a opção Solicitações de envio recomendadas ou Solicitações de envio obrigatórias:
- Solicitações de envio recomendadas: depois que um desenvolvedor confirma as alterações na ramificação de desenvolvimento, o botão do Git no ambiente de desenvolvimento integrado do Looker solicita que o desenvolvedor abra uma solicitação de envio para mesclar a ramificação de desenvolvimento com a ramificação de produção. O desenvolvedor pode abrir uma solicitação de envio para outros desenvolvedores do Looker analisarem e aprovarem na interface da Web do provedor do Git. Ou o desenvolvedor pode usar a opção Implantar para produção do painel do Git Actions para pular a criação de uma solicitação de envio e implantar as mudanças na produção. A opção Deploy to Production não estará disponível se o projeto estiver ativado com o modo de implantação avançada.
- Solicitações de envio obrigatórias: depois que um desenvolvedor confirma as alterações na ramificação de desenvolvimento, o botão do Git no ambiente de desenvolvimento integrado do Looker solicita que o desenvolvedor abra uma solicitação de envio. O desenvolvedor precisa abrir uma solicitação de envio para mesclar a ramificação de desenvolvimento na de produção. Depois, outros desenvolvedores do Looker podem analisar e aprovar a solicitação de envio na interface da Web do provedor do Git.
O Looker é compatível com a integração da solicitação de envio aos seguintes provedores Git:
- GitHub
- GitLab
- Bitbucket Cloud
- Bitbucket Server (antigo "Stash")
Veja outras observações sobre o uso de solicitações de envio com o Looker:
Para abrir solicitações de envio, os desenvolvedores precisam ter uma conta no provedor Git e acesso ao repositório Git do projeto.
Se o recurso Lista de permissões de IP estiver ativado na instância, para integrar solicitações pull a qualquer projeto do LookML, adicione à lista de permissões o intervalo de endereços IP a partir dos quais seu provedor Git faz solicitações de saída. Por exemplo, os endereços IP atuais do GitHub estão listados no registro de alterações do GitHub. Os IPs estão sujeitos a alterações e serão diferentes para outros provedores Git.
Se você tiver ativado o modo de implantação avançada, não será necessário configurar um webhook na seção Como configurar o projeto com solicitações de envio integradas, já que o modo de implantação avançada separa as funções de mesclagem e implantação.
Se um desenvolvedor do Looker tiver emitido uma solicitação de envio que você quer reverter, consulte a postagem Como reverter solicitações de envio do Looker pelo GitHub para mais informações.
As solicitações de envio do Git podem permitir o uso de uma instância de teste para o Looker. Assim, é possível ter uma instância de preparo e uma instância de produção com solicitações de envio ativadas nela. Todo o desenvolvimento e a revisão do código podem ser feitos no ambiente de preparo, e o código revisado pode ser implantado na instância de produção conforme você quiser. Para configurar isso, consulte a postagem na Comunidade Fluxo de trabalho do Git usando um repositório em várias instâncias: desenvolvimento, preparo e produção.
O Looker mescla as alterações de uma ramificação do desenvolvedor do Looker na ramificação de produção usando o método de mesclagem (merge commit). Ao usar a interface do seu provedor do Git, verifique se os desenvolvedores não usam a mesclagem do squash nem a mesclagem de rebase. Consulte a seção Opções de mesclagem na interface do provedor do Git para mais informações.
Como configurar o projeto com solicitações de envio integradas
Para configurar seu projeto do Looker com solicitações de envio do Git:
- No projeto, selecione Project Settings no menu do ícone à esquerda.
- Na seção Integração do Git da guia Configuração, selecione Solicitações de envio recomendadas ou Solicitações de envio necessárias.
- Como opção, se você quiser configurar um webhook de implantação automática na interface do seu provedor Git, copie as informações do webhook e cole-as em um arquivo de texto. Se o projeto estiver configurado para usar o modo de implantação avançada, pule esta etapa. Você também pode decidir mais tarde e voltar às configurações do projeto para ver as informações do webhook.
- Também é possível configurar um secret de implantação do webhook para autenticar um webhook de implantação automática do seu provedor Git ou um webhook do modo de implantação avançada. Para criar um secret do webhook, clique em Definir Secret do webhook. Copie o segredo de implantação e cole-o em um arquivo de texto para usar quando você adicionar o webhook à interface do seu provedor Git. Você também pode decidir mais tarde e voltar às configurações do projeto para adicionar um segredo de implantação. Consulte a página de documentação Como configurar o secret de implantação do webhook para mais informações.
- Clique em Save Project Configuration.
Agora, sempre que um desenvolvedor do Looker confirmar alterações no seu projeto, o ambiente de desenvolvimento integrado do Looker exibirá o botão Abrir solicitação pull. O botão abre uma nova guia do navegador diretamente na nova página de solicitação de envio no site do seu provedor Git.
Depois de configurar o projeto do Looker para usar solicitações de envio, siga um destes procedimentos para configurar como as confirmações são implantadas no ambiente de produção:
- Para implantar automaticamente as confirmações mais recentes mescladas na ramificação de produção, use a interface do seu provedor do Git para adicionar um webhook, conforme descrito na próxima seção desta página.
- Para especificar manualmente quais ramificações ou confirmações são implantadas, ative o modo de implantação avançada. Consulte a página de documentação do Modo de implantação avançada para informações sobre como ativar e gerenciar o modo de implantação avançada.
Como adicionar um webhook ao provedor Git
Para projetos do Looker ativados para solicitações de envio, é possível configurar um webhook de implantação na interface do provedor do Git. Esse webhook acionará o Looker para implantar a confirmação mais recente da ramificação de produção sempre que você mesclar uma solicitação de envio na interface do provedor do Git.
Na maioria dos casos, não convém configurar um webhook de implantação automática se o projeto estiver configurado para usar o modo de implantação avançada. O modo de implantação avançada permite selecionar a confirmação e o branch que você quer implantar. Portanto, na maioria dos casos, a configuração de um webhook de implantação automática anularia os recursos do modo de implantação avançada.
Para adicionar um webhook de implantação automática na interface do provedor do Git, primeiro acesse as configurações do projeto no Looker clicando no ícone de configurações no menu de ícones à esquerda. Em seguida, copie o webhook da seção Git Integration.
O webhook assume o formato <instance_url>/webhooks/projects/<project_name>/deploy
.
Substitua <instance_url>
pelo URL da sua instância do Looker. Por exemplo, se o URL da instância do Looker for example.looker.com
e o nome do projeto for e_faa
, o webhook será assim:
https://example.looker.com/webhooks/projects/e_faa/deploy
Nas configurações do projeto do Looker, também é possível receber um secret de implantação do webhook para autenticar as integrações Git do projeto com seu provedor Git. Consulte a página de documentação Como configurar o secret de implantação do webhook para mais informações.
Assim que tiver o URL do webhook e o segredo de implantação do webhook, insira-os na interface do provedor do Git. Se o provedor Git for o GitHub, siga estas etapas:
- Acesse as configurações do repositório do seu projeto no repositório do GitHub.
- Nas configurações do repositório, clique em Webhooks. Clique em Add Webhook para abrir a janela Add Webhook.
- Na caixa de texto URL de payload, cole as informações do webhook que você copiou da seção Integração do Git no Looker.
- Também é possível adicionar um secret de implantação do webhook que autentique as integrações do Git do projeto com o provedor do Git. Copie o secret de implantação das configurações do seu projeto do LookML e cole-o na caixa de texto Secret na interface do provedor do Git. Consulte a página de documentação Como configurar o secret de implantação do webhook para mais informações.
- Selecione a opção Apenas o evento de push no campo Quais eventos você quer acionar este webhook?.
- Clique em Add webhook.
Como usar um webhook de implantação para extrair de um repositório Git remoto
Quando as solicitações de pull são ativadas para seu projeto do LookML (e os webhooks de implantação não são automatizados), você pode ver que o LookML que você vê no modo de produção do Looker não corresponde ao LookML na ramificação mestre do seu repositório Git. Isso pode ocorrer nas seguintes situações:
- Quando as solicitações de envio estão ativadas para o repositório
- Quando o LookML for editado fora do ambiente de desenvolvimento do Looker, como:
- No próprio repositório Git
- Em outra instância do Looker, como uma instância de preparo
É possível sincronizar a ramificação de produção do Looker com a ramificação mestre do repositório usando um webhook de implantação:
Abra uma nova guia do navegador e digite o seguinte URL, substituindo
<instance_url>
pelo URL da instância do Looker e<project_name>
pelo nome do projeto do LookML:<instance_url>/webhooks/projects/<project name>/deploy
Depois que você executar o URL de implantação do webhook, uma página da Web em branco exibirá uma mensagem de êxito semelhante a esta:
{"operations":[{"error":false,"error_code":0,"command":"Checkout Branch #\u003cLooker::GitBranch:0x5798672b\u003e","node_id":728,"results":["Success"]},{"error":false,"error_code":0,"command":"jgit revert_repo","node_id":728,"results":["Success"]}],"new_head":"05f772af48709fc2799fefe408e3fdd895a63284","old_head":"77412cad9fd7ed3eed1627afa201fdf7dcb97dd1"}
Agora seu modo de produção no Looker foi atualizado para refletir a ramificação mestre do Git. Sua ramificação de desenvolvedor pessoal e ramificações compartilhadas não são afetadas.
Como extrair de um repositório Git remoto para webhooks com secrets de implantação
Se o projeto do LookML também exigir um secret de implantação do webhook para enviar as alterações do branch mestre para o branch de produção, você receberá um dos seguintes erros ao sincronizar o branch de produção com o branch mestre do repositório usando o método descrito na seção anterior, Como usar um webhook de implantação para extrair de um repositório Git remoto:
{"error":"Uh oh! Something went wrong."}
Ou:
{"error":"Not found."}
Em vez de usar o webhook de implantação, execute o comando cURL a seguir no seu terminal com a chave secreta do webhook. Lembre-se de substituir os seguintes campos:
- Substitua
<instance_URL>
pelo URL da instância do Looker. - Substitua
<deploy_secret>
pela chave secreta de implantação do seu projeto. - Substitua
<project_name>
pelo nome do seu projeto do LookML.
curl -i -X POST -H "X-Looker-Deploy-Secret:<deploy_secret>" https://<instance_url>/webhooks/projects/<project_name>/deploy
Por exemplo, se você sincronizar uma ramificação de produção do ecommerce_project na instância Brettcase com a ramificação mestre do repositório:
curl -i -X POST -H "X-Looker-Deploy-Secret:123123123secretgoeshere123123123" https://brettcase.looker.com/webhooks/projects/ecommerce_project/deploy
Opções de combinação na interface do provedor Git
Se o projeto do Looker for integrado às solicitações de envio, os desenvolvedores usarão a interface do provedor do Git para enviar solicitações de envio e mesclar as alterações na ramificação de produção.
O Looker é compatível com o método de combinação de mesclagem para mesclar as alterações de uma ramificação de desenvolvimento na sua ramificação de produção. No entanto, a interface do provedor do Git pode mostrar outras opções de mesclagem, como Squash e mesclagem ou Rebase e mesclagem.
O Looker não é compatível com a fusão de squash ou a mesclagem de realocação. Por isso, os desenvolvedores precisam evitar o uso dessas opções. Se possível, a prática recomendada é desativar essas opções para seu repositório. Para desativar essas opções em um repositório do GitHub, siga estas etapas:
Navegue até a guia Configurações para acessar as configurações do repositório do seu projeto no GitHub.
DICA: para projetos configurados com a integração do Git, é possível usar a opção Ver projeto no Git no menu Git do projeto no Looker.
Nas configurações do repositório, clique em Opções no menu de navegação à esquerda.
Role para baixo até a seção Merge button e deixe marcada apenas a opção Allow merge commits. Desmarque as opções Permitir mesclagem de squash e Permitir mesclagem de rebase.
Depois que você desmarcar essas opções, elas não ficarão disponíveis quando alguém mesclar uma ramificação no repositório.
keyboard_arrow_leftComo configurar e testar uma conexão do Git
Como configurar o secret de implantação do webhookkeyboard_arrow_right