Skip to main content

Client for WESkit deployment and workflow execution.

Project description

WESkit Client

The WESkit client is a command-line tool for interacting with a WESkit instance. It provides a simple interface for managing workflows, executing runs, and monitoring their status.

Installation

  • WESkit client can be installed via pip:

  • Verify installation:

weskit-client --help
  • The client requires setting the environment variable WESKIT_API_URL, the base URL of the WESkit instance (e.g. https://localhost):
export WESKIT_API_URL=URLTOWESKITINSTANCE

Commands Reference

service-info

Display information about the WESkit service.

weskit-client service-info

Purpose: Check service availability and get basic service information.

workflows

List all available workflows on the WESkit instance.

weskit-client workflows

Output: Table showing workflow names, types, versions, and other metadata.

init

Initialize a workflow for execution by creating necessary local files.

weskit-client init --name <workflow-name>

Parameters:

  • --name: Name of the workflow to initialize (required)

Purpose: Prepares a workflow for execution and creates default configuration files.

exec

Execute a workflow with specified configuration.

weskit-client exec --name <workflow-name> --config <config-file>

Parameters:

  • --name: Name of the workflow to execute (required)
  • --config: Path to YAML configuration file (required)

Output: Execution confirmation with run ID.

runs

List and manage workflow runs.

# List runs for current working directory
weskit-client runs

# List all runs
weskit-client runs --all

# Get details for specific run
weskit-client runs --rid <run-id>

Parameters:

  • --all: Show all runs (not just current directory runs)
  • --rid <run-id>: Show details for specific run ID

OIDC support

WESkit can use OIDC (OpenID Connect) for authentication. If your instance is configured with OIDC, you must authenticate before using most commands

  • WESKIT_OIDC_CLIENT_ID: Your OIDC client identifier
  • WESKIT_OIDC_CLIENT_SECRET: Your OIDC client secret
  • WESKIT_OIDC_REDIRECT_PORT: Local port for OIDC redirect (default: 8000)
  • WESKIT_OIDC_CONFIG: OIDC discovery endpoint URL
export WESKIT_OIDC_CLIENT_ID=CLIENTID
export WESKIT_OIDC_CLIENT_SECRET=CLIENTSECRET
export WESKIT_OIDC_REDIRECT_PORT=REDIRECTPORT
export WESKIT_OIDC_CONFIG=OIDC_CONFIG

weskit-client login

This command will:

  1. Open your default web browser
  2. Redirect you to the OIDC provider login page
  3. After successful authentication, redirect back to save your access token locally

Logout removes the stored access token from your local system:

weskit-client logout

Quick Start Workflow

  • Connect to WESkit: Here we suppose that a local WESkit instance is running on the same host and is available at localhost.
export WESKIT_API_URL="https://localhost/"
  • To check the connection to the WESkit instance, request the service info page via:
weskit-client service-info
  • List all available workflows on the WESkit instance. The basic installation of WESkit contains two demo workflows (wf1 and wf2):
weskit-client workflows
+--------+--------+-----------+--------------------+---------------------------------------------------+
| Name   | Type   | Version   | URI                | Description                                       |
+========+========+===========+====================+===================================================+
| wf1    | SMK    | 7.32.3    | file:wf1/Snakefile | This document describes the configuration for WF1 |
+--------+--------+-----------+--------------------+---------------------------------------------------+
| wf2    | SMK    | 7.32.3    | file:wf2/Snakefile | This document describes the configuration for WF2 |
+--------+--------+-----------+--------------------+---------------------------------------------------+
  • Initialization of wf1 will create an empty configuration file in the current working directory.
weskit-client init --name wf1
Workflow 'wf1' initialized and '20250630_config_wf1.yaml' created.
  • After finalizing the configuration by extending the config.yaml, execution of wf1 can be triggered.
weskit-client exec --name wf1 --config 20250630_config_wf1.yaml
Executed workflow 'wf1' with config '20250630_config_wf1.yaml'. Run-id: f3c43665-7d1d-412d-8a59-99fc9e35bd67
  • Status of all current runs can be checked by:
weskit-client runs
+--------------------------------------+---------+--------------------+--------------+
| ID                                   | State   | workflow           | start_time   |
+======================================+=========+====================+==============+
| f3c43665-7d1d-412d-8a59-99fc9e35bd67 | RUNNING | file:wf1/Snakefile |              |
+--------------------------------------+---------+--------------------+--------------+

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

weskit_client-1.0.0.tar.gz (9.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

weskit_client-1.0.0-py3-none-any.whl (9.3 kB view details)

Uploaded Python 3

File details

Details for the file weskit_client-1.0.0.tar.gz.

File metadata

  • Download URL: weskit_client-1.0.0.tar.gz
  • Upload date:
  • Size: 9.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.3

File hashes

Hashes for weskit_client-1.0.0.tar.gz
Algorithm Hash digest
SHA256 69b9bed902a4692485f9952bd75d81e2454487c3104f762bcbf281aaee599a17
MD5 1b7fa90531e6150d61cd601adfd18a1f
BLAKE2b-256 0db8c4dcf793f76215617e976f6c350325395be7950f5170960e1dd4247a014a

See more details on using hashes here.

File details

Details for the file weskit_client-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: weskit_client-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 9.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.3

File hashes

Hashes for weskit_client-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 fcb83b6b16a004ee47c564bffa2ae8d6a749296ed805641a4ae883fa27984415
MD5 1e18437ddc67f53af0e61de7790e246d
BLAKE2b-256 aca8b626500b0caffb25d817939dcfbb55046f317009eb18acbae43efd8302d6

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page