tableau / document-api-python

Create and modify Tableau workbook and datasource files
https://tableau.github.io/document-api-python/
MIT License
331 stars 177 forks source link

Add Connection, NamedConnection and Relation classes #204

Closed kgpayne closed 1 year ago

kgpayne commented 3 years ago

New Connection, NamedConnection and Relation classes, added to support extraction of metadata via tap-tableau-server. From the readme:

tap-tableau-server is a Singer tap for Tableau Server, focused (currently) on extracting details embedded inside Workbook files. This includes Datasources, Connections and Relations, as well as retrieving table references from embedded Custom SQL text fields inside Relation entities.

Extracting the specifics of Datasources, Connections, Relations and Table References from each Workbook help answer questions like:

  • Which Workbooks depend on which tables in which databases?
  • How many Workbooks depend on Excel, CSV or Google Sheets?
  • Who's credentials are used for embedded connections, in which Workbooks?

Having answers to all of these questions has helped us with wrangling our Tableau Server instance, which is several years old and has over 1000 Workbooks.

In future, we hope to extend this tap to cover other metadata that is exposed by the Tableau Server API's directly (esp. Published Connections and child objects). PR submission very welcome. Watch this space!

jacalata commented 3 years ago

Interesting! Could you please submit a Contributor License Agreement described here: https://tableau.github.io/contributing.html?

bryceglarsen commented 3 years ago

Any update on this? Would love to be able to use the new relation class.

jacalata commented 3 years ago

Unfortunately we absolutely can't merge code from someone who hasn't agreed to our CLA. Hopefully @kgpayne is still available and might come back to sign it and submit!

jacalata commented 3 years ago

But I can switch the PR to branch from development instead of master, and I'll try and add some tests for it so it's easier to finish if they do come back.

bryceglarsen commented 3 years ago

Completely understandable @jacalata - wasn’t sure if CLA had been signed. Thank you though!

kgpayne commented 3 years ago

Hey 👋 Thanks for checking this out! I recently moved roles, and am no longer at tailsdotcom/ to be able to sign an Organisational CLA on their behalf. However @alanmcruickshank might be able to 🙂 He is familiar with this work. I also don't have access to a Tableau instance anymore, so really appreciate your work on tests @jacalata 🙏

salesforce-cla[bot] commented 2 years ago

Thanks for the contribution! Before we can merge this, we need @kgpayne to sign the Salesforce.com Contributor License Agreement.

jacalata commented 2 years ago

Hi @alanmcruickshank - are you interested/able to sign a CLA so I could merge this work into the tool? I don't think the bot is smart enough to understand that, so we might just need it over email.

alanmcruickshank commented 2 years ago

@jacalata - sure thing. Devraj Toor is our new tableau account rep so he can probably facilitate some document signing and has my email address 👍 .

jacalata commented 2 years ago

I finally actually pinged Dev so hopefully will get this wrapped up soon

waltonereed commented 2 years ago

Any updates here? Am interested in the relation class too.

kgpayne commented 1 year ago

Closing as approaching 2 years old and very stale 🤷‍♂️