Esta página descreve como configurar elementos do seu projeto para integração com o Git para controle de versão.
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, você pode acessar três guias de 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 o projeto, edite o texto e clique no botão Salvar configuração do projeto. 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 do Git precisa existir no repositório. 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 Validador do LookML no projeto antes de confirmar as alterações. 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 as alterações quando houver avisos. Embora não seja recomendado, essa opção pode ser útil, por exemplo, se novos avisos forem introduzidos no LookML em funcionamento após uma atualização do Looker.
- Permitir a confirmação de código inválido: os desenvolvedores do Looker podem confirmar mudanças sem executar o validador do LookML, mesmo que haja erros ou avisos no LookML. Essa opção não é recomendada, porque pode resultar em um LookML que não funciona ou que produz resultados incorretos.
Exigir que os testes de dados sejam aprovados antes de colocar este projeto em 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 mudança. Se os testes de dados forem aprovados, o ambiente de desenvolvimento integrado permitirá que o desenvolvedor implante as mudanças na produção. Consulte a página de documentação do parâmetrotest
para saber como configurar testes de dados no seu 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 Opções de integração do Git para mais detalhes.
Ativar o modo de implantação avançado: 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 mudanças na produção na sua instância do Looker. Consulte a página de documentação Como configurar o segredo de implantação do webhook para mais detalhes.
Redefinir conexão do Git: esse botão abre a janela Configurar Git, onde você pode atualizar as configurações de conexão do repositório do Git.
Redefinir sua conexão com o 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 ele sincronizar 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 na 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 com o 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 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 projetos atuais, 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 confirmar as alterações e mesclar as ramificações à ramificação de produção atual. 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.
- Se o projeto usar solicitações de envio integradas, finalize e mescle todas as solicitações de envio abertas, conforme apropriado.
- Realize as preparações necessárias no lado do provedor do Git, como criar uma nova ramificação no repositório, renomear a ramificação padrão do Git ou realizar qualquer outra ação necessária para preparar a ramificação para que o Looker possa usá-la como uma ramificação de 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 mudar a ramificação do Git que seu projeto usa como destino de mesclagem para as ramificações de desenvolvimento:
- Selecione o ícone Settings no menu de ícones do Looker IDE 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 a alteração.
Importar credenciais
Na seção Importar credenciais, é possível gerenciar as credenciais de autenticação de 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 Uso do controle de versão e implantação.
Se você for administrador do Looker, poderá configurar outras opções de integração com o Git usando as opções de Integração com o 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 fornece links externos para a interface do provedor do Git para que os desenvolvedores possam acessar o projeto na interface do provedor do Git. O Looker também fornece links para cada arquivo do projeto para que os desenvolvedores possam conferir o histórico do arquivo e as informações de culpa do Git na interface do provedor. Consulte a seção Como integrar links externos ao seu provedor Git para saber mais sobre os links.
- Solicitações de envio recomendadas: além de fornecer links externos para a interface do 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 pull ao seu projeto para saber como configurar isso.
- Solicitações de pull obrigatórias: é igual a Solicitações de pull recomendadas, exceto que os desenvolvedores do LookML precisam abrir uma solicitação de pull para enviar as mudanças ao projeto. Consulte a seção Como integrar solicitações de pull ao seu projeto para saber como fazer 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 qualquer uma das opções de integração extra do Git (Mostrar links, Solicitações de pull recomendadas ou Solicitações de pull obrigatórias), o Looker vai 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 do Git.
Para acessar esses links externos, os desenvolvedores precisam ter uma conta no provedor do Git e acesso ao repositório do projeto.
No menu de Opções de arquivo com três pontos para cada um dos seus arquivos LookML, o Looker fornece links para o site do seu provedor do Git para conferir o arquivo, as informações 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 pull 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. Em seguida, ao implantar no ambiente do Looker, ele 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 faz o commit de mudanças na ramificação de desenvolvimento, o botão do Git no ambiente de desenvolvimento do Looker solicita que o desenvolvedor abra uma solicitação de envio para mesclar a ramificação de desenvolvimento na ramificação de produção. O desenvolvedor pode abrir uma solicitação de envio para que outros desenvolvedores do Looker analisem e aprovem na interface da Web do provedor do 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ção de pull obrigatória: depois que um desenvolvedor faz o commit de mudanças na ramificação de desenvolvimento, o botão do Git no ambiente de desenvolvimento do Looker solicita que o desenvolvedor abra uma solicitação de pull. O desenvolvedor precisa abrir uma solicitação de envio para mesclar a ramificação de desenvolvimento na ramificação 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 algumas observações sobre o uso de solicitações de pull 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, para integrar solicitações de pull a projetos do LookML, você precisará adicionar à lista de permissões o intervalo de endereços IP de onde o provedor do 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 mudanças e serão diferentes para outros provedores do 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 pull do Git podem permitir o uso de uma instância de teste para o Looker, para que você possa ter uma instância de teste e uma de produção, com solicitações de pull ativadas na instância de teste. Todo o desenvolvimento e a revisão de código podem ser feitos no ambiente de teste, e o código revisado pode ser implantado na instância de produção. Para configurar isso, consulte a postagem da comunidade Fluxo de trabalho do Git usando um repositório em várias instâncias: desenvolvimento, preparação 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 do Git para mais informações.
Configurar seu projeto com solicitações de pull integradas
Para configurar seu projeto do Looker com solicitações de envio do Git:
- No seu projeto, selecione Settings 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.
- Se quiser configurar um webhook de implantação automática na interface do seu provedor do 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 mais tarde 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 ao adicionar o webhook à interface do provedor do 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 de novos pedidos de mesclagem 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 confirmações mais recentes mescladas à sua ramificação de produção, use a interface do provedor do Git para adicionar um webhook, conforme descrito na próxima seção desta página.
- Para especificar manualmente quais branches ou confirmações 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 aciona o Looker para implantar o commit mais recente da ramificação de produção sempre que você mescla uma solicitação de envio na interface do provedor do 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 na interface do seu provedor do Git, primeiro acesse as configurações do projeto no Looker clicando no ícone Settings no menu de ícones do Looker IDE do projeto. Em seguida, copie o webhook da seção Integração com o Git.
O webhook tem 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 vai ficar assim:
https://example.looker.com/webhooks/projects/e_faa/deploy
Nas configurações do projeto do Looker, você também pode receber um secret de implantação de webhook para autenticar as integrações do Git do seu projeto com o provedor. Consulte a página de documentação Como configurar o segredo 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 de Git for o GitHub, siga estas etapas:
- Acesse as configurações do repositório do projeto no repositório do GitHub.
- Nas configurações do repositório, clique em Webhooks. Clique em Adicionar webhook para abrir a janela Adicionar webhook.
- No campo Payload URL, cole as informações do webhook que você copiou da seção Integração com o Git 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 LookML e cole-o no campo Secret na interface do provedor do Git. Consulte a página de documentação Como configurar o segredo 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.
Usar um webhook de implantação para extrair de um repositório Git remoto
Quando os pull requests estão ativados para seu projeto do LookML e os webhooks de implantação não são automatizados, pode acontecer de o LookML que você vê no modo de produção do Looker não corresponder ao LookML na ramificação principal do repositório do 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 do Git
- Em outra instância do Looker, como uma de preparação
É 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 mostrar 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.
Como extrair de um repositório Git remoto para webhooks com segredos de implantação
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 segredo 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 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ê quiser 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
Se o projeto do Looker estiver integrado a solicitações de pull, os desenvolvedores vão usar a interface do provedor do Git para enviar solicitações de pull e mesclar as mudanças 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 de Git pode mostrar outras opções de mesclagem, como Squash and merge ou Rebase and merge.
O Looker não oferece suporte a fusão de squash ou fusão de rebase. Portanto, os 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 Settings para acessar as configurações do repositório do 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.
Acesse 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 que você desativa as opções de mesclagem, elas não estarão disponíveis no GitHub quando os desenvolvedores mesclarem uma ramificação no repositório.