Forum Discussion

trevorgermain's avatar
trevorgermain
Advocate I
8 years ago

Automate report deployment

DevOps will not allow publishing reports to production environment by using manual Power BI Desktop publishing.

DevOps will not allow me to connect to the production database to get my connection string right

 

I am attempting to do the following via PowerShell script (PowerBIPS) and REST:

1. Create new datasource on gateway

2. Import .pbix to AppWorkspace

3. Change dataset connection string to redirect from dev server to production server (connection string server and database name need to match the server and database name configured in datasource)

4. Reset dataset gateway binding

 

This doesn't work for import datasets... gives the error "Invalid dataset. This API can only be called on a DirectQuery dataset". The Power BI Embedding story really needs to support the enterprise deployment story better.

 

2 Replies

  • Eric_Zhang's avatar
    Eric_Zhang
    Microsoft Employee

    trevorgermain wrote:

    DevOps will not allow publishing reports to production environment by using manual Power BI Desktop publishing.

    DevOps will not allow me to connect to the production database to get my connection string right

     

    I am attempting to do the following via PowerShell script (PowerBIPS) and REST:

    1. Create new datasource on gateway

    2. Import .pbix to AppWorkspace

    3. Change dataset connection string to redirect from dev server to production server (connection string server and database name need to match the server and database name configured in datasource)

    4. Reset dataset gateway binding

     

    This doesn't work for import datasets... gives the error "Invalid dataset. This API can only be called on a DirectQuery dataset". The Power BI Embedding story really needs to support the enterprise deployment story better.

     


    trevorgermain

    The update connection string API Set All Connections only supports DirectQuery datasets.

    My question is, why not allow me to connect to the production database? As in your steps, the step 1 and 3 both need the pro duction connection string and crendentials to implement.

    • trevorgermain's avatar
      trevorgermain
      Advocate I

      We are a SaaS organization, and are embedding Power BI. The production database is a multi-tenant data warehouse with highly confidential data in it. It would be a common use case to work on a development environment, then deploy to a production environment. It will never be ok to do development directly against the production database.

       

      The connection information is pulled from a secure source during deployment, so as a dev, I never have access to the production connection details.

       

      Why would it be ok to modify DirectQuery connection string, but not Import mode connection string via Set All Connections?