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.
E vamos inicializar com arquivo README.
Vamos ir nos 3 pontos e selecionar a opção Upload File.
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.
E lá está o nosso arquivo com extensão .pbix.
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.
E vamos criar o Pipeline!
Como pode ser sua primeira experiência com pipeline no Azure DevOps, vamos optar pelo editor clássico.
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.
Temos alguns templates disponíveis. No nosso caso, iremos criar sem template, e para isso, vamos ir em Empty job.
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.
Vamos procurar por copy e adicionar a tarefa Copy files.
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.
E vamos adicionar nossa segunda e últimas tarefas. Ela será responsável pela publicação do nosso artefato, utilizando o Publish build artifacts.
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.
Agora podemos editar o nome, salvá-lo e rodar manualmente, clicando na opção Save & queue.
Podemos adicionar um comentário e Save and run.
Ele inicia o build e logo receberá uma mensagem de sucesso.
Podemos clicar no Agent Job e assim que finalizado, conseguimos identificar que geramos um artefato.
Clicando no artefato identificamos a pasta, que na verdade é um arquivo zipado, contendo o nosso arquivo com extensão *.pbix.
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.
E somos indicados a utilizar a versão experimental do Pro.
Temos 60 dias para aproveitar essa experiência.
Agora, vamos criar nosso Workspace no Power BI.
Mas, precisamos também adicionar nosso usuário como administrador. Para isso, vamos ir no em workspace > nosso workspace criado > Acesso ao workspace.
E vamos adicionar o nosso usuário como administrador desse workspace. Por padrão, ao criá-lo, você fica como membro apenas.
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.
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.
Vamos ir em Configurações de locatário > Configurações de Desenvolvedor e habilitar o uso de API.
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.
Precisamos entrar com nossas credenciais do Power BI e adicionar um nome a nossa aplicação.
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.
Irei conceder acesso total a essa aplicação, e registrá-lo.
Com isso, temos o nosso Application ID e Application Secret. Vamos copiar o Application ID, usaremos apenas ele.
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.
No Active Diretory, precisamos ir em Registros de Aplicativos.
E aqui vemos o aplicativo que criamos. Vamos entrar nele.
Em Autenticação, precisamos adicionar o aplicativo como cliente público.
E em Permissões de API, precisamos adicionar permissão de aplicativo para o Power BI Service.
E também conceder permissão ao nosso domínio.
Em Proprietários, precisamos adicionar o nosso usuário.
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.
Vamos acessá-la e Get if free!
Selecionar a nossa organização e instalar.
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 *.
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.
Primeiro, vamos ir em Artifacts e vamos indicar o nosso repositório e nossa branch master.
E em Stages, já temos 1 job, vamos clicar nele.
Temos o nosso agente e precisamos adicionar tarefas. Na verdade, iremos adicionar apenas uma. Vamos ir no botão "+".
Vamos pesquisar por Power BI, e já vemos a tarefa da extensão que instalamos a pouco.
E agora temos diversas configurações a fazer.
Usaremos o tipo de autenticação como User.
Mas, precisamos criar essa autenticação. E para isso, vamos ir em Manager.
E vamos criar uma nova conexão, e vai ser do tipo Power BI - User.
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.
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.
Podemos alterar o nome do Release, salvar e criar o nosso release.
Vamos criar nosso release manualmente e vamos rodá-lo.
E terminou com Sucesso!
Podemos entrar no job e ver detalhes da execução.
E acessando workspace, lá está o nosso relatório.
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.
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.
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:
E assim, finalizamos o C.I./C.D. dos nossos relatórios Power BI!
Top comments (2)
Bom dia Higor. Excelente material. Como sou bem iniciante em devops e power bi fiquei com uma dúvida. É possivel fazer o procedimento acima quando o DevOps é on premisses?
Obrigado!
Cara, surgiu a mesma duvida aqui. Queria embedar um relatorio numa intranet