Azure DevOps - Integração Continua e Entrega Contínua de relatórios Power BI

higor

Higor Barbosa

Posted on February 16, 2020

Azure DevOps - Integração Continua e Entrega Contínua de relatórios Power BI

No último artigo mostrei como conectar o Azure DevOps através do Analytics Views do Boards.

Agora, quero mostrar passo a passo como adicionar o relatório que criamos na integração contínua e entrega contínua utilizando o Azure DevOps através do serviço Azure Pipeline.

Vamos lá!?

Requisitos:

  • Licença Power BI Pro (versão trial 60 dias);
  • Conta no Azure DevOps (podemos utilizar a versão gratuita);
  • Conta no Azure (não utilizaremos de créditos);

Azure Repos

Primeiro precisamos adicionar o nosso relatório ao repositório. Usaremos o próprio gerenciador de repositório do Azure DevOps, serviço chamado de Azure Repos.

Quando criamos o projeto no Azure DevOps, selecionamos o GIT como tipo de repositório. E continuaremos com essa opção.

Vamos ir no Repos > Files.

Alt Text

E vamos inicializar com arquivo README.

Alt Text

Vamos ir nos 3 pontos e selecionar a opção Upload File.

Alt Text

Selecionar o novo arquivo, adicionar comentário. Iremos usar a branch master e podemos ainda vincular esse commit a um dos work items que temos.

Alt Text

E lá está o nosso arquivo com extensão .pbix.

Alt Text

Azure Pipeline - Build

Agora que nosso relatório do Power BI foi versionado, podemos adicionar ele no nosso pipeline.

E para isso, vamos ir em Pipelines > Pipelines.

Alt Text

E vamos criar o Pipeline!

Como pode ser sua primeira experiência com pipeline no Azure DevOps, vamos optar pelo editor clássico.

Alt Text

Aqui, precisamos selecionar o gerenciador de repositório. No nosso caso, estamos usando o Azure Repos Git. Selecionar o nosso repositório e a branch, no nosso caso será a Master e continuar.

Alt Text

Temos alguns templates disponíveis. No nosso caso, iremos criar sem template, e para isso, vamos ir em Empty job.

Alt Text

E nessa tela, podemos adicionar tasks relacionadas ao nosso build. Não entrarei em detalhes, mas caso queria saber mais sobre Azure DevOps e Azure Pipeline, pode entrar em contato que lhe envio um cupom do meu treinamento.

Vamos adicionar uma nova tarefa indo no botão "+" na direita do nosso Agent job.

Alt Text

Vamos procurar por copy e adicionar a tarefa Copy files.

Alt Text

Com isso, podemos configurar a tarefa que irá copiar os arquivos do repositório. Em Contents, podemos adicionar a expressão *.pbix, e assim, filtraremos por apenas por arquivos gerados pelo Power BI neste repositório.

Também precisamos adicionar o Target Folder. E para isso, vamos utilizar a expressão $(Build.ArtifactStagingDirectory). Essa é uma das diversas variáveis pré definidas do Azure DevOps. Para ver a lista completa, acesse esse link.

Alt Text

E vamos adicionar nossa segunda e últimas tarefas. Ela será responsável pela publicação do nosso artefato, utilizando o Publish build artifacts.

Alt Text

E não precisamos alterar suas configurações. Ela precisa estar apontando o Path to Publish para a pasta que copiamos o *.pbix na tarefa anterior e o nome do artefato será drop.

Alt Text

Agora podemos editar o nome, salvá-lo e rodar manualmente, clicando na opção Save & queue.

Alt Text

Podemos adicionar um comentário e Save and run.

Alt Text

Ele inicia o build e logo receberá uma mensagem de sucesso.

Alt Text

Podemos clicar no Agent Job e assim que finalizado, conseguimos identificar que geramos um artefato.

Alt Text

Clicando no artefato identificamos a pasta, que na verdade é um arquivo zipado, contendo o nosso arquivo com extensão *.pbix.

Alt Text

Power BI Pro

Legal, nosso relatório do Power BI já está no repositório e no nosso pipeline. Mas isso é apenas o inicio. Agora liberar acesso no Power BI a APIs.

Primeiro, precisamos ativar a licença PRO no nosso Power BI. Sem isso, infelizmente não conseguimos consumir as APIs e realizar o deploy via Azure DevOps e apenas em contas Pro, podemos criar Workspaces. Mas nem tudo está acabado. Você pode optar pela conta trial e prosseguir nesse passo a passo.

Para ativar a versão Pro, podemos ir em Workspaces > Criar um workspace.

Alt Text

E somos indicados a utilizar a versão experimental do Pro.

Alt Text

Temos 60 dias para aproveitar essa experiência.

Alt Text

Agora, vamos criar nosso Workspace no Power BI.

Alt Text

Mas, precisamos também adicionar nosso usuário como administrador. Para isso, vamos ir no em workspace > nosso workspace criado > Acesso ao workspace.

Alt Text

E vamos adicionar o nosso usuário como administrador desse workspace. Por padrão, ao criá-lo, você fica como membro apenas.

Alt Text

Agora, vamos ir em workspace > nosso workspace criado > Configurações de workspace.

E aqui, podemos adicionar o nosso usuário ou um grupo de usuários do Active Directory.

Alt Text

E ainda, você ou o administrador do Power BI precisam liberar o acesso a APIs e podemos fazer isso no Portal do administrador > Configurações.

Alt Text

Vamos ir em Configurações de locatário > Configurações de Desenvolvedor e habilitar o uso de API.

Alt Text

Essa configuração pode levar até 15 minutos para ficar disponível. Enquanto isso, podemos criar a nossa aplicação que irá consumir a API.

Power BI - Registro da Aplicação

E nossa missão está mais simples a alguns meses. Podemos acessar esse link e cadastrar a nossa aplicação.

Alt Text

Precisamos entrar com nossas credenciais do Power BI e adicionar um nome a nossa aplicação.

Alt Text

A aplicação será do tipo Server-side web application (for web apps or web APIs), inserir a URL da sua organização e URL de redirecionamento.

Alt Text

Irei conceder acesso total a essa aplicação, e registrá-lo.

Alt Text

Com isso, temos o nosso Application ID e Application Secret. Vamos copiar o Application ID, usaremos apenas ele.

Alt Text

Azure - Conceder Permissão no Active Directory

Ao criar nossa conta no Power BI, ativamos também o acesso a nuvem da Microsoft.

E para finalizar essa parte, precisamos acessar o portal do Azure.

E no Portal do Azure, vamos ir em Todos os serviços e procurar por active directory.

Alt Text

No Active Diretory, precisamos ir em Registros de Aplicativos.

Alt Text

E aqui vemos o aplicativo que criamos. Vamos entrar nele.

Alt Text

Em Autenticação, precisamos adicionar o aplicativo como cliente público.

Alt Text

E em Permissões de API, precisamos adicionar permissão de aplicativo para o Power BI Service.

Alt Text

E também conceder permissão ao nosso domínio.

Alt Text

Em Proprietários, precisamos adicionar o nosso usuário.

Alt Text

E no Portal do Azure, era isso! Tudo configurado para o Azure DevOps acessar o portal do Power BI.

Release

Legal, nosso relatório do Power BI já está no repositório e no nosso pipeline e fizemos a configurações necessárias no Active Diretory do Azure e no Portal do Power BI. E agora precisamos adicionar ele no release.

E para isso, iremos contar com uma ajuda: Extensões do Marketplace.

Extensão Power BI Actions

Extensões do Marketplace nos ajudam e complementam os serviços disponíveis no Azure DevOps.

E para essa nossa solução de adicionar os relatórios do Power BI no C.I e C.D., vamos usar essa extensão: Power BI Actions.

Alt Text

Vamos acessá-la e Get if free!

Selecionar a nossa organização e instalar.

Alt Text

Caso você esteja utilizando o Azure DevOps Server, tens a opção de baixar e adicionar na sua organização.

Release - Adicionado Artefato e Tarefas

E vamos ir ao nosso Release. Vamos acessá-lo em *Pipelines > Releases *.

Alt Text

E vamos criar o nosso New Pipeline.

Não precisamos selecionar template. Vamos ir em Empty Job.

E o nosso release, é dividido em 2 partes:

  • Artifacts, onde indicamos qual a fonte do nosso release, no nosso caso nosso repositório do Azure Repos.

  • Stages, onde adicionamos os steps que teremos na entrega dos nossos artefatos.

Alt Text

Primeiro, vamos ir em Artifacts e vamos indicar o nosso repositório e nossa branch master.

Alt Text

E em Stages, já temos 1 job, vamos clicar nele.

Alt Text

Temos o nosso agente e precisamos adicionar tarefas. Na verdade, iremos adicionar apenas uma. Vamos ir no botão "+".

Alt Text

Vamos pesquisar por Power BI, e já vemos a tarefa da extensão que instalamos a pouco.

Alt Text

E agora temos diversas configurações a fazer.

Alt Text

Usaremos o tipo de autenticação como User.

Mas, precisamos criar essa autenticação. E para isso, vamos ir em Manager.

Alt Text

E vamos criar uma nova conexão, e vai ser do tipo Power BI - User.

Alt Text

Lembram do Application ID que copiamos a pouco? Usaremos ela no campo Client Id.

Também precisamos adicionar nosso usuário e senha e adicionar nome da conexão.

Alt Text

E podemos voltar ao Releases. Precisamos selecionar a conexão que criamos.

Em Action, temos algumas opções, como por exemplo, Upload PowerBI Report, e é ela que usaremos.

Precisamos também selecionar o nosso workpace que criamos no Power BI e o Source File, selecionando a pasta drop do nosso artefato.

Alt Text

Podemos alterar o nome do Release, salvar e criar o nosso release.

Alt Text

Vamos criar nosso release manualmente e vamos rodá-lo.

Alt Text

E terminou com Sucesso!

Alt Text

Podemos entrar no job e ver detalhes da execução.

Alt Text

E acessando workspace, lá está o nosso relatório.

Alt Text

Integração Contínua e Entrega Contínua

Podemos sempre que o arquivo do Power BI for commitado, iniciar automaticamente a execução do pipeline. Para isso, vamos ir em * Pipelines > Pipelines*.

Selecionar o nosso build, editá-lo e navegar até a aba Triggers.

Marcar a opção Enable continuous integration e selecionar a nossa branch.

Alt Text

E depois da integração contínua, podemos também habilitar a entrega contínua.

Para isso, vamos ir em Pipelines > Releases. Editar nosso release e clicar no ícone do Continuous Deployment trigger e habitá-lo.

Alt Text

E está lá! Agora nossos relatórios do Power BI estão versionados e assim que commitados, irão diretamente para o nosso workspaces no portal do Power BI.

Podemos também criar mais um workspace e adicionar mais um step e aprovações. Deixando assim um workspace como ambiente de homologação e outro como produção, ficando assim:

Alt Text

E assim, finalizamos o C.I./C.D. dos nossos relatórios Power BI!

💖 💪 🙅 🚩
higor
Higor Barbosa

Posted on February 16, 2020

Join Our Newsletter. No Spam, Only the good stuff.

Sign up to receive the latest update from our blog.

Related