/tabcmd2

A Python based app that replicates the functionality of the existing TabCMD command line utility

Primary LanguagePythonMIT LicenseMIT

Tabcmd2

Tableau Supported

A Python based app that replicates the functionality of the existing Tabcmd command line utility.

Important Note: Tabcmd2 is a work in progress ("beta") which may be useful for test and development purposes, but is not yet recommended for production environments.

Why Tabcmd2?

  • Run Tabcmd commands on MacOS (existing Tabcmd does not officially support MacOS)
  • Authenticate using Personal Access Tokens (existing Tabcmd does not support Personal Access Token login)
  • Easily use public endpoints available in Python based Tableau Server Client
  • Add more functionality and extend script for other automation tasks

Demo/Samples

coming soon

Documentation

Read the documentation for Tabcmd2.

Get started

This section describes how to install and configure Tabcmd2.

Prerequisites

To work with Tabcmd2, you need the following:

  • MacOS / Windows
  • Python 3.7+ installed

Installation

To install Tabcmd2, follow these steps:

  1. Clone the repo
  2. Run pip install .

Run

To run Tabcmd2, follow these steps:

  1. To run a command:
    • tabcmd2 [command_name] [--flags]
    • Examples:
      • tabcmd2 login --username [username] --password [password] --server [server_name] --site [site_name]
      • tabcmd2 createproject --name [project_name]

Available Commands

This table lists the development status of all commands, listed in the same order as the tabcmd help.

These are the column definitions:

  • TSC: API support is available in TSC
  • Completed: Code implemented, manually tested, unit tests for parsing added
  • Done: Error handling, all unit tests, logging, code review, can produce docs, merged into master
Command TSC Completed Done Notes
addusers (to group) Yes (single user) ✔️
createextracts Yes
creategroup Yes ✔️
createproject Yes ✔️
createsite Yes ✔️
createsiteusers Yes ✔️
createusers Yes (single user) ✔️
decryptextracts Yes
delete workbook-name or datasource-name Yes ✔️
deleteextracts Yes
deletegroup Yes ✔️
deleteproject Yes ✔️
deletesite Yes ✔️
deletesiteusers Yes ✔️
deleteusers No
editdomain No
editsite Yes ✔️
encryptextracts Yes
export Yes ✔️
get url Yes
initialuser No
listdomains No
listsites Yes ✔️
login Yes ✔️
logout Yes ✔️
publish Yes ✔️
publishsamples No
reencryptextracts Yes
refreshextracts No
removeusers Yes ✔️
reset_openid_sub No
runschedule No
set No
syncgroup No
version N/A

Contributions

Code contributions and improvements by the community are welcomed!

See the LICENSE file for current open-source licensing and use information.

Before we can accept pull requests from contributors, we require a signed Contributor License Agreement (CLA).