Power BI Dataset CI/CD Pipeline (Azure Dev Ops, XMLA Endpoint, Tabular Editor & Service Connection)

Sdílet
Vložit
  • čas přidán 31. 07. 2024
  • LONG VIDEO ALERT!!! Sorry this video ended up being so long. In this episode Johnny shows how you can deploy a Power BI dataset with a CI/CD pipeline that deploys to an XMLA Endpoint using Azure Dev Ops, Tabular Editor and a Service Connection
    References:
    Guy In A Cube - Setting up a Power BI Service Principal - • Power BI Service Princ...
    Tabular Editor Blog- You're Deploying It Wrong - tabulareditor.github.io/2019/...
    Microsoft Docs - Automate Premium workspace and dataset tasks with service principals - docs.microsoft.com/en-gb/powe...
    Greyskull Analytics GitHub - Power BI Dataset CI/CD Pipeline - github.com/GreyskullAnalytics...
    Chapters:
    0:00 Intro
    0:27 Pre-requisities for this technique
    2:39 You're Deploying it Wrong
    3:45 Service Principal admin
    7:28 Configure Service Connection
    9:55 Git repository format
    10:49 Create Build Pipeline
    15:39 Create Release Pipeline
    25:44 Run Pipeline end to end
    29:08 CI/CD in action
    32:12 Other possible features
    34:18 Things that could be better
    #PowerBI #PBI #BusinessIntelligence #TabularEditor #AzureDevOps #ADO #ContinuousIntegration #ContinuousDeployment #CICD #XMLAEndpoint #ServiceConnection
    Credits:
    background music: www.streambeats.com/
    sound effects: soundbible.com/
    gifs: giphy.com/
    additional sounds: www.FesliyanStudios.com
    title music: written and recorded by ME!!!
  • Věda a technologie

Komentáře • 20

  • @AgulloBernat
    @AgulloBernat Před 2 lety

    Man, this is from another universe, great job

  • @ZachRenwickData
    @ZachRenwickData Před 2 lety

    This is awesome. Current client is still not ready for devops deployments of Power BI (can barely get them to use JIRA/tickets to track their work), but in the future I would love to implement this sort of thing in an enterprise environment.

  • @matthewcarter4266
    @matthewcarter4266 Před 2 lety

    Awesome, awesome, awesome. Thank you 🙏

  • @dbszepesi
    @dbszepesi Před 2 lety

    Great video!

  • @hma262
    @hma262 Před 2 lety

    Thanks for this!

  • @sacoroth42
    @sacoroth42 Před 2 měsíci

    Great video. One quick thing: is there a reason why your cursor is hidden? Maybe you've updated this on more recent videos but it can be tricky to follow along and see exactly where you are clicking on the screen in the various steps.

  • @jagatkrishna1543
    @jagatkrishna1543 Před 2 lety +1

    Thanks Sir 🙏💕

  • @gabrielmorais7312
    @gabrielmorais7312 Před 2 lety

    Very good.
    If you figure out if it's possible to set credentials as you said at the end (especially Sharepoint or Dataflows datasources) please let me know!!

  • @talcohen6842
    @talcohen6842 Před 2 lety

    Hi! Thanks a lot for the great video! very helpful!
    Do you think it's possible to scale it to multi-tenants?
    I am developing an application in which each paying customer has his own Azure AD separate tenant which contains his own PBI dataset.
    I want to be able to deploy the datasets automatically to each tenant using Azure DevOps.
    Is it possible? any idea where I can find instructions and guidance?

  • @marto9555
    @marto9555 Před rokem

    Awesome video. This has really helped me deploy a CICD process into my business but I’ve hit a stumbling block!
    When I deploy my tabular model, it strips out all of the members to the RLS security roles.
    I can’t find any documentation on how to resolve this but I was hoping to use a PowerShell script, TMSL Script, or a XMLA cmd to add those members back into their roles post deployment.
    Can you help?? Or perhaps help understand why it strips them out in the first place.
    Cheers bud

  • @Swoopss
    @Swoopss Před 11 měsíci

    Awesome !!
    Is it possible to switch to different workspaces when deploying?

  • @MijalisMendiz
    @MijalisMendiz Před rokem

    Hi thanks for the great video! I'm trying to replicate what you did and I'm getting this error when trying to deploy: ##[error]Deployment failed! The connection string is not valid.
    Do you know what might be the problem? My service connection verifys succesfully, the XMLA endpoint is ok and I couldn't find any other detail about the error
    Thanks!

    • @MijalisMendiz
      @MijalisMendiz Před rokem

      Nvm it was the Tabular Editor version. In your repo there is no link and I used the Daniels Otykier script (which downloads an older version 2.12.4). Using the same version as you did it worked fine.

  • @syedJunaid-ce8yq
    @syedJunaid-ce8yq Před rokem

    Do we need power BI premium for this complete process?

    • @johnnyw5627
      @johnnyw5627 Před rokem

      The prerequisites are covered in the bookmark at 27 seconds. Yes, you need Power BI premium

  • @iadgroe
    @iadgroe Před 2 lety +1

    Nice, but wow did I get blocked hard on a difference in the connection string:
    Deployment failed! The connection string is not valid.
    Cmd.exe exited with code '1'.
    In fact after then bumping into Daniel's video where he shows a part of his connection string, he in fact adds "Provider=MSOLAP;" (czcams.com/video/BbYqcSUXOgU/video.html) which I had to include in order to make the connection. The nice thing is that locally though I did not need to add this... frustrating to say the least.

    • @GreyskullAnalytics
      @GreyskullAnalytics  Před 2 lety

      Is that not for an Analysis Services deployment though? According to the MSFT docs the provider doesn't need to be specified for XMLA endpoint in the PBI Service. Certainly I didn't need to do that in the example demoed here, nor in the implementations I've done with clients

    • @iadgroe
      @iadgroe Před 2 lety

      @@GreyskullAnalytics yes I'm facing this for a power bi deployment (ppu) I know it deviates, but for me currently it does not work when leaving it out...

    • @guices
      @guices Před rokem

      Hi, did you make it works? I'm facing the same problem

    • @guices
      @guices Před rokem +1

      Quick Update: after add "Provider=MSOLAP;" it worked!