server-client-python
server-client-python copied to clipboard
Flow image unavailable when using flows publish method
Describe the bug When using the flows publish method, the flow image is not available on Tableau Cloud or Tableau Server. This occurs when using a .tfl and .tflx file. The image is available when manually published through Tableau prep using either file type. A flow image is a diagram of the steps created to produce a desired output. This is what the user sees when creating the flow. When zipping and subsequently unzipping the flow file this is the flowGraphThumbnail.svg. The image renders on local machine.
Versions Details of your environment, including:
- Tableau Cloud (latest) and Tableau Server (2023.3.6)
- Python 3.12.3
- TSC library version 3.24
To Reproduce
server.flows.publish( flow_item=new_flow, file=Path('some_flow.tfl'), mode='CreateNew' )
Results
Flow image unavailable
If more information is required, then please let me know.
After downloading the flow from the server manually and inspecting the unzipped contents, I noticed an additional image called flowGraphImage. This image file seems to be produced by the Server / Cloud instance and is not produced when creating and publishing a flow from a local machine, so when I attempt to publish, the image is not available.
This lines up with another observation I had while editing the flow "in-place" on the server. I noticed that if I edited the flow with the flow image not available issue and clicked republish, then the flow image would be produced. Seems like something that is done server side if I have connected to dots correctly.
Is there anyway to trigger this when using the flows endpoint publish method?
It looks like the image can be generated, but when published through the UI it is done separately and this step doesn't happen with the API call.
I have logged a bug internally for the relevant team to look into, and hopefully they can make these behave the same way.
Thank you for the support!