Skip to content

Unable to publish a workbook successfully #1635

@JeffreyLine

Description

@JeffreyLine

Describe the bug
I have some code that I have been using for quite some time to publish workbook and also data sources to our on -prem environment. We just migrated to the cloud. While I had to change how we authenticate to the cloud the code to publish a dashboard is not completing.
This is a workbook that is connecting live to a database that is on-prem. That is why I was using the skip_connection_check=True. Which seems to hang for me.

Versions
I'm using version 0.36 right now.

To Reproduce
Here is a snippet of the code I was using originally.

    if row['AssetType'] == 'Workbook':
        try:
            ################  PUBLISH WORKBOOK ################
            displayviews = gethiddensheets(server, asset.id, dload_path, RunProcessPath)
            print('    Publishing Workbook!')
            show_tabs = True
            if row['ShowTabs'].upper() == 'FALSE':
                show_tabs = False
            wb_item = TSC.WorkbookItem(name=row['AssetName'], project_id=row['DestinationProjectLUID'], show_tabs=show_tabs)
            if displayviews is None:
                publishedasset = server.workbooks.publish(wb_item, dload_path, 'Overwrite',
                                                      as_job=False, skip_connection_check='True', show_tabs=row['ShowTabs'])
            elif displayviews == -1:
                print('ERROR: Grabbing Hidden Sheets!')
                result = '1|ERROR: Grabbing Hidden Sheets!|'
            else:
                publishedasset = server.workbooks.publish(wb_item, dload_path, 'Overwrite',
                                                      as_job=False, skip_connection_check='True',
                                                      hidden_views=displayviews)
        except Exception as e:
            print('ERROR: Publishing Workbook!')
            print("error in level argument", e.args[0])
            result = '1|ERROR: Publishing Workbook!|'
            return result

New code to adjust for the hidden views in the wb_item:

    if row['AssetType'] == 'Workbook':
        try:
            ################  PUBLISH WORKBOOK ################
            #workbook = server.workbooks.get_by_id(asset.id)
            #all_connections = server.workbooks.populate_connections(workbook)
            displayviews = gethiddensheets(server, asset.id, dload_path, RunProcessPath)
            print('    Publishing Workbook!')
            show_tabs = True
            if row['ShowTabs'].upper() == 'FALSE':
                show_tabs = False
            wb_item = TSC.WorkbookItem(name=row['AssetName'], project_id=row['DestinationProjectLUID'], show_tabs=show_tabs)
            if displayviews is None:
                publishedasset = server.workbooks.publish(wb_item, dload_path, 'Overwrite')
            elif displayviews == -1:
                print('ERROR: Grabbing Hidden Sheets!')
                result = '1|ERROR: Grabbing Hidden Sheets!| '
            else:
                try:
                    print('Hidden Views')
                    wb_item.hidden_views = displayviews

                   publishedasset = server.workbooks.publish(wb_item, dload_path, mode='Overwrite',
                                                              skip_connection_check=True,
                                                              as_job=False)

Results
server.workbooks.publish never returns.
If I remove or change skip_connection_check to false it does complete with the following error.

403132: Forbidden
		AssetPromotionRequest failed to establish a connection to your datasource.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions