Compartilhar via


Pipelines de build do PBIP (Projeto do Power BI) e do Azure DevOps para integração contínua

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, nos concentramos na integração contínua e descrevemos como criar um pipeline de build 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 de build do Azure DevOps para validar a qualidade do desenvolvimento. A execução do build executa as seguintes ações:

Diagram showing workflow of build pipeline.

  1. O usuário 1 desenvolve usando o Power BI Desktop.

    1. Criar um branch a partir do principal usando o VS Code (recurso/datasetchange)
    2. Fazer alterações no modelo semântico usando o Power BI Desktop
    3. Confirmar alterações no branch do repositório remoto usando o VS Code
    4. Criar solicitação de pull para o branch principal usando o Azure DevOps
  2. Ao mesmo tempo, Usuário 2 desenvolve usando outro workspace do Fabric.

    1. Criar branch a partir do principal usando o Git do Fabric (feature/reportchange)
    2. Fazer alterações de relatório no workspace do Fabric
    3. Confirmar alterações no branch do repositório remoto usando o Git do Fabric
    4. Criar solicitação de pull para o branch principal usando o Azure DevOps
  3. 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.

  4. A Solicitação de Pull dispara o pipeline de build do Azure DevOps para inspecionar o modelo semântico e a qualidade de desenvolvimento do relatório.

Observação

Neste exemplo, o pipeline de build 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:

Screenshot showing the Git connection to 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:

Screenshot showing the Azure DevOps branch with folders for different workspace items.

Etapa 2 – Criar e executar um pipeline de build do Azure DevOps

Para criar um novo pipeline de build:

  1. Na guia Pipelines do menu de navegação esquerdo, selecione Criar Pipeline:

    Screenshot showing how to create a pipeline.

  2. Selecione Git do Azure Repos e selecione o primeiro repositório (o mesmo repositório conectado ao workspace do Fabric):

    Screenshot showing Azure repo Git selected as the code source for the pipeline.

    Screenshot showing the Demo-ADObuild repo selected.

  3. Selecione Pipeline de início.

    Screenshot showing the starter pipeline icon selected.

    O seguinte código YAML é exibido no editor:

    Screenshot showing the default YAML code.

  4. Copie e cole o código YAML do pipeline do modo de desenvolvedor do Power BI no pipeline que você criou:

    Screenshot showing YAML code to be added.

    Screenshot showing second part of YAML code.

  5. Selecione Salvar e Executar para confirmar seu novo pipeline no repositório.

    Screenshot of a review of the YAML code.

    Screenshot showing save and run selection.

O Azure DevOps executa o pipeline e inicia dois trabalhos de build em paralelo:

Screenshot showing Azure DevOps building a pipeline.

  • 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:

Screenshot showing error report.

Selecione no link para abrir uma exibição mais detalhada dos dois trabalhos de build:

Screenshot showing view log button.

Screenshot showing expanded error log.

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:

Screenshot showing highlighter errors.

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 de build para ser executado a cada solicitação de pull.

  1. Selecione Branches>Branch principal>políticas do BranchBranch:

    Screenshot showing branch policies.

  2. Configure o pipeline criado como uma Política de Build para o branch:

    Screenshot showing the build policy UI.

    Screenshot showing second part of the build policy UI.

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:

Screenshot showing the unable to commit change error.

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:

  1. No painel Controle do Código-Fonte, selecione em Checkout novo branch e forneça um nome para o branch.

    Screenshot showing the source control screen to checkout a new branch.

    Screenshot showing how to checkout a new 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

  2. Confirme suas alterações neste novo branch.

    Screenshot showing commit changes to branch.

  3. Após a confirmação, crie uma solicitação de pull no branch principal do portal do Azure DevOps.

    Screenshot showing a new pull request created.

    Screenshot showing created pull request.

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 de build.

Screenshot showing report change.

Se houver um erro de build 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.

Screenshot completed pull request.

Saiba mais sobre o PBIP e o Fabric Git Integration na postagem no blog.