Is there a way to also limit the plugin from getting prompt values if it is already running

Sander
Sander Dataiku DSS Core Designer, Registered Posts: 3 ✭✭✭

Is there a way to limit the plugin UI from getting prompt values if the custom recipe is already running in a flow?


Let set the stage:
I have created a plugin custom recipe to export a tableau worksheet as an PDF for each partner.
the list met partners is provided by an input step and the PDF's are saved to a managed folder.

Because of the Tableau PAT limitations you can only use 1 session at a time and if a new session is created with the same PAT the running session is disconnected with an authentication error

To limit the concurrent executions of a custom recipe in a flow DSS has the resourceKeys method and that seems to work for the recipe but will not block the plugin configuration calling the prompt values.


Operating system used: linux

Best Answer

  • importthepandas
    importthepandas Dataiku DSS Core Designer, Dataiku DSS & SQL, Dataiku DSS Core Concepts, Neuron, Dataiku DSS Adv Designer, Registered, Neuron 2023 Posts: 115 Neuron
    Answer ✓

    One thing about the tableau server API is that if you can use basic auth, you can bypass the single session requirement. This is a workaround of course but it does work and is more reliable than using a PAT. Tableau has a terrible implementation with the single session PATs and orchestration tools like DSS and Airflow struggle with this concept. If you must use PATs, you will essentially need to create a pool and manage the PATs akin to: https://github.com/tableau/server-client-python/issues/717

    You'd need to at least set up a PAT and a backup for your plugin. Then you'll need to rotate them periodically as well based on your tableau admin requirements. A lot of overhead.

Answers

Setup Info
    Tags
      Help me…