Esta página descreve como configurar elementos do seu projeto para serem integrados ao Git para controle de versões.
Configurações do projeto
Para ver as configurações do projeto, abra o projeto e selecione o ícone Settings no menu do Looker IDE.
Aqui é possível acessar as três guias Configurações do projeto:
Configuração
A guia Configuration da página Projects Settings abre a página Project Configuration. Na página Configuração do projeto, é possível definir as seguintes configurações:
- Nome: o nome do projeto. Para renomear seu projeto, edite o texto e clique no botão Save Project Configuration. Consulte a página de documentação Como acessar e editar informações do projeto para mais detalhes.
Nome da ramificação de produção do Git: especifique o nome da ramificação do Git a ser usada como destino da mesclagem para as ramificações de desenvolvimento do projeto. A ramificação Git precisa existir no 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 qualquer alteração. A qualidade do código tem as seguintes opções:
- Corrigir erros e avisos antes de confirmar: os desenvolvedores do Looker só podem confirmar as mudanças depois de executar o validador do LookML e resolver todos os erros e avisos. Essa é a configuração recomendada.
- Exigir apenas a correção de erros antes da confirmação: os desenvolvedores do Looker só podem confirmar as mudanças depois de executar o validador do LookML e resolver todos os erros. Os desenvolvedores podem confirmar mudanças quando houver avisos. Embora não seja recomendada, essa opção pode ser útil, por exemplo, se novos avisos forem introduzidos no LookML funcional após uma atualização do Looker.
- Permitir a confirmação de código corrompido: os desenvolvedores do Looker podem confirmar alterações sem executar o validador do LookML e independentemente de haver erros ou avisos no LookML. Essa opção não é recomendada porque o LookML pode não funcionar ou produzir resultados incorretos.
Exigir que os testes de dados sejam aprovados antes de implantar este projeto na produção: se o projeto do LookML tiver um ou mais parâmetros
test
, essa opção exige que os desenvolvedores executem os testes de dados antes de implantar qualquer alteração. Se os testes de dados forem aprovados, o ambiente de desenvolvimento integrado vai permitir que o desenvolvedor implante mudanças na produção. Consulte a página de documentação do parâmetrotest
para saber como configurar testes de dados no projeto do LookML. Consulte a página de documentação Como usar o controle de versões e a implantação para informações sobre como executar testes de dados no seu projeto. Por padrão, a opção Exigir que os testes de dados sejam aprovados antes de colocar este projeto em produção está ativada para novos projetos do LookML.Integração com o Git: especifica os níveis de integração com o provedor do Git. Consulte as 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çado para mais informações sobre como usar o controle de versões com o Modo de implantação avançado ativado.
Secret de implantação de webhook: configura a autenticação para implantar alterações na produção na instância do Looker. Consulte a página de documentação Como configurar o segredo de implantação do webhook para mais detalhes.
Reset Git Connection: esse botão abre a janela Configure Git, em que você pode atualizar as configurações de conexão do repositório Git.
Redefinir a conexão do Git preserva o histórico do Git para a ramificação principal. Ele também vai preservar o histórico da ramificação pessoal de cada desenvolvedor do Looker depois que eles sincronizarem o modo de desenvolvimento. Para preservar o histórico de todas as ramificações, consulte a página de práticas recomendadas Migrar para um novo repositório do Git.
Excluir projeto: exclui o projeto, removendo todo o LookML do projeto em todos os ambientes de desenvolvimento e produção da sua 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 padrão do Looker Git, todos os desenvolvedores do Looker mesclam as mudanças em uma ramificação principal chamada master
. Use o campo Git Production Branch Name para especificar qual ramificação do repositório do Git o Looker deve usar como a ramificação de destino em que as ramificações dos desenvolvedores do Looker são mescladas. 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 projetos existentes, considere fazer o seguinte antes de alterar o nome da ramificação de produção do Git:
- Peça a todos os desenvolvedores do projeto do Looker para fazer commit das alterações e mesclar as ramificações com a ramificação de produção existente. Em seguida, 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.
- Caso seu projeto use solicitações de envio integradas, finalize e mescle todas as solicitações de envio abertas, conforme apropriado.
- Faça todos os preparativos necessários no provedor Git, como criar uma nova ramificação no repositório, renomear a ramificação padrão atual do Git ou qualquer ação necessária para preparar a ramificação para que o Looker possa usá-la como destino para mesclagem. No mínimo, você precisa verificar se a ramificação que você quer usar já existe no repositório do Git.
Para alterar a ramificação do Git que seu projeto usa como destino de mesclagem para ramificações de desenvolvimento:
- Selecione o ícone Settings no menu de ícones do ambiente de desenvolvimento integrado do Looker para mostrar as configurações do projeto. A guia Configuration será aberta por padrão.
- No campo Git Production Branch Name, insira o nome da ramificação de produção do Git que você quer usar no projeto do Looker.
- Clique no botão Save Project Configuration para salvar as alterações.
Importar credenciais
A seção Importar credenciais é onde você pode gerenciar credenciais de autenticação para repositórios remotos particulares. Consulte a página de documentação Como importar arquivos de outros projetos para mais detalhes.
Gerenciamento de branches
Na guia Gerenciamento de ramificações da página Configurações de projetos, você pode conferir todas as ramificações do Git associadas ao projeto. Consulte a página de documentação Como usar o controle de versões e a implantação para mais detalhes.
Opções de integração do Git
Depois que você configurar sua conexão do Git, o Looker vai usar seu provedor do Git para gerenciar os arquivos de origem do LookML, conforme descrito na página de documentação Usar o controle de versão e a implantação.
Se você for um administrador do Looker, poderá definir outras opções de integração do Looker com o Git usando as opções da Integração do Git na guia Configuração do painel de configurações do projeto:
- Desativado: o Looker não mostra links externos para a interface do seu provedor do Git.
- Mostrar links: o Looker fornecerá links externos para a interface do seu provedor Git para que os desenvolvedores possam visualizar o projeto na interface do provedor Git. O Looker também vai fornecer links para cada arquivo de projeto. Assim, os desenvolvedores poderão conferir 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 ver 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 oferece aos desenvolvedores a opção de enviar uma solicitação de envio para que outro desenvolvedor possa aprovar as alterações antes de adicioná-las ao projeto. Consulte a seção Como integrar solicitações de envio para seu projeto para ver informações sobre como fazer essa configuração.
- Solicitações de envio obrigatórias: o mesmo que Solicitações de envio recomendadas, 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 pull ao seu projeto para saber como configurar isso.
Para salvar as configurações de integração do Git, clique em Salvar configuração do projeto na seção Implantação.
Como integrar links externos ao seu provedor Git
Se você tiver ativado alguma das opções extras de integração do Git (Mostrar links, Solicitações de envio recomendadas ou Solicitações de envio obrigatórias), o Looker fornecerá links externos para a interface do seu provedor Git. Esses links externos abrem uma nova guia do navegador para o site do seu provedor do Git.
Para acessar esses links externos, seus desenvolvedores precisam ter uma conta no seu provedor Git e ter acesso ao repositório Git do projeto.
No menu de três pontos File Options de cada arquivo do LookML, o Looker fornece links para o site do seu provedor do Git para acessar o arquivo, as informações de atribuição de culpa do Git e o histórico de confirmação do arquivo.
No painel Ações do Git, também é possível usar a opção View Project on <Git provider>
para abrir os arquivos do projeto no site do provedor do Git.
Como integrar solicitações de envio para seu projeto
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.
Em vez de permitir que os desenvolvedores do Looker mesclem a ramificação de desenvolvimento na ramificação de produção do Looker, você pode configurar seu projeto com a opção Solicitações de pull recomendadas ou Solicitações de pull obrigatórias:
- Solicitações de envio recomendadas: depois que um desenvolvedor confirma as alterações na ramificação de desenvolvimento, o botão 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 Git. Ou o desenvolvedor pode usar a opção Deploy to Production no painel de ações do Git para pular a criação de uma solicitação de pull e implantar as mudanças na produção. A opção Deploy to Production não está disponível se o projeto estiver ativado com o modo de implantação avançado.
- Solicitações de envio necessá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 com a 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 oferece suporte à integração de solicitações de envio para os seguintes provedores do Git:
- GitHub
- GitLab
- Bitbucket Cloud
- Bitbucket Server (anteriormente "Stash")
Confira 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 do Git e acesso ao repositório do projeto.
Se o recurso Lista de permissões de IP estiver ativado na sua instância, será necessário adicionar o intervalo de endereços IP de onde seu provedor Git faz solicitações de saída para integrar solicitações de envio a qualquer projeto do LookML. 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 mudanças e são diferentes para outros provedores Git.
Se você tiver ativado o modo de implantação avançado, não será necessário configurar um webhook na seção Configurar seu projeto com solicitações de pull integradas, já que o modo de implantação avançado 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 da comunidade Como reverter solicitações de envio do Looker pelo GitHub para mais informações.
As solicitações de envio do Git possibilitam o uso de uma instância de teste para o Looker, para que você tenha uma instância de teste e uma de produção com solicitações de envio ativadas na instância de preparo. Todo o desenvolvimento e a revisão de código podem ser feitos no ambiente de preparação, e o código revisado pode ser implantado na instância de produção. 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 mudanças de uma ramificação de desenvolvedor do Looker na ramificação de produção usando o método de merge commit. Ao usar a interface do provedor do Git, verifique se os desenvolvedores não usam squash merging nem rebase merging. Consulte a seção Opções de mesclagem na interface do provedor Git para saber mais.
Configurar seu projeto com solicitações de pull integradas
Para configurar seu projeto do Looker com solicitações de envio do Git:
- No projeto, selecione Configurações no menu de ícones do Looker IDE.
- Na seção Integração com o Git da guia Configuração, selecione Solicitações de pull recomendadas ou Solicitações de pull obrigatórias.
- Opcionalmente, se você quiser configurar um webhook de implantação automática na interface do provedor Git, copie as informações do webhook e cole em um arquivo de texto. Se o projeto estiver configurado para usar o modo de implantação avançado, pule esta etapa. Você também pode decidir depois e voltar às configurações do projeto para receber as informações do webhook.
- Opcionalmente, você pode configurar um secreto de implantação de webhook para autenticar um webhook de implantação automática do seu provedor do Git ou um webhook de modo de implantação avançado. Para criar um secret do webhook, clique em Definir secret do webhook. Copie o secret de implantação e cole 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 segredo de implantação do webhook para mais informações.
- Clique em Salvar configuração do projeto.
Agora, sempre que um desenvolvedor do Looker confirmar as alterações no projeto, o ambiente de desenvolvimento integrado do Looker vai mostrar o botão Open Pull Request. O botão abre uma nova guia do navegador diretamente na página do novo pedido de extração no site do seu provedor do Git.
Depois de configurar o projeto do Looker para usar solicitações de pull, faça uma das seguintes ações para configurar como as confirmações são implantadas no ambiente de produção:
- Para implantar automaticamente as últimas confirmações que foram mescladas na sua ramificação de produção, use a interface do seu provedor Git para adicionar um webhook, conforme descrito na próxima seção desta página.
- Para especificar manualmente quais ramificações ou commits são implantados, ative o modo de implantação avançado. Consulte a página de documentação do Modo de implantação avançado para informações sobre como ativar e gerenciar o modo de implantação avançado.
Como adicionar um webhook ao provedor do Git
Para projetos do Looker ativados para solicitações de envio, é possível configurar um webhook de implantação na interface do seu 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 Git.
Na maioria dos casos, não é necessário configurar um webhook de implantação automática se o projeto estiver configurado para usar o modo de implantação avançado. O modo de implantação avançado permite selecionar o commit e a ramificação que você quer implantar. Na maioria dos casos, a configuração de um webhook de implantação automática anula os recursos do modo de implantação avançado.
Para adicionar um webhook de implantação automática à interface do seu provedor Git, primeiro acesse as configurações do projeto no Looker clicando no ícone Configurações no menu do ícone do ambiente de desenvolvimento integrado do Looker do projeto. Em seguida, copie o webhook da seção Integração com o Git.
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 fosse example.looker.com
e o nome do projeto fosse e_faa
, o webhook ficaria 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 do Git do projeto com o provedor Git. Consulte a página de documentação Como configurar o secret de implantação do webhook para mais informações.
Depois de ter o URL e o segredo do webhook de implantação, insira-os na interface do provedor do Git. Se o provedor Git for o GitHub, siga estas etapas:
- Navegue até as configurações do repositório do 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.
- No campo Payload URL, cole as informações do webhook que você copiou da seção Git Integration no Looker.
- Opcionalmente, adicione um segredo de implantação de webhook que autentica as integrações do Git do seu projeto com o provedor. Copie o secret de implantação das configurações do projeto do LookML e cole-o no campo Segredo na interface do provedor 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 Somente o evento push no campo Quais eventos você quer acionar com esse 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 envio estão ativadas para o projeto do LookML, e a implantação de webhooks não é automatizada, às vezes, o LookML que aparece no modo de produção do Looker não corresponde ao LookML na ramificação principal do 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 foi editado fora do ambiente de desenvolvimento do Looker, como:
- No próprio repositório Git
- Em outra instância do Looker, como uma de teste
É possível sincronizar a ramificação de produção do Looker com a ramificação principal 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 sua instância do Looker e<project_name>
pelo nome do seu projeto do LookML:<instance_url>/webhooks/projects/<project name>/deploy
Depois de executar o URL do webhook de implantação, uma página da Web em branco vai exibir uma mensagem de sucesso 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, o modo de produção no Looker foi atualizado para refletir a ramificação mestre do Git remoto. Sua ramificação de desenvolvedor pessoal e as compartilhadas não são afetadas.
Extração de webhooks com secrets de implantação de um repositório Git remoto
Se o projeto do LookML também exigir um segredo de implantação de webhook para enviar as mudanças da ramificação principal para a de produção, você vai receber um dos seguintes erros ao sincronizar a ramificação de produção com a principal do repositório usando o método descrito na seção anterior, 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 terminal com o secret do webhook. Substitua os seguintes campos:
- Substitua
<instance_URL>
pelo URL da instância do Looker. - Substitua
<deploy_secret>
pelo segredo de implantação do seu projeto. - Substitua
<project_name>
pelo nome do 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 principal 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 mesclagem na interface do provedor do Git
Caso seu projeto do Looker seja integrado a solicitações de envio, os desenvolvedores vão usar a interface do provedor Git para enviar solicitações de envio e mesclar alterações na ramificação de produção.
O Looker oferece suporte ao método merge commit de mesclagem de mudanças de uma ramificação de desenvolvimento na ramificação de produção. No entanto, a interface do seu provedor do Git pode mostrar outras opções de mesclagem, como Squash and merge ou Rebase and merge.
O Looker não é compatível com a mesclagem de squash ou a combinação de realocação. Por isso, seus desenvolvedores devem evitar usar essas opções. Se possível, a prática recomendada é desativar essas opções no 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, use a opção View Project on Git no menu do Git do projeto no Looker.
Nas configurações do repositório, clique em Opções no menu de navegação.
Vá para a seção Botão de mesclagem e deixe marcada apenas a opção Permitir confirmações de mesclagem. Desative as opções Allow squash merging e Allow rebase merging.
Depois de desativar as opções de mesclagem, elas não ficam disponíveis no GitHub quando os desenvolvedores mesclam uma ramificação no repositório.