Pipelines de build do PBIP (Projeto do Power BI) e do Azure DevOps para validação
A combinação da Integração do Git do Fabric com o Azure DevOps permite que você conecte um workspace a uma ramificação em um repositório do Azure DevOps e sincroniza automaticamente entre eles.
A integração do formato PBIP ao Azure DevOps permite que você use o Azure Pipelines para automatizar pipelines de CI/CD (Integração Contínua/Implantação Contínua). Esses pipelines processam os arquivos de metadados PBIP e aplicam uma série de verificações de qualidade ao seu desenvolvimento antes de implantá-los no sistema de produção.
Neste artigo, nós nos concentramos na integração contínua e descrevemos como criar um pipeline do Azure DevOps que garanta as melhores práticas para todos os modelos semânticos e relatórios em um workspace do Fabric. Implementando testes automatizados de qualidade, você pode evitar erros comuns e aprimorar a eficiência da equipe. Por exemplo, essa abordagem garante que os novos membros da equipe aderem aos padrões estabelecidos para o modelo semântico e o desenvolvimento de relatórios.
Saiba mais sobre a integração do Git do PBIP e do Fabric na visão geral do projeto e na visão geral da integração do Git do Fabric.
O diagrama a seguir ilustra o cenário de ponta a ponta com dois fluxos de trabalho de desenvolvimento que disparam o pipeline do Azure DevOps para validar a qualidade do desenvolvimento. A execução do pipeline executa as seguintes ações:
O usuário 1 desenvolve usando o Power BI Desktop.
- Criar um branch a partir do principal usando o VS Code (recurso/datasetchange)
- Fazer alterações no modelo semântico usando o Power BI Desktop
- Confirmar alterações no branch do repositório remoto usando o VS Code
- Criar solicitação de pull para o branch principal usando o Azure DevOps
Ao mesmo tempo, Usuário 2 desenvolve usando outro workspace do Fabric.
- Criar branch a partir do principal usando o Git do Fabric (feature/reportchange)
- Fazer alterações de relatório no workspace do Fabric
- Confirmar alterações no branch do repositório remoto usando o Git do Fabric
- Criar solicitação de pull para o branch principal usando o Azure DevOps
O líder da equipe analisa as Solicitações de Pull e sincroniza as alterações no workspace da equipe usando o Git do Fabric.
A Solicitação de Pull dispara o pipeline do Azure DevOps para inspecionar o modelo semântico e a qualidade de desenvolvimento do relatório.
Observação
Neste exemplo, o pipeline usa duas ferramentas de comunidade de software livre que permitem que um desenvolvedor aplique regras de prática recomendada (personalizável) aos metadados de modelos semânticos e relatórios dentro de uma pasta do Projeto do Power BI:
Uma abordagem semelhante ao exemplo neste artigo se aplicaria a outras ferramentas da comunidade. Este artigo não se aprofunda nas especificidades das ferramentas da comunidade mencionadas anteriormente nem na criação e edição de regras. Para obter informações detalhadas sobre esses tópicos, consulte os links fornecidos. O foco deste artigo está no processo de estabelecer uma porta de qualidade entre o controle do código-fonte e o Espaço de Trabalho do Fabric. É importante observar que as ferramentas de comunidade referidas são desenvolvidas por colaboradores de terceiros e a Microsoft não oferece suporte nem documentação para elas.
Etapa 1 – Conectar o workspace do Fabric ao Azure DevOps
Conecte seu workspace do Fabric ao Azure DevOps:
Quando a integração do Git do Fabric terminar de exportar seus itens de workspace, sua ramificação do Azure DevOps conterá uma pasta para cada item em seu workspace:
Etapa 2 – Criar e executar um pipeline do Azure DevOps
Para criar um novo pipeline:
Na guia Pipelines do menu de navegação esquerdo, selecione Criar Pipeline:
Selecione Git do Azure Repos e selecione o primeiro repositório (o mesmo repositório conectado ao workspace do Fabric):
Selecione Pipeline de início.
O seguinte código YAML é exibido no editor:
Copie e cole o código YAML do pipeline do modo de desenvolvedor do Power BI no pipeline que você criou:
Selecione Salvar e Executar para confirmar seu novo pipeline no repositório.
O Azure DevOps executa o pipeline e inicia dois trabalhos de build em paralelo:
- Build_Datasets
- Baixa binários do Editor tabular.
- Baixe as regras padrão do Analisador de Práticas Recomendadas. Para personalizar as regras, adicione um Rules-Dataset.json à raiz do repositório.
- Percorra todas as pastas de itens do modelo semântico e execute as Regras do BPA do Editor tabular.
- Build_Reports
- Baixe binários do Inspetor do PBI.
- Baixe as regras padrão do Inspetor de PBI. Para personalizar as regras, adicione um Rules-Report.json à raiz do repositório.
- Percorra todas as pastas de itens de relatório e execute as regras do Inspetor do Power BI.
Quando ele é concluído, o Azure DevOps cria um relatório de todos os avisos e erros encontrados:
Selecione no link para abrir uma exibição mais detalhada dos dois trabalhos:
Se o seu relatório ou modelo semântico falhar em uma regra com um nível de severidade mais alto, o build falhará e o erro será realçado:
Etapa 3 – Definir políticas de branch
Depois que o pipeline estiver em execução, habilite as Políticas de Branch no branch principal. Esta etapa garante que nenhuma confirmação possa ser feita diretamente na principal. Uma "solicitação de pull" é sempre necessária para mesclar as alterações de volta na principal e você pode configurar o pipeline para ser executado a cada solicitação de pull.
Selecione Branches>Branch principal>políticas do BranchBranch:
Configure o pipeline criado como uma Política de Build para o branch:
Etapa 4 – Criar solicitação de pull
Se você retornar ao workspace do Fabric, fazer uma modificação em um dos relatórios ou modelos semânticos e tentar confirmar a alteração, receberá o seguinte erro:
Você só pode fazer alterações no branch principal por meio de uma solicitação de pull. Para criar um check-out de solicitação de pull, um novo branch para fazer as alterações em:
Crie um branch diretamente do Workspace do Fabric:
No painel Controle do Código-Fonte, selecione em Checkout novo branch e forneça um nome para o branch.
Como alternativa, você pode optar por desenvolver em um workspace separado e isolado ou no Power BI Desktop. Para obter mais informações, consulte desenvolver usando outro workspace
Confirme suas alterações neste novo branch.
Após a confirmação, crie uma solicitação de pull no branch principal do portal do Azure DevOps.
O fluxo de trabalho de solicitação de pull não só permite que você valide e examine as alterações, mas também dispara automaticamente o pipeline.
Se houver um erro de alta severidade em uma das regras, você não poderá finalizar a solicitação de pull e mesclar as alterações novamente no branch principal.
Saiba mais sobre o PBIP e o Fabric Git Integration na postagem no blog.