Gerenciar o controle do código-fonte de soluções do Azure Data Factory
Por padrão, a UX (experiência de interface do usuário) do Azure Data Factory faz a autenticação diretamente no serviço de Data Factory. Essa experiência tem as seguintes limitações:
- O serviço de Data Factory não inclui um repositório para armazenar as entidades JSON para as alterações. A única maneira de salvar as alterações é por meio do botão Publicar Tudo, e todas as alterações são publicadas diretamente no serviço de Data Factory.
- O serviço de Data Factory não está otimizado para colaboração e controle de versão.
Para fornecer uma experiência de criação melhor, o Azure Data Factory permite que você configure um repositório Git com o Azure Repos ou o GitHub. O Git é um sistema de controle de versão que facilita o controle de alterações e a colaboração. Este artigo descreverá como configurar e trabalhar em um repositório git, além de realçar as melhores práticas e apresentar um guia de solução de problemas.
Observação
A criação direta com o serviço de Data Factory é desabilitada na UX do Azure Data Factory quando um repositório Git é configurado. As alterações feitas por meio do PowerShell ou de um SDK são publicadas diretamente no serviço de Data Factory e não são inseridas no Git.
Vantagens da integração do Git
Abaixo está uma lista de algumas das vantagens que a integração com o Git fornece à experiência de criação:
- Controle de código-fonte: conforme as cargas de trabalho do data factory se tornam cruciais, você vai desejar integrar seu factory ao Git para aproveitar os vários benefícios de controle do código-fonte como os seguintes:
- Capacidade de controlar/auditar as alterações.
- Capacidade de reverter as alterações que introduziram bugs.
- Salvamento parcial: Quando você cria no serviço de Data Factory, não pode salvar as alterações como um rascunho, e todas as publicações devem passar pela validação do data factory. Se seus pipelines não forem concluídos ou se você simplesmente não quiser perder as alterações se o computador falhar, a integração do git permitirá alterações incrementais de recursos do data factory independentemente do estado em que estão. A configuração de um repositório Git permite que você salve as alterações e possa publicar apenas quando tiver testado as alterações a contento.
- Colaboração e controle: Se você tiver vários membros da equipe contribuindo para o mesmo alocador, talvez queira permitir que seus colegas de equipe colaborem entre si por meio de um processo de revisão de código. Você também pode configurar seu alocador de forma que nem todos os colaboradores tenham permissões iguais. Alguns membros da equipe podem fazer alterações apenas por meio do Git, e somente determinadas pessoas da equipe têm permissão para publicar as alterações no seu alocador.
- CI/CD aprimorada: se você estiver fazendo a implantação em vários ambientes com um processo de entrega contínua, a integração com o Git facilitará certas ações. Algumas dessas ações incluem:
- Configurar seu pipeline de liberação para disparar automaticamente assim que houver uma alteração feita no alocador de "desenvolvimento".
- Personalize as propriedades no alocador que estejam disponíveis como parâmetros no modelo do Resource Manager. Isso pode ser útil manter somente o conjunto necessário de propriedades como parâmetros e ter todos os demais elementos embutidos no código.
- Melhor desempenho: Um alocador médio integrado ao Git é carregado 10 vezes mais rápido do que uma criação no serviço de Data Factory. Essa melhoria de desempenho ocorre porque os recursos são baixados por meio do Git.
Conectar-se a um repositório Git
Há três maneiras diferentes de conectar um repositório Git ao seu data factory para Azure Repos e GitHub. Depois de se conectar a um repositório do Git, você pode ver e gerenciar sua configuração no hub de gerenciamento em Configuração do Git na seção Controle do código-fonte.
Método de configuração 1: home page
Na home page do Azure Data Factory, selecione Configurar o Repositório de Código.
Método de configuração 2: tela de criação
Na tela de criação de UX do Azure Data Factory, selecione o menu suspenso Data Factory e selecione Configurar o repositório de código.
Método de configuração 3: hub de gerenciamento
Vá para o hub de gerenciamento no Azure Data Factory UX. Selecione Configuração do Git na seção Controle do código-fonte. Se você não tiver um repositório conectado, clique em Configurar repositório de código.
Controle de versão
Os sistemas de controle de versão (também conhecidos como controle do código-fonte) permitem aos desenvolvedores colaborar em código e acompanhar as alterações feitas no código base. O controle do código-fonte é uma ferramenta essencial para projetos de vários desenvolvedores.
Criando branches de recurso
Cada repositório Git do Azure Repos que está associado a um data factory tem um branch de colaboração. (main
é a ramificação de colaboração padrão). Os usuários também podem criar branches de recurso clicando em + Novo Branch na lista suspensa do branch. Depois que o novo painel do branch for exibido, insira o nome do branch de recurso.
Quando você estiver pronto para mesclar as alterações do branch de recurso com o branch de colaboração, clique na lista suspensa do branch e selecione Criar solicitação de pull. Essa ação o levará para o Git do Azure Repos, em que será possível gerar solicitações de pull, realizar revisões de código e mesclar alterações com o branch de colaboração. Você só tem permissão para publicar no serviço do Data Factory de sua ramificação de colaboração.
Definir configurações de publicação
Por padrão, o data factory gera os modelos do Resource Manager do alocador publicado e os salva em um branch chamado adf_publish
. Para configurar um branch de publicação personalizada, adicione um arquivo publish_config.json
à pasta raiz no branch de colaboração. Na publicação, o Azure Data Factory lê esse arquivo, procura o campo publishBranch
e salva todos os modelos do Resource Manager na localização especificada. Se o branch não existir, o data factory o criará automaticamente. Veja abaixo um exemplo de como é o arquivo:
{
"publishBranch": "factory/adf_publish"
}
O Azure Data Factory pode ter apenas um branch de publicação por vez. Quando você especifica um novo branch de publicação, o Data Factory não exclui o branch de publicação anterior. Se você quiser remover o branch de publicação anterior, exclua-o manualmente.
Observação
O Data Factory apenas lê o arquivo publish_config.json
quando ele carrega o factory. Se o factory já estiver carregado no portal, atualize o navegador para que as alterações entrem em vigor.
Publicar alterações de código
Depois de ter mesclado alterações para o branch de colaboração, clique em Publicar para publicar manualmente as alterações de código no branch de colaboração para o serviço do Data Factory.
Um painel lateral será aberto para você confirmar que o branch de publicação e as alterações pendentes estão corretas. Depois de verificar as alterações, clique em OK para confirmar a publicação.
Importante
O branch de colaboração não é representativo do que é implantado no serviço de Data Factory. O branch de colaboração deve ser publicado manualmente no serviço de Data Factory.
Melhores práticas para a integração do Git
Permissões
Normalmente, você não quer que todos os membros da equipe tenham permissões para atualizar o Data Factory. As seguintes configurações de permissões são recomendadas:
- Todos os membros da equipe devem ter permissões de leitura para o Data Factory.
- Somente um conjunto selecionado de pessoas deve ter permissão para publicar no Data Factory. Para fazer isso, é necessária a função de Colaborador do Data Factory no Grupo de recursos que contém o Data Factory.
É recomendável não permitir check-ins diretos no branch de colaboração. Essa restrição pode ajudar a evitar bugs, uma vez que cada check-in passará por um processo de revisão de solicitação de pull.
Usando senhas do Azure Key Vault
É recomendável usar o Azure Key Vault para armazenar cadeias de conexão, senhas ou a autenticação de identidade gerenciada de Serviços Vinculados do Data Factory. Por motivos de segurança, o Data Factory não armazena segredos no Git. As alterações nos Serviços Vinculados que contenham segredos, como senhas, são publicadas imediatamente no serviço do Azure Data Factory.
Usar a autenticação do Key Vault ou MSI também facilita a integração e a implantação contínuas, pois você não precisará fornecer esses segredos durante a implantação do modelo do Resource Manager.
Alternar para um repositório Git diferente
Para alternar para um repositório do Git diferente, vá para a página de configuração do git no hub de gerenciamento sob Controle do código-fonte. Selecione Desconectar.
Insira seu nome do Data Factory e clique em Confirmar para remover o repositório Git associado ao data factory.
Depois de remover a associação com o repositório atual, você poderá definir as configurações do Git para usar um repositório diferente e importar recursos existentes do Data Factory para o novo repositório.
Importante
A remoção da configuração do Git de um data factory não exclui nada do repositório. O alocador conterá todos os recursos publicados. Você pode continuar a editar o alocador diretamente no serviço.