Skip to content

Latest commit

 

History

History

dsw-tdk

dsw-tdk

User Guide GitHub release (latest SemVer) PyPI Docker Pulls LICENSE CII Best Practices Python Version

Template Development Kit for Data Stewardship Wizard

Installation

Python package

You can easily install this tool using pip (from PyPI):

$ pip install dsw-tdk

Optionally, you can clone any version from this repository and install it directly:

$ git clone https://github.com/ds-wizard/dsw-tdk.git
$ pip install -e .

We recommend using virtual environments to avoid clashes in dependencies with other projects.

Dockerized tool

If you don't want to use Python directly on your machine, you can easily use Docker image with DSW TDK:

$ docker run datastewardshipwizard/dsw-tdk --help
$ docker run datastewardshipwizard/dsw-tdk:develop --help

See datastewardshipwizard/dsw-tdk on Docker Hub to check available tags.

Usage

You can find out possibilities directly using --help flag:

$ dsw-tdk --help
$ dsw-tdk put --help

For further information, visit our documentation.

Basic commands

  • new = create a new template project locally using interactive wizard
  • list = list templates available in configured DSW instance
  • get = download a template from DSW instance
  • put = upload a template to DSW instance (create or update)
  • verify = check the metadata of local template project
  • package = create a distribution ZIP package that is importable to DSW via web interface

Environment variables

You can use the following environment variables to avoid repeating CLI options.

  • DSW_API_URL = URL of DSW API you want to use, e.g., https://api.demo.ds-wizard.org (notice that it is not the URL of client, you can find it out by clicking Help > About in DSW)
    • Used when --api-url not specified
  • DSW_API_KEY = API Key of the user authorized to manage document templates
    • Used when --api-key not specified

You can also use them in .env file which is automatically loaded from current directory or specify it using --dot-env option:

$ ls -a
. .. .env my-other-file
$ dsw-tdk list
$ dsw-tdk --dot-env /path/to/my/.env list

How to start

  1. Prepare your DSW instance and admin account (optionally, prepare .env file)
  2. Verify the connection by issuing dsw-tdk list
  3. Create a new template project dsw-tdk new or get existing dsw-tdk get (or re-use some local)
  4. Go to the template project and make edits you need to do
  5. Update template in DSW with dsw-tdk put (or continually with dsw-tdk put --watch)
  6. (or) Create a distribution ZIP package that is importable via DSW web interface with dsw-tdk package

Verbosity

You can use --quiet and --debug flags to toggle less or more output messages:

$ dsw-tdk --quiet list
$ dsw-tdk --debug list

Requirements

  • Python 3.8+
  • DSW instance with matching version (e.g. a local one using Docker)
  • Admin credentials (email+password) to the DSW instance

Contributing

We welcome any form of feedback and contribution to this tool:

  • Report bugs or ask in case of uncertainty using GitHub Issues.
  • Share ideas and feature requests using DSW Ideas site.
  • Submit enhancements using Pull Requests, just please make sure that you comply with used conventions.

For more information read CONTRIBUTING.

License

This project is licensed under the Apache 2 License - see the LICENSE file for more details.