Welcome to Tapis CLI¶
Build and run scalable computational & data science workflows using Tapis
What is Tapis CLI¶
Tapis CLI is a human-friendly, scriptable command line interface, implemented in Python, that helps scientists and engineers build and manage scalable computational and data science workflow projects using the Tapis platform. It is a replacement for a pure-Bash CLI environment known as agave-cli that we hope brings you new features, better reliability, and dramatically enhanced productivity.
Tapis CLI provides a unified interface to multiple web service APIs, allowing them to be easily orchestrated and composed into higher-order constructs combining HPC, data management, cloud computing, and other aspects of computing.
Get in Touch¶
Thank you for your interest in Tapis CLI. We are here to help. There are several ways to get in touch with us:
- Open an issue at github.com/TACC-Cloud/tapis-cli
- Email us at help@tacc.cloud
- Chat at tacc-cloud.slack.com in the
#support
or#cli
channel
Installing Tapis CLI¶
Tapis CLI is available as a Python package. You can visit its GitHub repository
or get the latest version from PyPI: pip install tapis-cli
We highly recommend using Python 3.7+ as the Python runtime behind Tapis CLI. We support Python 2.7 for legacy applications, but on a best-effort basis as Python 2.7 is a deprecated language.
From Source¶
$ git clone https://github.com/TACC-Cloud/tapis-cli.git
$ cd tapis-cli
$ pip install --upgrade --user .
Initialize a Session¶
You must set up a Tapis session on each host where you will use Tapis CLI. This
is a scripted process implemented by tapis auth init
. The first time you
run this command on a new host, you will be shown an introductory screen
where we ask two questions of you. Future invocations of the init
command
will not display these messages unless their contents change. You will then
be prompted for tenant, username, and password required to set up a session.
$ tapis auth init
Use of Tapis requires acceptance of the TACC Acceptable Use Policy
which can be found at https://portal.tacc.utexas.edu/tacc-usage-policy
Do you agree to abide by the AUP? (type 'y' or 'n' then Return) y
Use of Tapis requires acceptance of the Tapis Project Code of Conduct
which can be found at https://tapis-project.org/code-conduct
Do you agree to abide by this CoC? (type 'y' or 'n' then Return) y
To improve our ability to support Tapis and the Tapis CLI, we would like to
collect your IP address, operating system and Python version. No personally-
identifiable information will be collected. This data will only be shared in
aggregate form with funders and Tapis platform stakeholders.
Do you consent to this reporting? [Y/n]: Y
Tapis API access
################
Available Tenants
*****************
3dem agave.prod araport.org bridge designsafe
iplantc.org irec portals sd2e sgci
tacc.prod vdjserver.org
Enter a tenant name: tacc.prod
Username: tacotron
Password for tacotron:
Container registry access
#########################
Registry Url [https://index.docker.io]:
Registry Username []: tacotron
Registry Password []:
Registry Namespace []: TACO
Git server access
#################
Git Url [https://github.com]:
Git Username []: taconaut
Git Token []:
Git Namespace []: TACOS
+--------------------+---------------------------------+
| Field | Value |
+--------------------+---------------------------------+
| tenant_id | tacc.prod |
| username | tacotron |
| api_key | uAShaDfy0vF7hgFcAqx7oeAtO6oa |
| access_token | a31c66cfaa45451c95df6fd473ffd4b |
| expires_at | Thu Sep 19 14:08:37 2019 |
| registry_url | https://index.docker.io |
| registry_username | tacotron |
| registry_password | T0rchy$ |
| registry_namespace | tacotron |
| git_url | https://github.com |
| git_username | tacomatic |
| git_token | hqd8kw59h2h5z4zw78e64qz9 |
| git_namespace | TACOS |
+--------------------+---------------------------------+
Note
It is possible to bypass display of the first-run display in order to use Tapis CLI as part of a continuous integration deployment by setting TAPIS_CLI_NO_PROMPT=1 in the user environment.
Getting Help¶
The CLI features extensive contextual help. Get a listing of
supported commands and global options via --help
.
$ tapis --help
Find available commands:
$ tapis apps --help
Command "apps" matches:
apps create
apps disable
apps enable
apps history
apps list
apps pems grant
...
Get help for a specific command:
There is a --help
flag for each command.
$ tapis help apps list
$ # or
$ tapis apps list --help
Overview¶
Tapis CLI implements a consistent grammar and syntax for all Tapis services, as well as for client-side workflows (such as application publishing) that coordinate multiple API calls across different services. Verbs are named consistently across services, as are subjects and objects. Usually, entity names and verbs track perfectly to the underlying API, but in some cases, revisions have been made for clarity based on user feedback.
The top-level command is tapis and has the following usage options.
$ tapis -h
usage: tapis [--version] [-v | -q] [--log-file LOG_FILE] [-h] [--debug]
Tapis CLI: Command line tools to support the TACC Tapis platform. For support
contact "TACC Help" <cli-help@tacc.cloud>
optional arguments:
--version show program's version number and exit
-v, --verbose Increase verbosity of output. Can be repeated.
-q, --quiet Suppress output except warnings and errors.
--log-file LOG_FILE Specify a file to log output. Disabled by default.
-h, --help Show help message and exit.
--debug Show tracebacks on errors.
Help¶
Every command and subcommand has a help option. It is accessible by passing
-h
. Please use this as much effort has gone into making the help text
consistent and correct across the entire CLI.
Verbose Output¶
The -v
flag replicates and extends the original Bash CLI feature of
presenting the results from an API command as JSON. Please note that while
every attempt is made to avoid any changes, the displayed JSON is rendered
by the CLI rather than being displayed directly as it comes back from the
service. This was critical for implementing robust error handling.
Debug Mode¶
Inevitably, an error will be encountered. The cliff framework that the CLI is implemented in does a great job at swallowing errors, printing out just a summary to the screen when they occur.
To see a detailed Python stack trace (for example, if you are trying to
file an issue), repeat the failed command with the --debug
option.
Authn/Authz¶
To initialize a host to use Tapis, run the tapis auth init
command.
$ tapis auth init
Available Tenants
=================
3dem agave.prod araport.org bridge designsafe
iplantc.org irec portals sd2e sgci
tacc.prod vdjserver.org
Enter a tenant name: tacc.prod
Username: tacotron
Password for tacotron:
+--------------+---------------------------------+
| Field | Value |
+--------------+---------------------------------+
| tenant_id | tacc.prod |
| username | tacotron |
| client_name | _cli-tacc.prod-tacotron-macbook |
| api_key | uAShaDfy0vF7hgFcAqx7oeAtO6oa |
| access_token | a31c66cfaa45451c95df6fd473ffd4b |
| expires_at | Thu Sep 19 14:08:37 2019 |
+--------------+---------------------------------+
Re-running without changing tenant or username will display the current auth
context, while changing either tenant or username (or specifying
--interactive
mode) will re-initialize the host to use the specified
tenant/username combination.
Explicit configuration switching (tapis auth switch
) is not supported.
NOTE If you have a configured, but expired Agave client in
~/.agave/current
, the init
command may fail to detect the expiration
and may skip a key step. If you get a message Tapis client appears invalid
re-run with tapis auth init --interactive
and follow the prompts.
Manually Specifying Client Name¶
The default behavior for Tapis CLI is to generate and manage one Oauth2 client
per host you have installed it on. This helps avoid race conditions when you
might be using the CLI in two places at once. This is done by naming the client
after your local host. However, this can be a problem if you are using Tapis CLI
for automation where the hostname may change (such as within Github actions or a
Jenkins job). In this case, you can manually specify a client name by passing
--client-name
along with tapis auth init
. Please note the client name
must be <= 64 characters and may only contain A-Za-z0-9 and . - _
Commands¶
auth init¶
Command description
tapis auth init
[--interactive]
[--tenant-id TENANT_ID]
[--username USERNAME]
[--password PASSWORD]
[--client-name CLIENT_NAME]
[--registry-url URL]
[--registry-username USERNAME]
[--registry-password PASSWORD]
[--registry-namespace NAMESPACE]
[--git-username USERNAME]
[--git-token TOKEN]
[--git-namespace NAMESPACE]
[--github]
[--no-dockerhub]
-
--interactive
¶
Prompt for all values
-
--tenant-id
<TENANT_ID>
¶ Tapis tenant ID
-
--username
<USERNAME>
¶ Tapis username
-
--password
<PASSWORD>
¶ Tapis password
-
--client-name
<CLIENT_NAME>
¶ Tapis client name. Leave empty to auto-generate.
-
--registry-url
URL
¶ Registry URL
-
--registry-username
USERNAME
¶ Registry username
-
--registry-password
PASSWORD
¶ Registry password
-
--registry-namespace
NAMESPACE
¶ Registry namespace
-
--git-username
USERNAME
¶ Git username
-
--git-token
TOKEN
¶ Git personal access token
-
--git-namespace
NAMESPACE
¶ Git namespace
-
--github
¶
Configure Github credentials
-
--no-dockerhub
¶
Do not configure DockerHub credentials
auth show¶
Show current Tapis authentication configuration
tapis auth show
This command is provided by the tapis-cli plugin.
Actors¶
Support for Tapis actors (also known as Abaco actors) is is provided by the
actors command set. It includes supplementary workflows for creating
and deploying actor projects such as actors init
and actors deploy
.
General¶
List and inspect all Actors the currently authenticated user can access.
actors list¶
List available Actors
tapis actors list
[--sort-ascending | --sort-descending]
[--filter GLOB]
-
--sort-ascending
¶
sort the column(s) in ascending order
-
--sort-descending
¶
sort the column(s) in descending order
-
--filter
GLOB
¶ Filter by name,description,image,owner
Replaces legacy CLI command “abaco list”
actors show¶
Show details for an Actor
tapis actors show [-Z NONCE] ACTOR_ID
-
-Z
NONCE
,
--nonce
NONCE
¶ Tapis nonce
-
ACTOR_ID
¶
Actor identifier
Replaces legacy CLI command “abaco list”
Messaging¶
Send a message to an Actor’s mailbox, resulting in an Execution. This can be done asynchronously (default) or synchronously. For the latter case, it is possible to save the result to a file.
actors submit¶
Send an asynchronous message to an Actor
tapis actors submit
[-Z NONCE]
(-m STRING | -F FILEPATH)
[-e key=value]
ACTOR_ID
-
-Z
NONCE
,
--nonce
NONCE
¶ Tapis nonce
-
-m
STRING
,
--message
STRING
¶ Message to send to the Actor
-
-F
FILEPATH
,
--file
FILEPATH
¶ Text file containing Actor message
-
-e
key=value
¶ Variable to send to the Actor (can be specified multiple times)
-
ACTOR_ID
¶
Actor identifier
Replaces legacy CLI command “abaco run”
actors run¶
Send a message to an Actor and await response
tapis actors run
[-Z NONCE]
(-m STRING | -F FILEPATH)
[-e key=value]
[-O OUTPUT]
[--binary]
ACTOR_ID
-
-Z
NONCE
,
--nonce
NONCE
¶ Tapis nonce
-
-m
STRING
,
--message
STRING
¶ Message to send to the Actor
-
-F
FILEPATH
,
--file
FILEPATH
¶ Text file containing Actor message
-
-e
key=value
¶ Variable to send to the Actor (can be specified multiple times)
-
-O
<OUTPUT>
¶ Output destination (default: STDOUT)
-
--binary
¶
Treat output as binary data
-
ACTOR_ID
¶
Actor identifier
Replaces legacy CLI command “abaco run”
Executions¶
List and inspect Executions for a given Actor. It is also possible to view the logs for a specific Execution.
actors execs list¶
List Executions for a specific Actor
tapis actors execs list
[--sort-ascending | --sort-descending]
[-Z NONCE]
[--filter GLOB]
ACTOR_ID
-
--sort-ascending
¶
sort the column(s) in ascending order
-
--sort-descending
¶
sort the column(s) in descending order
-
-Z
NONCE
,
--nonce
NONCE
¶ Tapis nonce
-
--filter
GLOB
¶ Filter by finalState,status
-
ACTOR_ID
¶
Actor identifier
Replaces legacy CLI command “abaco executions”
actors execs logs¶
Show logs for a specific Execution
tapis actors execs logs
[--sort-ascending | --sort-descending]
[-Z NONCE]
ACTOR_ID
EXECUTION_ID
-
--sort-ascending
¶
sort the column(s) in ascending order
-
--sort-descending
¶
sort the column(s) in descending order
-
-Z
NONCE
,
--nonce
NONCE
¶ Tapis nonce
-
ACTOR_ID
¶
Actor identifier
-
EXECUTION_ID
¶
Execution identifier
Replaces legacy CLI command “abaco logs”
Sharing¶
Assign and manage human-readable nicknames for Actors that can be used in lieu of their unique IDs.
Aliases¶
actors aliases create¶
Add an Alias for an Actor
tapis actors aliases create ALIAS_ID ACTOR_ID
-
ALIAS_ID
¶
Alias string
-
ACTOR_ID
¶
Actor identifier
Replaces legacy CLI command “abaco aliases create”
actors aliases delete¶
Delete an Actor Alias
tapis actors aliases delete ALIAS_ID
-
ALIAS_ID
¶
Alias string
Replaces legacy CLI command “abaco aliases rm”
actors aliases list¶
List all Actor Aliases
tapis actors aliases list
[--sort-ascending | --sort-descending]
[-l INT]
[-o INT]
[--filter GLOB]
-
--sort-ascending
¶
sort the column(s) in ascending order
-
--sort-descending
¶
sort the column(s) in descending order
-
-l
INT
,
--limit
INT
¶ Limit to N records (default: 100)
-
-o
INT
,
--offset
INT
¶ Skip first N records
-
--filter
GLOB
¶ Filter by owner
Replaces legacy CLI command “abaco aliases list”
Nonces¶
Generate and manage Nonces, which are a kind of API key for Actors that allow them to be used without authenticating to the Tapis platform.
actors nonces create¶
Create a Nonce for the specified Actor (or Alias)
tapis actors nonces create
[--level LEVEL]
[--max-uses INT]
[-A]
ACTOR_ID
-
--level
LEVEL
¶ Optional Permissions level for this Nonce (default: EXECUTE)
-
--max-uses
INT
¶ Optional Max number of times Nonce can be redeemed (default: -1)
-
-A
¶
Identifier is an ALIAS rather than an ACTOR_ID
-
ACTOR_ID
¶
Actor identifier
actors nonces delete¶
Delete a Nonce from an Actor (or Alias)
tapis actors nonces delete [-A] ACTOR_ID NONCE_ID
-
-A
¶
Identifier is an ALIAS rather than an ACTOR_ID
-
ACTOR_ID
¶
Actor identifier
-
NONCE_ID
¶
Nonce identifier
actors nonces list¶
List Nonces for the specified Actor (or Alias)
tapis actors nonces list
[--sort-ascending | --sort-descending]
[--filter GLOB]
[-A]
ACTOR_ID
-
--sort-ascending
¶
sort the column(s) in ascending order
-
--sort-descending
¶
sort the column(s) in descending order
-
--filter
GLOB
¶ Filter by description,level
-
-A
¶
Identifier is an ALIAS rather than an ACTOR_ID
-
ACTOR_ID
¶
Actor identifier
Permissions¶
Grant and manage update and execution rights for an Actor to other Tapis platform users.
Administration¶
Create and manage Actors. This can be accomplished by interacting
directly with the Abaco APIs via create
, update
, and
delete
or via Tapis CLI workflows init
and deploy
.
actors create¶
Create an Actor
tapis actors create
--repo ACTOR_REPO
-n NAME
[-d DESCRIPTION]
[--stateful | --stateless]
[--hints ACTOR_HINTS]
[--privileged | --unprivileged]
[--tokens | --no-tokens]
[--actor-uid | --user-uid]
[-e KEY=VALUE | -E ACTOR_ENV_FILE]
[--link ACTOR_ID|ALIAS]
[--webhook URL]
[--cron-schedule SCHEDULE]
[--cron-on | --cron-off]
[--force]
-
--repo
<ACTOR_REPO>
¶ Docker image repo for the Actor
-
-n
NAME
,
--name
NAME
¶ Name of the Actor
-
-d
DESCRIPTION
,
--description
DESCRIPTION
¶ Plaintext description of the Actor
-
--stateful
¶
Actor will be stateful
-
--stateless
¶
Actor will be stateless [default]
-
--hints
<ACTOR_HINTS>
¶ Comma-separated list of keyword hints
-
--privileged
¶
Actor will have elevated privileges
-
--unprivileged
¶
Actor will not have elevated privileges [default]
-
--tokens
¶
Actor will request Tapis Oauth2 tokens [default]
-
--no-tokens
¶
Actor will not request Tapis Oauth2 tokens
-
--actor-uid
¶
Actor will run as container UID
-
--user-uid
¶
Actor will run as the User UID [default]
-
-e
KEY=VALUE
,
--env
KEY=VALUE
¶ Actor environment variables (can be specified multiple times)
-
-E
<ACTOR_ENV_FILE>
,
--env-file
<ACTOR_ENV_FILE>
¶ Actor environment variables JSON file
-
--link
ACTOR_ID|ALIAS
¶ Actor ID or Alias event notifications
-
--webhook
URL
¶ URL for event notifications
-
--cron-schedule
SCHEDULE
¶ Cron schedule (yyyy-mm-dd hh + <int> <time unit>)
-
--cron-on
¶
Actor cron is on
-
--cron-off
¶
Actor cron is off
-
--force
¶
Force Abaco to update Actor container image
Replaces legacy CLI command “abaco create”
actors update¶
Update an Actor
tapis actors update
--repo ACTOR_REPO
[-d DESCRIPTION]
[--hints ACTOR_HINTS]
[--privileged | --unprivileged]
[--tokens | --no-tokens]
[--actor-uid | --user-uid]
[-e KEY=VALUE | -E ACTOR_ENV_FILE]
[--link ACTOR_ID|ALIAS]
[--webhook URL]
[--cron-schedule SCHEDULE]
[--cron-on | --cron-off]
[--force]
ACTOR_ID
-
--repo
<ACTOR_REPO>
¶ Docker image repo for the Actor
-
-d
DESCRIPTION
,
--description
DESCRIPTION
¶ Plaintext description of the Actor
-
--hints
<ACTOR_HINTS>
¶ Comma-separated list of keyword hints
-
--privileged
¶
Actor will have elevated privileges
-
--unprivileged
¶
Actor will not have elevated privileges [default]
-
--tokens
¶
Actor will request Tapis Oauth2 tokens [default]
-
--no-tokens
¶
Actor will not request Tapis Oauth2 tokens
-
--actor-uid
¶
Actor will run as container UID
-
--user-uid
¶
Actor will run as the User UID [default]
-
-e
KEY=VALUE
,
--env
KEY=VALUE
¶ Actor environment variables (can be specified multiple times)
-
-E
<ACTOR_ENV_FILE>
,
--env-file
<ACTOR_ENV_FILE>
¶ Actor environment variables JSON file
-
--link
ACTOR_ID|ALIAS
¶ Actor ID or Alias event notifications
-
--webhook
URL
¶ URL for event notifications
-
--cron-schedule
SCHEDULE
¶ Cron schedule (yyyy-mm-dd hh + <int> <time unit>)
-
--cron-on
¶
Actor cron is on
-
--cron-off
¶
Actor cron is off
-
--force
¶
Force Abaco to update Actor container image
-
ACTOR_ID
¶
Actor identifier
Replaces legacy CLI command “abaco update”
actors delete¶
Delete an Actor
tapis actors delete ACTOR_ID
-
ACTOR_ID
¶
Actor identifier
Replaces legacy CLI command “abaco rm”
actors deploy¶
Deploy an Actor from a project directory
tapis actors deploy
[--sort-ascending | --sort-descending]
[--ini FILEPATH]
[-I ACTOR_ID | --force-create]
[-E ENVS_FILE]
[-R]
[--ignore-errors]
[--no-build]
[--no-pull]
[--no-push]
[--no-create]
[--no-cache]
[--no-grant]
-
--sort-ascending
¶
sort the column(s) in ascending order
-
--sort-descending
¶
sort the column(s) in descending order
-
--ini
FILEPATH
¶ .ini file (project.ini)
-
-I
<ACTOR_ID>
,
--id
<ACTOR_ID>
¶ Actor identifier (overrides existing)
-
--force-create
¶
Force creation of new Actor
-
-E
<ENVS_FILE>
,
--env-file
<ENVS_FILE>
¶ Environment variables JSON file (secrets.json)
-
-R
,
--dry-run
¶
Shortcut: Only build container
-
--ignore-errors
¶
Ignore deployment errors and warnings
-
--no-build
¶
Do not build container image
-
--no-pull
¶
Do not pull source image when building
-
--no-push
¶
Do not push built container image
-
--no-create
¶
Do not create or update Tapis actor
-
--no-cache
¶
Do not cache the Tapis actor identifer
-
--no-grant
¶
Do not grant actor permissions
Replaces legacy CLI command “abaco deploy”
Workers¶
View and manage an Actor’s workers, which control the extent to which the Actor can scale to accomodate additional concurrent messages.
actors workers create¶
Add Workers to the specified Actor
tapis actors workers create ACTOR_ID INT
-
ACTOR_ID
¶
Actor identifier
-
INT
¶
The number of workers to ensure are running; Note:Only Admins are authorized to update workers
Replaces legacy CLI command “abaco workers”
actors workers delete¶
Delete a Worker
tapis actors workers delete ACTOR_ID WORKER_ID
-
ACTOR_ID
¶
Actor identifier
-
WORKER_ID
¶
Worker identifier
actors workers list¶
List Workers for an Actor
tapis actors workers list
[--sort-ascending | --sort-descending]
[-Z NONCE]
[--filter GLOB]
ACTOR_ID
-
--sort-ascending
¶
sort the column(s) in ascending order
-
--sort-descending
¶
sort the column(s) in descending order
-
-Z
NONCE
,
--nonce
NONCE
¶ Tapis nonce
-
--filter
GLOB
¶ Filter by id
-
ACTOR_ID
¶
Actor identifier
Replaces legacy CLI command “abaco workers”
Projects¶
Create and deploy new actors from a configuration-driven template.
apps init¶
Initialize a new Tapis App project from a template
tapis apps init
[--sort-ascending | --sort-descending]
[-L]
[-R]
[-O DIRECTORY]
[-N STRING]
[--app-label STRING]
[--app-description STRING]
[--app-version N.N.N]
[--repo URL]
[--checkout COMMIT]
[--template TEMPLATE]
-
--sort-ascending
¶
sort the column(s) in ascending order
-
--sort-descending
¶
sort the column(s) in descending order
-
-L
,
--list-templates
¶
List available templates and quit
-
-R
,
--dry-run
¶
Show configuration and quit
-
-O
DIRECTORY
,
--output-dir
DIRECTORY
¶ Output directory (default: .)
-
-N
STRING
,
--app-name
STRING
¶ App name (default: new_app)
-
--app-label
STRING
¶ App human-readable label
-
--app-description
STRING
¶ One-sentence description
-
--app-version
N.N.N
¶ App semantic version
-
--repo
URL
¶ Templates repository (https://github.com/TACC-Cloud/cc-tapis-v2-app.git)
-
--checkout
COMMIT
¶ Branch/Tag/Commit (master)
-
--template
TEMPLATE
¶ Template ID (default)
Replaces legacy CLI command “apps-init”
apps deploy¶
Deploy an App from a project directory
tapis apps deploy
[--sort-ascending | --sort-descending]
[-W DIRECTORY]
[-F FILEPATH]
[--ini FILEPATH]
[-R]
[--ignore-errors]
[--no-build]
[--no-pull]
[--no-push]
[--backup]
[--no-upload]
[--no-create]
[--no-grant]
[--no-grant-roles]
[--display]
-
--sort-ascending
¶
sort the column(s) in ascending order
-
--sort-descending
¶
sort the column(s) in descending order
-
-W
DIRECTORY
¶ Working directory
-
-F
FILEPATH
,
--file
FILEPATH
¶ JSON payload file (app.json)
-
--ini
FILEPATH
¶ .ini file (project.ini)
-
-R
,
--dry-run
¶
Shortcut: Only build container
-
--ignore-errors
¶
Ignore deployment errors and warnings
-
--no-build
¶
Do not build container image
-
--no-pull
¶
Do not pull source image when building
-
--no-push
¶
Do not push built container image
-
--backup
¶
Back up deployment path if present
-
--no-upload
¶
Do not upload app assets to Tapis storage
-
--no-create
¶
Do not create a Tapis app record
-
--no-grant
¶
Do not automatically do application permission grant(s)
-
--no-grant-roles
¶
Do not automatically do system role grant(s)
-
--display
¶
Display rendered app in deployment log
Replaces legacy CLI command “apps-deploy”
Apps¶
Support for the core Tapis applications life cycle is provided by the apps
command set. Extensions to the core API commands, such as apps init
and apps deploy
are also included.
General¶
apps list¶
List the Apps catalog
tapis apps list
[--sort-ascending | --sort-descending]
[-l INT]
[-o INT]
-
--sort-ascending
¶
sort the column(s) in ascending order
-
--sort-descending
¶
sort the column(s) in descending order
-
-l
INT
,
--limit
INT
¶ Limit to N records (default: 100)
-
-o
INT
,
--offset
INT
¶ Skip first N records
Replaces legacy CLI command “apps-list”
apps show¶
Show details for an App
tapis apps show APP_ID
-
APP_ID
¶
App identifier
Replaces legacy CLI command “apps-list”
apps history¶
Show history for an App
tapis apps history
[--sort-ascending | --sort-descending]
[-l INT]
[-o INT]
APP_ID
-
--sort-ascending
¶
sort the column(s) in ascending order
-
--sort-descending
¶
sort the column(s) in descending order
-
-l
INT
,
--limit
INT
¶ Limit to N records (default: 100)
-
-o
INT
,
--offset
INT
¶ Skip first N records
-
APP_ID
¶
App identifier
Replaces legacy CLI command “apps-history”
apps create¶
Create a new App
tapis apps create [-W DIRECTORY] [-F FILEPATH] [--ini FILEPATH]
-
-W
DIRECTORY
¶ Working directory
-
-F
FILEPATH
,
--file
FILEPATH
¶ JSON payload file
-
--ini
FILEPATH
¶ .ini file (project.ini)
Replaces legacy CLI command “apps-addupdate”
apps update¶
Update an existing App
tapis apps update [-W DIRECTORY] [-F FILEPATH] [--ini FILEPATH] APP_ID
-
-W
DIRECTORY
¶ Working directory
-
-F
FILEPATH
,
--file
FILEPATH
¶ JSON payload file
-
--ini
FILEPATH
¶ .ini file (project.ini)
-
APP_ID
¶
App identifier
Replaces legacy CLI command “apps-addupdate”
apps clone¶
Clone an App
tapis apps clone
[-e EXECUTION_SYSTEM]
[-s STORAGE_SYSTEM]
[-p STORAGE_PATH]
[-n APP_NAME]
[-x APP_VERSION]
APP_ID
-
-e
<EXECUTION_SYSTEM>
,
--execution-system
<EXECUTION_SYSTEM>
¶ Execution system where the cloned app will run. Defaults to the current app’s execution system.
-
-s
<STORAGE_SYSTEM>
,
--deployment-system
<STORAGE_SYSTEM>
¶ Storage system where the cloned app assets will be stored. Defaults to the current user’s default storage system.
-
-p
<STORAGE_PATH>
,
--deployment-path
<STORAGE_PATH>
¶ Path on storage system where the cloned app assets will be stored. Only applies when cloning a public app.
-
-n
<APP_NAME>
,
--app-name
<APP_NAME>
¶ Optional new name of the cloned app. Defaults to the current App name and the authenticated user’s username appended with a dash.
-
-x
<APP_VERSION>
,
--app-version
<APP_VERSION>
¶ Optional new version of the cloned app. Defaults to the current app’s version number.
-
APP_ID
¶
App identifier
Replaces legacy CLI command “apps-clone”
Sharing¶
Manage access by other users to Tapis apps that you control.
apps pems grant¶
Grant Permissions on an App to a User
tapis apps pems grant
[--sort-ascending | --sort-descending]
[-l INT]
[-o INT]
APP_ID
USERNAME
PERMISSION
-
--sort-ascending
¶
sort the column(s) in ascending order
-
--sort-descending
¶
sort the column(s) in descending order
-
-l
INT
,
--limit
INT
¶ Limit to N records (default: 100)
-
-o
INT
,
--offset
INT
¶ Skip first N records
-
APP_ID
¶
App identifier
-
USERNAME
¶
Tapis username
-
PERMISSION
¶
Permission string (ALL| READ| WRITE| READ_WRITE| EXECUTE| READ_EXECUTE| WRITE_EXECUTE| NONE)
Replaces legacy CLI command “apps-pems-update”
apps pems list¶
List Permissions for an specific App
tapis apps pems list
[--sort-ascending | --sort-descending]
[-l INT]
[-o INT]
APP_ID
-
--sort-ascending
¶
sort the column(s) in ascending order
-
--sort-descending
¶
sort the column(s) in descending order
-
-l
INT
,
--limit
INT
¶ Limit to N records (default: 100)
-
-o
INT
,
--offset
INT
¶ Skip first N records
-
APP_ID
¶
App identifier
Replaces legacy CLI command “apps-pems-list”
apps pems revoke¶
Revoke Permissions on an App for a User
tapis apps pems revoke
[--sort-ascending | --sort-descending]
[-l INT]
[-o INT]
APP_ID
USERNAME
-
--sort-ascending
¶
sort the column(s) in ascending order
-
--sort-descending
¶
sort the column(s) in descending order
-
-l
INT
,
--limit
INT
¶ Limit to N records (default: 100)
-
-o
INT
,
--offset
INT
¶ Skip first N records
-
APP_ID
¶
App identifier
-
USERNAME
¶
Tapis username
Replaces legacy CLI command “apps-pems-update”
Search¶
Search for tapis Apps by any of several criteria. Please consult
tapis apps search -h
for guidance.
Administration¶
Manage global settings for a Tapis app.
apps publish¶
Publish an App for use by others
tapis apps publish
[-e PUBLIC_EXECUTION_SYSTEM]
[-n APP_NAME]
[-x APP_VERSION]
APP_ID
-
-e
<PUBLIC_EXECUTION_SYSTEM>
,
--execution-system
<PUBLIC_EXECUTION_SYSTEM>
¶ Optional execution system where the public app will run
-
-n
<APP_NAME>
,
--app-name
<APP_NAME>
¶ Optional new name of the public app
-
-x
<APP_VERSION>
,
--app-version
<APP_VERSION>
¶ Optional new version of the public app
-
APP_ID
¶
App identifier
Replaces legacy CLI command “apps-publish”
Projects¶
Create and deploy new apps from a configuration-driven template.
apps init¶
Initialize a new Tapis App project from a template
tapis apps init
[--sort-ascending | --sort-descending]
[-L]
[-R]
[-O DIRECTORY]
[-N STRING]
[--app-label STRING]
[--app-description STRING]
[--app-version N.N.N]
[--repo URL]
[--checkout COMMIT]
[--template TEMPLATE]
-
--sort-ascending
¶
sort the column(s) in ascending order
-
--sort-descending
¶
sort the column(s) in descending order
-
-L
,
--list-templates
¶
List available templates and quit
-
-R
,
--dry-run
¶
Show configuration and quit
-
-O
DIRECTORY
,
--output-dir
DIRECTORY
¶ Output directory (default: .)
-
-N
STRING
,
--app-name
STRING
¶ App name (default: new_app)
-
--app-label
STRING
¶ App human-readable label
-
--app-description
STRING
¶ One-sentence description
-
--app-version
N.N.N
¶ App semantic version
-
--repo
URL
¶ Templates repository (https://github.com/TACC-Cloud/cc-tapis-v2-app.git)
-
--checkout
COMMIT
¶ Branch/Tag/Commit (master)
-
--template
TEMPLATE
¶ Template ID (default)
Replaces legacy CLI command “apps-init”
apps deploy¶
Deploy an App from a project directory
tapis apps deploy
[--sort-ascending | --sort-descending]
[-W DIRECTORY]
[-F FILEPATH]
[--ini FILEPATH]
[-R]
[--ignore-errors]
[--no-build]
[--no-pull]
[--no-push]
[--backup]
[--no-upload]
[--no-create]
[--no-grant]
[--no-grant-roles]
[--display]
-
--sort-ascending
¶
sort the column(s) in ascending order
-
--sort-descending
¶
sort the column(s) in descending order
-
-W
DIRECTORY
¶ Working directory
-
-F
FILEPATH
,
--file
FILEPATH
¶ JSON payload file (app.json)
-
--ini
FILEPATH
¶ .ini file (project.ini)
-
-R
,
--dry-run
¶
Shortcut: Only build container
-
--ignore-errors
¶
Ignore deployment errors and warnings
-
--no-build
¶
Do not build container image
-
--no-pull
¶
Do not pull source image when building
-
--no-push
¶
Do not push built container image
-
--backup
¶
Back up deployment path if present
-
--no-upload
¶
Do not upload app assets to Tapis storage
-
--no-create
¶
Do not create a Tapis app record
-
--no-grant
¶
Do not automatically do application permission grant(s)
-
--no-grant-roles
¶
Do not automatically do system role grant(s)
-
--display
¶
Display rendered app in deployment log
Replaces legacy CLI command “apps-deploy”
Config¶
View and manage global configuration settings for Tapis CLI.
config get¶
Get a Tapis CLI setting
tapis config get SETTING_NAME
-
SETTING_NAME
¶
Tapis setting name
This command is provided by the tapis-cli plugin.
config list¶
List current Tapis CLI settings
tapis config list [--sort-ascending | --sort-descending]
-
--sort-ascending
¶
sort the column(s) in ascending order
-
--sort-descending
¶
sort the column(s) in descending order
This command is provided by the tapis-cli plugin.
Files¶
Support for the core Tapis file management is provided by the files command set. New, and of note, is support for wildcard include and exclude filters when uploading and downloading, as well as a “sync” mode for downloads that only retrieves files from Tapis if they are different from their local copy.
General Commands¶
files list¶
List contents of a Files path
tapis files list
[--sort-ascending | --sort-descending]
[-l INT]
[-o INT]
[--all]
[--reverse]
[--sort-size | --sort-time]
AGAVE_URI
-
--sort-ascending
¶
sort the column(s) in ascending order
-
--sort-descending
¶
sort the column(s) in descending order
-
-l
INT
,
--limit
INT
¶ Limit to N records (default: 100)
-
-o
INT
,
--offset
INT
¶ Skip first N records
-
--all
¶
Include hidden files
-
--reverse
¶
Reverse sort order.
-
--sort-size
¶
Sort by size before sorting lexicographically.
-
--sort-time
¶
Sort by time modified before sorting lexicographically.
-
AGAVE_URI
¶
Files URI (agave://)
Replaces legacy CLI command “files-list”
files show¶
Show details of a Files path
tapis files show [--all] AGAVE_URI
-
--all
¶
Include hidden files
-
AGAVE_URI
¶
Files URI (agave://)
Replaces legacy CLI command “files-list”
files history¶
List history for a Files
tapis files history
[--sort-ascending | --sort-descending]
[-l INT]
[-o INT]
AGAVE_URI
-
--sort-ascending
¶
sort the column(s) in ascending order
-
--sort-descending
¶
sort the column(s) in descending order
-
-l
INT
,
--limit
INT
¶ Limit to N records (default: 100)
-
-o
INT
,
--offset
INT
¶ Skip first N records
-
AGAVE_URI
¶
Files URI (agave://)
Replaces legacy CLI command “files-history”
files mkdir¶
Create a directory on a System
tapis files mkdir AGAVE_URI DIRECTORY
-
AGAVE_URI
¶
Files URI (agave://)
-
DIRECTORY
¶
Name of the new directory (relative to <agave_uri>)
Replaces legacy CLI command “files-mkdir”
files copy¶
Copy a Files path between locations within Tapis
tapis files copy AGAVE_URI DESTINATION
-
AGAVE_URI
¶
Files URI (agave://)
-
DESTINATION
¶
Destination path
Replaces legacy CLI command “files-copy”
files move¶
Move a Files path from one location to another on a System
tapis files move AGAVE_URI DESTINATION
-
AGAVE_URI
¶
Files URI (agave://)
-
DESTINATION
¶
Destination path
Replaces legacy CLI command “files-move”
files delete¶
Delete a file or directory from Tapis
tapis files delete [--all] [--progress] AGAVE_URI
-
--all
¶
Include hidden files
-
--progress
¶
Report progress to STDERR
-
AGAVE_URI
¶
Files URI (agave://)
Replaces legacy CLI command “files-delete”
files upload¶
Upload from local host to Tapis
tapis files upload
[--exclude GLOB]
[--force | --sync]
[--callback URI]
[--progress]
AGAVE_URI
FILEPATH
-
--exclude
GLOB
¶ Unix-style fileglob (specify multiple times)
-
--force
¶
Always overwrite existing files
-
--sync
¶
Overwrite files only when timestamp or size differs
-
--callback
URI
¶ A URI to notify when each upload import is complete. Can be an email address or http/s URL. If a URL is given, a GET will be made.
-
--progress
¶
Report progress to STDERR
-
AGAVE_URI
¶
Files URI (agave://)
-
FILEPATH
¶
Path (relative to working directory)
Replaces legacy CLI command “files-upload”
files download¶
Download from Tapis to the local host
tapis files download
[--exclude GLOB]
[-W DIRECTORY]
[--force | --sync]
[--progress]
AGAVE_URI
-
--exclude
GLOB
¶ Unix-style fileglob (specify multiple times)
-
-W
DIRECTORY
¶ Download directory
-
--force
¶
Always overwrite existing files
-
--sync
¶
Overwrite files only when timestamp or size differs
-
--progress
¶
Report progress to STDERR
-
AGAVE_URI
¶
Files URI (agave://)
Replaces legacy CLI command “files-get”
Sharing Commands¶
Manage access by other users to Tapis files and folders that you control.
files pems drop¶
Drop all granted permissions from a Files path
tapis files pems drop
[--sort-ascending | --sort-descending]
[-l INT]
[-o INT]
AGAVE_URI
-
--sort-ascending
¶
sort the column(s) in ascending order
-
--sort-descending
¶
sort the column(s) in descending order
-
-l
INT
,
--limit
INT
¶ Limit to N records (default: 100)
-
-o
INT
,
--offset
INT
¶ Skip first N records
-
AGAVE_URI
¶
Files URI (agave://)
Replaces legacy CLI command “files-pems-update”
files pems grant¶
Grant permissions on a Files path to a User
tapis files pems grant
[--sort-ascending | --sort-descending]
[-l INT]
[-o INT]
AGAVE_URI
USERNAME
PERMISSION
-
--sort-ascending
¶
sort the column(s) in ascending order
-
--sort-descending
¶
sort the column(s) in descending order
-
-l
INT
,
--limit
INT
¶ Limit to N records (default: 100)
-
-o
INT
,
--offset
INT
¶ Skip first N records
-
AGAVE_URI
¶
Files URI (agave://)
-
USERNAME
¶
Tapis username
-
PERMISSION
¶
Permission string (ALL| READ| WRITE| READ_WRITE| EXECUTE| READ_EXECUTE| WRITE_EXECUTE| NONE)
Replaces legacy CLI command “files-pems-update”
files pems list¶
List permissions for an specific Files path
tapis files pems list
[--sort-ascending | --sort-descending]
[-l INT]
[-o INT]
[--all]
AGAVE_URI
-
--sort-ascending
¶
sort the column(s) in ascending order
-
--sort-descending
¶
sort the column(s) in descending order
-
-l
INT
,
--limit
INT
¶ Limit to N records (default: 100)
-
-o
INT
,
--offset
INT
¶ Skip first N records
-
--all
¶
Include hidden files
-
AGAVE_URI
¶
Files URI (agave://)
Replaces legacy CLI command “files-pems-list”
files pems revoke¶
Revoke permissions on a Files path for a User
tapis files pems revoke
[--sort-ascending | --sort-descending]
[-l INT]
[-o INT]
AGAVE_URI
USERNAME
-
--sort-ascending
¶
sort the column(s) in ascending order
-
--sort-descending
¶
sort the column(s) in descending order
-
-l
INT
,
--limit
INT
¶ Limit to N records (default: 100)
-
-o
INT
,
--offset
INT
¶ Skip first N records
-
AGAVE_URI
¶
Files URI (agave://)
-
USERNAME
¶
Tapis username
Replaces legacy CLI command “files-pems-update”
Info¶
info vars init¶
Create an .ini file to support templating
tapis info vars init [FILENAME]
-
FILENAME
¶
Optional ini filename (must be one of: project.ini, app.ini. actor.ini)
info vars list¶
Show active template variable names and values
tapis info vars list
[--sort-ascending | --sort-descending]
[-F FILEPATH]
[--ini FILEPATH]
[-A]
-
--sort-ascending
¶
sort the column(s) in ascending order
-
--sort-descending
¶
sort the column(s) in descending order
-
-F
FILEPATH
,
--file
FILEPATH
¶ JSON payload file
-
--ini
FILEPATH
¶ .ini file (project.ini)
-
-A
,
--all
¶
Also show empty variables
info versions¶
Show API versions
tapis info versions
This command is provided by the tapis-cli plugin.
Jobs¶
Support for the core Tapis jobs life cycle is provided by the jobs command set. New, and of note, is support for wildcard include and exclude filters when downloading job outputs, as well as a “sync” mode that only retrieves files from Tapis if they are different from their local copy.
General Commands¶
jobs list¶
List Jobs
tapis jobs list
[--sort-ascending | --sort-descending]
[-l INT]
[-o INT]
-
--sort-ascending
¶
sort the column(s) in ascending order
-
--sort-descending
¶
sort the column(s) in descending order
-
-l
INT
,
--limit
INT
¶ Limit to N records (default: 100)
-
-o
INT
,
--offset
INT
¶ Skip first N records
Replaces legacy CLI command “jobs-list”
jobs show¶
Show a specific Job
tapis jobs show [-T] JOB_UUID
-
-T
,
--template
¶
Job template from verbose
-
JOB_UUID
¶
Job unique identifer
Replaces legacy CLI command “jobs-list”
jobs submit¶
Submit a new Job
tapis jobs submit [-F FILEPATH] [--ini FILEPATH]
-
-F
FILEPATH
,
--file
FILEPATH
¶ JSON payload file
-
--ini
FILEPATH
¶ .ini file (project.ini)
Replaces legacy CLI command “jobs-submit”
jobs status¶
how the status of a Job
tapis jobs status JOB_UUID
-
JOB_UUID
¶
Job unique identifer
Replaces legacy CLI command “jobs-status”
jobs history¶
List history of a given job
tapis jobs history [--sort-ascending | --sort-descending] JOB_UUID
-
--sort-ascending
¶
sort the column(s) in ascending order
-
--sort-descending
¶
sort the column(s) in descending order
-
JOB_UUID
¶
Job unique identifer
Replaces legacy CLI command “jobs-history”
jobs cancel¶
Cancel a running or queued Job
tapis jobs cancel JOB_UUID
-
JOB_UUID
¶
Job unique identifer
Replaces legacy CLI command “jobs-stop”
jobs resubmit¶
Resubmit a Job using the same inputs and parameters
tapis jobs resubmit JOB_UUID
-
JOB_UUID
¶
Job unique identifer
Replaces legacy CLI command “jobs-resubmit”
Output Commands¶
View and download outputs from Tapis jobs.
jobs outputs download¶
Download outputs from a Job
tapis jobs outputs download
[--force | --sync]
[--exclude GLOB]
[--progress]
[--cwd]
JOB_UUID
[FILEPATH]
-
--force
¶
Always overwrite existing files
-
--sync
¶
Overwrite files only when timestamp or size differs
-
--exclude
GLOB
¶ Unix-style fileglob (specify multiple times)
-
--progress
¶
Report progress to STDERR
-
--cwd
¶
Download to ‘.’ instead of a job-specific subdirectory
-
JOB_UUID
¶
Job unique identifer
-
FILEPATH
¶
File path relative to output directory
Replaces legacy CLI command “jobs-output-get”
jobs outputs list¶
Lists output directory for a Jobs
tapis jobs outputs list
[--sort-ascending | --sort-descending]
[-l INT]
[-o INT]
[--all]
[--reverse]
[--sort-size | --sort-time]
JOB_UUID
[FILEPATH]
-
--sort-ascending
¶
sort the column(s) in ascending order
-
--sort-descending
¶
sort the column(s) in descending order
-
-l
INT
,
--limit
INT
¶ Limit to N records (default: 100)
-
-o
INT
,
--offset
INT
¶ Skip first N records
-
--all
¶
Include hidden files
-
--reverse
¶
Reverse sort order.
-
--sort-size
¶
Sort by size before sorting lexicographically.
-
--sort-time
¶
Sort by time modified before sorting lexicographically.
-
JOB_UUID
¶
Job unique identifer
-
FILEPATH
¶
File path relative to output directory
Replaces legacy CLI command “jobs-output-list”
Sharing Commands¶
Manage access by other users to Tapis jobs that you control.
jobs pems drop¶
Drop all granted Permissions from a Job
tapis jobs pems drop
[--sort-ascending | --sort-descending]
[-l INT]
[-o INT]
JOB_UUID
-
--sort-ascending
¶
sort the column(s) in ascending order
-
--sort-descending
¶
sort the column(s) in descending order
-
-l
INT
,
--limit
INT
¶ Limit to N records (default: 100)
-
-o
INT
,
--offset
INT
¶ Skip first N records
-
JOB_UUID
¶
Job unique identifer
Replaces legacy CLI command “jobs-pems-update”
jobs pems grant¶
Grant Permissions on a Job to a User
tapis jobs pems grant
[--sort-ascending | --sort-descending]
[-l INT]
[-o INT]
JOB_UUID
USERNAME
PERMISSION
-
--sort-ascending
¶
sort the column(s) in ascending order
-
--sort-descending
¶
sort the column(s) in descending order
-
-l
INT
,
--limit
INT
¶ Limit to N records (default: 100)
-
-o
INT
,
--offset
INT
¶ Skip first N records
-
JOB_UUID
¶
Job unique identifer
-
USERNAME
¶
Tapis username
-
PERMISSION
¶
Permission string (ALL| READ| WRITE| READ_WRITE| EXECUTE| READ_EXECUTE| WRITE_EXECUTE| NONE)
Replaces legacy CLI command “jobs-pems-update”
jobs pems list¶
List Permissions for a Job
tapis jobs pems list
[--sort-ascending | --sort-descending]
[-l INT]
[-o INT]
JOB_UUID
-
--sort-ascending
¶
sort the column(s) in ascending order
-
--sort-descending
¶
sort the column(s) in descending order
-
-l
INT
,
--limit
INT
¶ Limit to N records (default: 100)
-
-o
INT
,
--offset
INT
¶ Skip first N records
-
JOB_UUID
¶
Job unique identifer
Replaces legacy CLI command “jobs-pems-list”
jobs pems revoke¶
Revoke Permissions on a Job for a User
tapis jobs pems revoke
[--sort-ascending | --sort-descending]
[-l INT]
[-o INT]
JOB_UUID
USERNAME
-
--sort-ascending
¶
sort the column(s) in ascending order
-
--sort-descending
¶
sort the column(s) in descending order
-
-l
INT
,
--limit
INT
¶ Limit to N records (default: 100)
-
-o
INT
,
--offset
INT
¶ Skip first N records
-
JOB_UUID
¶
Job unique identifer
-
USERNAME
¶
Tapis username
Replaces legacy CLI command “jobs-pems-update”
Search Commands¶
Search for Tapis Jobs by any of several criteria. Please consult
tapis jobs search -h
for guidance.
Templated Jobs¶
The jobs init
command can populate a job definition for the designated Tapis app. It can
run automatically, relying on default values provided by the app, or interactively, which allows
the user to specify each value.
jobs init¶
Create a Job document for the specified App
tapis jobs init
[--sort-ascending | --sort-descending]
[--interactive]
[--all]
[--name NAME]
[--queue QUEUE]
[--duration HH:MM:SS]
[--nodes INT]
[--no-archive | --archive-uri AGAVE_URI]
[--no-notify | --notifications-uri URI|EMAIL]
[-O PATH]
APP_ID
-
--sort-ascending
¶
sort the column(s) in ascending order
-
--sort-descending
¶
sort the column(s) in descending order
-
--interactive
¶
Prompt for configuration and parameters
-
--all
¶
Include optional inputs and parameters in template
-
--name
NAME
¶ Job name
-
--queue
QUEUE
¶ Queue
-
--duration
HH:MM:SS
¶ Maximum run time (01:00:00)
-
--nodes
INT
¶ Compute nodes (1)
-
--no-archive
¶
Do not archive results
-
--archive-uri
AGAVE_URI
¶ Path to archive results (agave://)
-
--no-notify
¶
Do not send job status notifications
-
--notifications-uri
URI|EMAIL
¶ POST URL or email address for notifications
-
-O
PATH
,
--output
PATH
¶ Output destination (STDOUT)
-
APP_ID
¶
App identifier
Replaces legacy CLI command “jobs-template”
Metadata¶
Support for the legacy Tapis meta service is provided by the meta command set. New, and of note, is support for directly storing and retrieving values using the metadata service, making its usage modality more like that of a key-value store. See usage examples below:
General Commands¶
meta create¶
Store Metadata in a new document
tapis meta create
[-V Record value]
[-N Record name]
[-F FILEPATH]
[--ini FILEPATH]
-
-V
Record value
,
--value
Record value
¶ Value for the document
-
-N
Record name
,
--name
Record name
¶ Optional name for the document
-
-F
FILEPATH
,
--file
FILEPATH
¶ JSON payload file
-
--ini
FILEPATH
¶ .ini file (project.ini)
Replaces legacy CLI command “metadata-addupdate”
meta update¶
Update an existing Metadata document by UUID
tapis meta update
[-V VALUE]
[-N NEW_NAME]
[-F FILEPATH]
[--ini FILEPATH]
[METADATA_UUID]
-
-V
VALUE
,
--value
VALUE
¶ Value for the document
-
-N
NEW_NAME
,
--rename
NEW_NAME
¶ Rename document
-
-F
FILEPATH
,
--file
FILEPATH
¶ JSON payload file
-
--ini
FILEPATH
¶ .ini file (project.ini)
-
METADATA_UUID
¶
Optional Metadata unique identifer
Replaces legacy CLI command “metadata-addupdate”
meta list¶
List Metadata documents
tapis meta list
[--sort-ascending | --sort-descending]
[-l INT]
[-o INT]
-
--sort-ascending
¶
sort the column(s) in ascending order
-
--sort-descending
¶
sort the column(s) in descending order
-
-l
INT
,
--limit
INT
¶ Limit to N records (default: 100)
-
-o
INT
,
--offset
INT
¶ Skip first N records
Replaces legacy CLI command “metadata-list”
Sharing Commands¶
Manage access by other users to Tapis metadata that you control.
meta pems drop¶
Drop all granted Permissions from a Metadata document
tapis meta pems drop
[--sort-ascending | --sort-descending]
[-l INT]
[-o INT]
METADATA_UUID
-
--sort-ascending
¶
sort the column(s) in ascending order
-
--sort-descending
¶
sort the column(s) in descending order
-
-l
INT
,
--limit
INT
¶ Limit to N records (default: 100)
-
-o
INT
,
--offset
INT
¶ Skip first N records
-
METADATA_UUID
¶
Metadata unique identifer
Replaces legacy CLI command “metadata-pems-update”
meta pems grant¶
Grant Permissions on a Metadata document to a User
tapis meta pems grant
[--sort-ascending | --sort-descending]
[-l INT]
[-o INT]
METADATA_UUID
USERNAME
PERMISSION
-
--sort-ascending
¶
sort the column(s) in ascending order
-
--sort-descending
¶
sort the column(s) in descending order
-
-l
INT
,
--limit
INT
¶ Limit to N records (default: 100)
-
-o
INT
,
--offset
INT
¶ Skip first N records
-
METADATA_UUID
¶
Metadata unique identifer
-
USERNAME
¶
Tapis username
-
PERMISSION
¶
Permission string (ALL| READ| WRITE| READ_WRITE| EXECUTE| READ_EXECUTE| WRITE_EXECUTE| NONE)
Replaces legacy CLI command “metadata-pems-update”
meta pems list¶
List Permissions for a Metadata document
tapis meta pems list
[--sort-ascending | --sort-descending]
[-l INT]
[-o INT]
METADATA_UUID
-
--sort-ascending
¶
sort the column(s) in ascending order
-
--sort-descending
¶
sort the column(s) in descending order
-
-l
INT
,
--limit
INT
¶ Limit to N records (default: 100)
-
-o
INT
,
--offset
INT
¶ Skip first N records
-
METADATA_UUID
¶
Metadata unique identifer
Replaces legacy CLI command “metadata-pems-list”
meta pems revoke¶
Revoke Permissions on a Metadata document for a User
tapis meta pems revoke
[--sort-ascending | --sort-descending]
[-l INT]
[-o INT]
METADATA_UUID
USERNAME
-
--sort-ascending
¶
sort the column(s) in ascending order
-
--sort-descending
¶
sort the column(s) in descending order
-
-l
INT
,
--limit
INT
¶ Limit to N records (default: 100)
-
-o
INT
,
--offset
INT
¶ Skip first N records
-
METADATA_UUID
¶
Metadata unique identifer
-
USERNAME
¶
Tapis username
Replaces legacy CLI command “metadata-pems-update”
Search Commands¶
Search for Tapis metadata by several criteria. Please consult
tapis meta search -h
for guidance.
Usage Examples¶
Metadata records have historically been written in Tapis by specifying a
complete, schema-compliant JSON document. This has been considered by some
users to be burdensome, so the CLI simplifies these operations. A JSON file
can be specified, but it is also possible to specify -name
and --value
or even just a --value
.
Example 1¶
# Store a simple value
#
# --name is not provided, causing one to be autogenerated
$ tapis meta create --value "This is a test"
+-------------+----------------------------------------+
| Field | Value |
+-------------+----------------------------------------+
| uuid | 7811051068989444586-242ac11a-0001-012 |
| owner | vaughn |
| name | vaughn.f16204ef7ed05949.191107T183550Z |
| value | This is a test |
| created | just now |
| lastUpdated | just now |
+-------------+----------------------------------------+
# Search by the document's name
$ tapis meta search --name eq vaughn.f16204ef7ed05949.191107T183550Z
+---------------------------------------+--------+----------------------------------------+
| uuid | owner | name |
+---------------------------------------+--------+----------------------------------------+
| 7811051068989444586-242ac11a-0001-012 | vaughn | vaughn.f16204ef7ed05949.191107T183550Z |
+---------------------------------------+--------+----------------------------------------+
# Display the document using its UUID
$ tapis meta show 7811051068989444586-242ac11a-0001-012
+-------------+----------------------------------------+
| Field | Value |
+-------------+----------------------------------------+
| uuid | 7811051068989444586-242ac11a-0001-012 |
| owner | vaughn |
| name | vaughn.f16204ef7ed05949.191107T183550Z |
| value | This is a test |
| created | 2 minutes ago |
| lastUpdated | 2 minutes ago |
+-------------+----------------------------------------+
# Update a document's value.
# (Note that the name doesn't change)
$ tapis meta update -V "This value was changed" 1111886352317476375-242ac11a-0001-012
+-------------+----------------------------------------+
| Field | Value |
+-------------+----------------------------------------+
| uuid | 7811051068989444586-242ac11a-0001-012 |
| owner | vaughn |
| name | vaughn.f16204ef7ed05949.191107T183550Z |
| value | This value was changed |
| created | 3 minutes ago |
| lastUpdated | just now |
+-------------+----------------------------------------+
Example 2¶
# Store a value with a defined name
$ tapis meta create --value "Another test" --name "key_name_101"
+-------------+---------------------------------------+
| Field | Value |
+-------------+---------------------------------------+
| uuid | 8195591104591958506-242ac11a-0001-012 |
| owner | vaughn |
| name | key_name_101 |
| value | Another test |
| created | just now |
| lastUpdated | just now |
+-------------+---------------------------------------+
# Rename the record
$ tapis meta update --name "renamed_key_101" 8195591104591958506-242ac11a-0001-012
+-------------+---------------------------------------+
| Field | Value |
+-------------+---------------------------------------+
| uuid | 8195591104591958506-242ac11a-0001-012 |
| owner | vaughn |
| name | renamed_key_101 |
| value | Another test |
| created | 2 minutes ago |
| lastUpdated | just now |
+-------------+---------------------------------------+
# Delete the record
$ tapis meta delete 8195591104591958506-242ac11a-0001-012
+----------+-------+
| Field | Value |
+----------+-------+
| deleted | 1 |
| messages | 0 |
+----------+-------+
Example 3¶
# Display the full JSON API response, including the document
$ tapis meta show -v 4405227902607364586-242ac11a-0001-012
{
"uuid": "4405227902607364586-242ac11a-0001-012",
"schemaId": null,
"internalUsername": null,
"owner": "vaughn",
"associationIds": [],
"name": "vaughn.f16204ef7ed05949.191107T183431Z",
"value": "This is a test",
"created": "2019-11-07T12:34:31.591-06:00",
"lastUpdated": "2019-11-07T12:34:31.591-06:00",
"_links": {
"self": {
"href": "https://api.tacc.utexas.edu/meta/v2/data/4405227902607364586-242ac11a-0001-012"
},
"permissions": {
"href": "https://api.tacc.utexas.edu/meta/v2/data/4405227902607364586-242ac11a-0001-012/pems"
},
"owner": {
"href": "https://api.tacc.utexas.edu/profiles/v2/vaughn"
},
"associationIds": []
}
}
Notifications¶
List, inspect, and delete Tapis notifications. There is no current support for creating or updating them from the CLI.
notifications delete¶
Delete a Notification
tapis notifications delete NOTIFICATION_UUID
-
NOTIFICATION_UUID
¶
Notification unique identifer
Replaces legacy CLI command “notifications-delete”
notifications list¶
List Notifications [by Tapis UUID]
tapis notifications list
[--sort-ascending | --sort-descending]
[-l INT]
[-o INT]
[TAPIS ENTITY_UUID]
-
--sort-ascending
¶
sort the column(s) in ascending order
-
--sort-descending
¶
sort the column(s) in descending order
-
-l
INT
,
--limit
INT
¶ Limit to N records (default: 100)
-
-o
INT
,
--offset
INT
¶ Skip first N records
-
TAPIS
ENTITY_UUID
¶ Optional Tapis Entity unique identifer
Replaces legacy CLI command “notifications-list”
Post-Its¶
View, list, and manage Tapis post-its, which are pre-authenticated URLs than can be used in web callbacks or for sharing resources with persons who do not have Tapis platform accounts.
postits create¶
Create a new Postit
tapis postits create [-L INT] [-m INT] [-M GET|POST] [-N] FILES_URI
-
-L
INT
,
--lifetime
INT
¶ Lifetime (default: 2592000 sec)
-
-m
INT
,
--max-uses
INT
¶ Maximum redemptions (default: -1)
-
-M
GET|POST
,
--http-method
GET|POST
¶ HTTP method for URL (default: GET)
-
-N
,
--no-auth
¶
Do not pre-authenticate the URL
-
FILES_URI
¶
Files URI (agave://system/path|https://api_server/system/path)
Replaces legacy CLI command “postits-create”
Profiles¶
Support for showing or searching user profiles is implemented, contigent on the configuration and access policy of the current Tapis tenant.
General Commands¶
profiles show¶
Show details for a specific Profile
tapis profiles show USERNAME
-
USERNAME
¶
Tapis username
Replaces legacy CLI command “profiles-list”
profiles show self¶
Show Profile for the authenticated User
tapis profiles show self
Replaces legacy CLI command “profiles-list”
Search Commands¶
Search for Tapis profiles by any of several criteria. Please consult
tapis profiles search -h
for guidance.
Systems¶
Support for the Tapis resource management systems is provided by the systems command set. Helper workflows (such as assistance with SSH keys and testing newly created systems) will be added in coming releases.
General Commands¶
systems list¶
List available Systems
tapis systems list
[--sort-ascending | --sort-descending]
[-l INT]
[-o INT]
-
--sort-ascending
¶
sort the column(s) in ascending order
-
--sort-descending
¶
sort the column(s) in descending order
-
-l
INT
,
--limit
INT
¶ Limit to N records (default: 100)
-
-o
INT
,
--offset
INT
¶ Skip first N records
Replaces legacy CLI command “systems-list”
systems show¶
Show details of a System
tapis systems show SYSTEM_ID
-
SYSTEM_ID
¶
System identifier
Replaces legacy CLI command “systems-list”
systems history¶
Show history for a System
tapis systems history
[--sort-ascending | --sort-descending]
[-l INT]
[-o INT]
SYSTEM_ID
-
--sort-ascending
¶
sort the column(s) in ascending order
-
--sort-descending
¶
sort the column(s) in descending order
-
-l
INT
,
--limit
INT
¶ Limit to N records (default: 100)
-
-o
INT
,
--offset
INT
¶ Skip first N records
-
SYSTEM_ID
¶
System identifier
Replaces legacy CLI command “systems-history”
systems create¶
Create a new System
tapis systems create
[-F FILEPATH]
[--ini FILEPATH]
[--login-username USERNAME]
[--login-public-key FILE]
[--login-private-key FILE]
[--login-password PASSWORD]
[--storage-username USERNAME]
[--storage-public-key FILE]
[--storage-private-key FILE]
[--storage-password PASSWORD]
-
-F
FILEPATH
,
--file
FILEPATH
¶ JSON payload file
-
--ini
FILEPATH
¶ .ini file (project.ini)
-
--login-username
USERNAME
¶ Username for SSH login on the System
-
--login-public-key
FILE
¶ Public key for SSH login on the System
-
--login-private-key
FILE
¶ Private key for SSH login on the System
-
--login-password
PASSWORD
¶ Password for SSH login on the System
-
--storage-username
USERNAME
¶ Username for SFTP storage on the System
-
--storage-public-key
FILE
¶ Public key for SFTP storage on the System
-
--storage-private-key
FILE
¶ Private key for SFTP storage on the System
-
--storage-password
PASSWORD
¶ Password for SFTP storage on the System
Replaces legacy CLI command “systems-addupdate”
systems update¶
Update an existing System
tapis systems update
[-F FILEPATH]
[--ini FILEPATH]
[--login-username USERNAME]
[--login-public-key FILE]
[--login-private-key FILE]
[--login-password PASSWORD]
[--storage-username USERNAME]
[--storage-public-key FILE]
[--storage-private-key FILE]
[--storage-password PASSWORD]
SYSTEM_ID
-
-F
FILEPATH
,
--file
FILEPATH
¶ JSON payload file
-
--ini
FILEPATH
¶ .ini file (project.ini)
-
--login-username
USERNAME
¶ Username for SSH login on the System
-
--login-public-key
FILE
¶ Public key for SSH login on the System
-
--login-private-key
FILE
¶ Private key for SSH login on the System
-
--login-password
PASSWORD
¶ Password for SSH login on the System
-
--storage-username
USERNAME
¶ Username for SFTP storage on the System
-
--storage-public-key
FILE
¶ Public key for SFTP storage on the System
-
--storage-private-key
FILE
¶ Private key for SFTP storage on the System
-
--storage-password
PASSWORD
¶ Password for SFTP storage on the System
-
SYSTEM_ID
¶
System identifier
Replaces legacy CLI command “systems-addupdate”
Sharing Commands¶
Manage access by other users to Tapis systems that you control.
systems roles drop¶
Drop all granted roles from a System
tapis systems roles drop
[--sort-ascending | --sort-descending]
[-l INT]
[-o INT]
SYSTEM_ID
-
--sort-ascending
¶
sort the column(s) in ascending order
-
--sort-descending
¶
sort the column(s) in descending order
-
-l
INT
,
--limit
INT
¶ Limit to N records (default: 100)
-
-o
INT
,
--offset
INT
¶ Skip first N records
-
SYSTEM_ID
¶
System identifier
Replaces legacy CLI command “systems-roles-delete”
systems roles grant¶
Grant a user role on a System
tapis systems roles grant SYSTEM_ID USERNAME ROLE
-
SYSTEM_ID
¶
System identifier
-
USERNAME
¶
Tapis username
-
ROLE
¶
Role (GUEST| USER| PUBLISHER| ADMIN| OWNER)
Replaces legacy CLI command “systems-roles-addupdate”
systems roles list¶
List user roles on a System
tapis systems roles list
[--sort-ascending | --sort-descending]
[-l INT]
[-o INT]
SYSTEM_ID
-
--sort-ascending
¶
sort the column(s) in ascending order
-
--sort-descending
¶
sort the column(s) in descending order
-
-l
INT
,
--limit
INT
¶ Limit to N records (default: 100)
-
-o
INT
,
--offset
INT
¶ Skip first N records
-
SYSTEM_ID
¶
System identifier
Replaces legacy CLI command “systems-roles-list”
Search Commands¶
Search for Tapis Systems by several criteria. Please consult
tapis systems search -h
for guidance.
Queues Commands¶
View and interact with queues on a Tapis execution system.
systems queues list¶
List virtual queues on a System
tapis systems queues list
[--sort-ascending | --sort-descending]
[-l INT]
[-o INT]
SYSTEM_ID
-
--sort-ascending
¶
sort the column(s) in ascending order
-
--sort-descending
¶
sort the column(s) in descending order
-
-l
INT
,
--limit
INT
¶ Limit to N records (default: 100)
-
-o
INT
,
--offset
INT
¶ Skip first N records
-
SYSTEM_ID
¶
System identifier
Replaces legacy CLI command “systems-queues-list”
Configure Tapis CLI¶
The Tapis CLI uses Python’s _dotenv module for configuration via environment
variables. It reads and writes from $HOME/.env
, which is a file containing
KEY=VALUE
pairs. A variable defined in the environment file can be
overridden by setting an environment variable in the shell where the CLI
was launched. Some options can also overridden at run-time via
command-line options.
One may view the current settings for the Tapis CLI:
$ tapis config list
+---------------------------+--------------------------------------------+
| Setting | Value |
+---------------------------+--------------------------------------------+
| TAPIS_CLI_DATE_FORMAT | YYYYMMDDTHHmmssZZ |
| TAPIS_CLI_DEBUG_MODE | False |
| TAPIS_CLI_DISPLAY_AUP | True |
| TAPIS_CLI_FIT_WIDTH | True |
| TAPIS_CLI_GA_DISABLE | False |
| TAPIS_CLI_GA_VISITOR | 7143393360 |
| TAPIS_CLI_LOG_LEVEL | DEBUG |
| TAPIS_CLI_PAGE_SIZE | 50 |
| TAPIS_CLI_RESPONSE_FORMAT | table |
| TAPIS_CLI_SHOW_CURL | False |
| TAPIS_CLI_VERBOSE_ERRORS | True |
| TAPIS_DEFAULT_TENANT_ID | tacc.prod |
| TAPIS_PY_SHOW_CURL | False |
| TAPIS_TENANTS_URL | https://api.tacc.utexas.edu/tenants |
| _ENV_PATH | /Users/tacotruck/.env |
+---------------------------+--------------------------------------------+
Configuration options can be set using tapis config set
.
Usage Examples¶
Setting the page size for list results: The number of results returned from
list-type commands is defined by the variable TAPIS_CLI_PAGE_SIZE
and
defaults to 50. List-type commands support a --limit
option, which
will be used if specified. If no option is passed, the CLI will look for
variable TAPIS_CLI_PAGE_SIZE
in the shell environment then in an
.env
file. Here are ways to configure the page size:
- Dynamically, via variable:
TAPIS_CLI_PAGE_SIZE=10 tapis apps list
- For the current shell:
export TAPIS_CLI_PAGE_SIZE=10
- For all future usage:
tapis apps set TAPIS_CLI_PAGE_SIZE 10
Search Commands¶
Several Tapis command families support sophisiticated search capabilities, but
due to the fact that Tapis has been developed over several years,
implementation details of syntax and capability vary widely. Tapis CLI remedies
this with named search commands which accept optionized forms of select
top-level keys for each supported service. Limited support for types and
enumerations is presented as well, as well as support for search modifiers.
Finally, semantic or “humanized” dates are ranges are supported as query terms
in fields which are Python datetime
types.
An Example¶
To stimulate your interest, here’s a simple example of searching for an app by a
fragment of its name. The generalized form of a Tapis CLI search command is
tapis <service> search --field-name <modifier> <value>
.
$ tapis apps search --name like image
+-------------------------------+----------+------------------+-------------------------------+----------+------------------------+
| id | revision | label | shortDescription | isPublic | executionSystem |
+-------------------------------+----------+------------------+-------------------------------+----------+------------------------+
| tapis.app.imageclassify-1.0u3 | 3 | Image Classifier | Classify an image using a | True | tapis.execution.system |
| | | | small ImageNet model | | |
| tapis.app.imageclassify-1.0u2 | 2 | Image Classifier | Classify an image using a | True | tapis.execution.system |
| | | | small ImageNet model | | |
| tapis.app.imageclassify-1.0u1 | 1 | Image Classifier | Classify an image using a | True | tapis.execution.system |
| | | | small ImageNet model | | |
+-------------------------------+----------+------------------+-------------------------------+----------+------------------------+
Search help strings¶
The code that enables search also generates descriptive, if a bit repetitive, help text for each search command. The help text for systems search is shown below, followed by a few notes to help you make sense of what you are seeing seen. The help for any search command will yield similar detailed instructions.
$ tapis systems search -h
usage: tapis systems search [-h] [-f {csv,json,table,value,yaml}] [-c COLUMN]
[--quote {all,minimal,none,nonnumeric}]
[--noindent] [--max-width <integer>] [--fit-width]
[--print-empty] [--sort-column SORT_COLUMN]
[--no-verify] [-z <token>] [-l <int>] [-o <int>]
[--available eq*|neq true|false]
[--default eq*|neq true|false]
[--description eq*|neq|start|end|like <string>]
[--execution-type eq*|neq CLI|Condor|HPC]
[--global-default eq*|neq true|false]
[--id eq*|neq|start|end|like <string>]
[--max-system-jobs eq*|neq|gt|gte|lt|lte <int>]
[--max-system-jobs-per-user eq*|neq|gt|gte|lt|lte <int>]
[--name eq*|neq|start|end|like <string>]
[--owner eq*|neq|start|end|like <string>]
[--public eq*|neq true|false]
[--revision eq*|neq|gt|gte|lt|lte <int>]
[--scheduler eq*|neq|start|end|like CONDOR|CUSTOM_SLURM|FORK|LSF|PBS|SGE|SLURM]
[--status eq*|neq DOWN|MAINTENANCE|UNKNOWN|UP]
[--type eq*|neq EXECUTION|STORAGE]
Picking a few representative fields, we see:
- description is a string. The recommended search modifier is eq and the expected value is any string.
- executionType is a string, but has constrained values of
CLI
,Condor
, orHPC
- available is a Boolean. You can construct a positive or negative filter with equals, not-equals, true, and false
- maxSystemJobs is an integer. You can use direct (eq, ne) as well as quantitative comparisons (lt, gte, etc.)
Modifiers¶
This is the canonical list of modifiers and the search pattern they attempt to implement for their respective web service and parameter.
Modifier | Explanation | Types |
eq | Equals | String, Number, Boolean |
neq | Does not equal | String, Number, Boolean |
like | Contains | String |
start | Starts With | String |
end | Ends With | String |
gt, gte | Greater than (or equal) | Number |
le, lte | Less than (or equal) | Number |
on | After 00:00 but before 11:59:59 UTC | Date |
before | Before 0:00 UTC | Date |
after | After 11:59:59 UTC | Date |
Human Dates¶
Here are some examples of humanized dates for searching date fields.
Example | Span |
before today | Prior to today |
after “this week” | Within the current week, marked by Sunday |
after “October 15, 2018” | After midnight UTC Oct 15, 2018 |
gte “2 hours” | More than 2 hours ago |
after “6/1/2019” | After midnight June 1, 2019 |
after 2018 | Any time in 2019 or after |
Search support by command¶
Search is available for several commands, and is on the roadmap for a few more in the coming months.
Command Family | Smart Search |
auth | No |
actors | Planned |
apps | Yes |
files | Planned |
git | Planned |
hooks | No |
jobs | Yes |
metadata | Yes |
notifications | Planned |
profiles | Yes |
settings | No |
status | Planned |
systems | Yes |
versions | No |
Template Support¶
Tapis app, job, and system definitions (as well as metadata records) are commonly defined as JSON documents files. Sharing them files can be challenging (for instance, as part of collaborative development), since they can contain user-specific values. One way to deal with this is to automate find-and-replace workflows for files, but another is to use variables. Inspired by this real-world use case, we have introduced support for template variables throughout the Tapis CLI.
Let us consider an example. A group of collabortators each has
a private copy of a Tapis app for counting chickens, where the app identifier follows the
naming convention chicken-counter-[username]-1.0.0
. They want to standardize on one
set of parameters for a specific set of counting experiments they are doing. Without
templating, each would maintain their parameter set in a standalone job file. For user
ellen that file might look like so:
{
"appId": "chicken-counter-ellen-1.0.0",
"archiveSystem": "data-tacc-work-ellen",
"maxRunTime": "01:00:00",
"inputs": {
"chix_img": "agave://data-tacc-cloud/images/too_many_chickens.png"
},
"name": "chicken-count",
"parameters": {
"beak_threshold": 10.0,
"wing_threshold": -6.33
}
}
If the group leader Francesca decides that wing_threshold
needs to be -8.00,
everyone will need to edit a copy of the job file. If the group gets a master parameter
file from the group leader, that means each member will need to replace refernces to
Francesca’s username with their own. Note also that the job name
is static, which could get annoying. Wouldn’t it be nice if we could change it
for each instance of job that is run?
A version of the file using Tapis CLI templating might look like:
{
"appId": "chicken-counter-{{ username }}-1.0.0",
"archiveSystem": "data-tacc-work-{{ username }}",
"maxRunTime": "01:00:00",
"inputs": {
"chix_img": "agave://data-tacc-cloud/images/too_many_chickens.png"
},
"name": "chicken-count-{{ iso8601_basic_short }}",
"parameters": {
"beak_threshold": 10.0,
"wing_threshold": -6.33
}
}
Submitting this file to the Tapis jobs service using tapis jobs submit
would result in a job request being to the proper app ID and
{{ iso8601_basic_short }}
is be replaced with an IS0-8601 date stamp
YYYMMDDTHHmmss
.
Nifty, eh? There’s much more that can be done. The system supports dozens of built-in and run-time variables, and can be extended by the end user without coding. Also, since the system is built using Python’s Jinja2 module, any Jinja syntax can be used, including conditionals and iterators.
Variables¶
There are two classes of variables supported by the template system: “core” variables and “project” variables. Core variables are provided by the CLI with no options for user configuration, while project variables are set via a file in .ini format.
Core variables¶
These are global variables representing the state and
environment of the CLI itself. They are intended for use in any app,
job, system, or metadata definition without additional configuration.
You can find the name and value of core variables via the command
tapis info vals list
. Core variables are snake-cased with no
dot notation. Examples include first_name
, fqdn`,
``git_remote
, and username
.
Project Variables¶
Sometimes, one needs to scope variables to a specific context (i.e.
only within the build directory for an app). This use case is
enabled by use of a named .ini file. Project variables can be
identified by use of dot notation in their name. Examples include
app.name
and docker.tag
.
Naming¶
The only supported name for a project variables file is project.ini
although app.ini
and reactor.ini
are allowed for backwards
compatibility with previous versions of the templating system. The
rationale is that other build systems and applications use the ini
file format, so we must constrain ourselves to using one name.
Search Path¶
If a path is specified using the --ini
option, Tapis CLI looks
at that location for a project variable file. Note that the file
must be exist and be readable if it is manually specified. If
no path to an ini file is provided, the CLI looks in the current
working directory for a file named project.ini
. If one is found,
it must be readable. If no variable file is provided, project
variables are not made available to the templating system.
Ini File Schema¶
A Tapis CLI ini file contains one or more stanzas:
- app : variables pertaining to a Tapis app
- actor : variables pertaining to a Tapis actor
- environment : general-purpose environment variables
- git : variables that pertain to a git repository
- job : variables pertaining to a Tapis job
- system : variables pertaining to a Tapis system
Within each stanza are named variables. Any variable name included
in the default ini file (tapis info vars init
) should be
considered reserved for use by CLI workflows such as
tapis apps deploy
and tapis jobs template
. You are free to
add additional variables under these sections, with the caveat
that future updates to the CLI might conflict with them. A better
solution for defining custom variables is to add them to env
as that section is reserved for user- or program-defined data.
Below is an example project.ini
file.
Usage Examples¶
Coming soon
Technical Details¶
Tapis CLI uses _Jinja2 to power its template system. Most if not all Jinja constructs and syntax should be supported. Please file an _issue if you discover that is not the case.
Tapis CLI uses _Configparser to parse and write ini files. All configparser functions, including interpolation (allowing for additional templating behavior!), should be available. Please file an _issue if you discover that is not the case.
Projects¶
There are many good designs and patterns for building cloud-based applications. In the Linux container world, we have a choice of hand-crafting a set of linked services or using some of the declarative tooling like Docker stacks or Kubernetes pods. These can be deployed to any number of on-prem or public platforms. At a higher level of abstraction, systems such as Pantheon and Heroku promote one-command definition and deployment of web applications and services, which is achieved, in part, through use of simple configuration files coupled with a connection to the deployment host. These systems advance the promise of maintainability and reusability offered by containers, package registries, source code managers, config management tools, and hosted deployment environments.
We have adopted some of the best practices from popular systems and
platforms to make it easy to build, deploy, and maintain Tapis apps
and actors. One of these practices to offer a robust
and usable CLI. Another is to allow automation of common tasks to
enable reusability and decrease user error. To
this end, the Tapis CLI features a deploy subcommand for the
apps and actors APIs. The concept is that every
step required in deploying a Tapis resource should be achievable by
cd-ing into a project directory and running tapis apps deploy
or
tapis actors deploy
Project Structure¶
The Ini File¶
A project’s ini file may contain several sections, each with a handful
of defined option names. Option/value pairs may be commented out using
a leading ;
semicolon. Values that define paths are assumed to be
relative to the project directory, unless specified as absolute.
Mandatory variables are denoted in bold text.
Sections¶
App¶
This section contains variables to configure an app project.
Actor¶
This section contains variables to configure an actor project.
Docker¶
This section contains variables that define Linux container image and registry settings for the project. There is an implicit assumption that a project corresponds to a single container repo.
Environment¶
This is a special section where you, the end-user, can add custom
option-value pairs for use by the CLI templating engine. Option
names must be alphanumeric strings [a-z0-9_]
.
Good option names:
- slot
- rock_and_roll
- value123
Bad option names:
- _foo
- option.name
- ThisOption
Values must be simple scalars and it should be assumed they will be interpreted as strings.
Using Environment in a File¶
Here is an example of including a custom option value123
and using it
to populate contents of a JSON document. The expected outcome is that
the key parameter1
will get a value of 2048
when the JSON
document is interpreted by the CLI.
{"parameter1": "{{ env.value123 }}"}
{"parameter1": "2048"}
Git¶
This section contains variables that define local and remote Git settings for the project. We assume that a project corresponds to a single git repository.
Grants¶
This section defines roles to be granted to apps, actors, jobs, metadata, or systems defined by the project. Only specific, designated roles (read, execute, update) are comprehended by this part of the projects system.
Job¶
This section contains variables for use in defining job or message files for use with the project.
System¶
This section contains variables for use specifically in an system project.
Initializing a Project¶
The CLI supports initialization of a skeleton app and actor projects. These are based on templates written using the CookieCutter specification and housed in a public Github repository.
Initialize an app project¶
The tapis apps init
command will create a new app for you following the designated
template. You may specify some basic details of the initial configuration, such as the
app name, human-readable label, verbose description, and semantic version, when
creating a new app project. Some details are inherited from the CLI settings, such
as your preferred Docker namespace and registry.
Here is an example of creating a new app from the default template
$ tapis apps init --app-name Appy --app-label APPINESS --app-description \
"I am appy to see you" --template default
+-------+---------------------------------------------------------------+
| stage | message |
+-------+---------------------------------------------------------------+
| setup | Project path: ./appy |
| setup | CookieCutter variable name=Appy |
| setup | CookieCutter variable description=I am appy to see you |
| setup | CookieCutter variable project_slug=appy |
| setup | CookieCutter variable docker_namespace=sd2e |
| setup | CookieCutter variable docker_registry=https://index.docker.io |
| clone | Project path: ./appy |
+-------+---------------------------------------------------------------+
If you want to preflight the values that the init
system is going to use
to create a new project, you can pass the --dry-run
command flag. The CLI will
run all the setup steps, printing the results to screen, but will not actually
create the project.
Once you have your new app project, you can configure and customize the app by
editing its project.ini
, app.json
, or run.sh
files. You can, if the
app is container-based, modify the Dockerfile that specifies the app’s digital
assets, or you can package software and dependencies directly in the app’s
assets
directory.
You can manually upload the app and register it in the Tapis system using
individual CLI commands such as tapis files upload
and tapis apps create
or
(probably preferably), you can use the tapis apps deploy
command which bundles all
necessary Tapis operations into a simple workflow.
You can list the catalog of available templates by passing the --list-templates
command flag:
$ tapis app init --list-templates
+-----------+--------------+------------------------------------------+----------+
| id | name | description | level |
+-----------+--------------+------------------------------------------+----------+
| default | Default | Basic code and configuration skeleton | beginner |
| shellrun | Shell Runner | Run an arbitrary shell command via Tapis | beginner |
| wordcount | Word Count | Simple word counting implementation | beginner |
+-----------+--------------+------------------------------------------+----------+
Pass one of the listed id values to the --template
flag when to initialize
a new Tapis app based on that template. Further instructions will be included in a
README file in the new project directory.
If you have access to an alternate repository of CookieCutter templates (perhaps provided
by your Tapis tenant operator) you can specify its URL via the --repo
flag. You can also
specifiy a specific commit or branch on the repository via the --checkout
flag.
Initialize an actor project¶
Coming soon
Template repositories¶
The Tapis CLI uses a public repository containing subdirectories, where each subdirectory is a project template implemented using the CookieCutter specification. There is always a template named default which the CLI is configured to use if no other template is specified.
When a project is created from a CookieCutter template, the CLI uses a collection of
key-value variables to fill out file names and contents in the new directory. Some of these,
as mentioned above, are specified at the command line and some are based on values available
via tapis config
.
Details on how to report issues, request improvements, or contribute new templates can be found in the README of each templates repository, and such contributions are welcomed.
Deploy the Project¶
Git Integration¶
Contributing to Tapis CLI¶
We welcome contributions to Tapis CLI, since our users are often best qualified to propose and improve its functionality.
Hacking¶
Install CLI in editable mode:
pip install -e .
Run all the tests:
python -m pytest
Run multi-environment tests with tox:
# Note tox is not included in requirements.txt
pip install tox
tox
Docker image¶
A local build of the Tapis CLI container image can be created and launched
using make image
followed by make interactive
. This is helpful when
customizing or extending the project Dockerfile.
Code structure¶
API commands are implemented as subclasses of TaccApisCommandBase
, which
handles Oauth client setup, and either TaccApisFormatOne
or
TaccApisFormatMany
, which are in turn subclassed from cliff’s Lister
and FormatMany
classes. This design reflects two kinds of responses: a
list of records or a single record (or response to a CRUD action).
Each command is implemented as a TitleCased class in a snake_cased module,
which in turn are organized by platform, version, and service under the
commands
subpackage. Consider the tapis apps list
command. It is one
of the Tapis APIs, the command being implemented is specific to the v2
version of TACC APIs, and is a command pertaining to the apps service.
Thus, the command is defined in class AppsList
in
tapis_cli.commands.taccapis.v2.apps.apps_list
.
This code structure reflects two requirements. The first is that the cliff package uses setuptools entrypoints to establish command line functions. The second is that the Tapis CLI will integrate multiple platforms and versions of TACC-hosted services. There is space marked out in the CLI design for v3 of Tapis, management functions for hosted Gitlab and Container registry, and eventual public release of the TACC SSH Keys service.
Returning to the setuptools topic: Each command is defined in setup.cfg
by defining a command and pointing to the implementing class. The apps list
command is defined as shown below.
Example setuptools entrypoint:
[entry_points]
console_scripts =
tapis = tapis_cli.main:main
tapis.cli =
apps_list = tapis_cli.commands.taccapis.v2.apps:AppsList
Limited (at present) unit tests are implemented in the tests directory. Automated code linting (to PEP8) and code coverage analysis are included in all PyTest runs to encourage sustainable development practices.
Documentation¶
The project uses Sphinx and the Napoleon extension, which is configured to support Google-style documentation strings.
Regenerate the documentation:
make docs
Code Style¶
The project code style is vanilla PEP8, as configured by the
[flake8]
section of setup.cfg
.
Use of yapf
autoformatter is supported and encouraged to
maintain the codebase, and is available via the make format
Makefile target.
Issue Tracker¶
Major functional objectives are bundled into Milestones with due dates in the future. This provides a way to organize the work and have a public road map for functionality.
All work should proceed via reported Issues.
tapis_cli¶
tapis_cli package¶
Subpackages¶
tapis_cli.clients package¶
Implements HTTP-based web service clients with varied authentication/access mechanisms
Subpackages¶
HTTP x Basic Authentication clients
-
class
tapis_cli.clients.basic.main.
BasicHTTPFormatOne
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.clients.http.HTTPFormatOne
HTTP+Basic Record Display
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.clients.basic.main.
BasicHTTPFormatMany
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.clients.http.HTTPFormatMany
HTTP+Basic Records Listing
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
Clients that use Abaco nonces
-
class
tapis_cli.clients.nonce.main.
NonceHTTPFormatOne
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.clients.http.HTTPFormatOne
HTTP+Nonce Record Display
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.clients.nonce.main.
NonceHTTPFormatMany
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.clients.http.HTTPFormatMany
HTTP+Nonce Records Listing
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
Collection of Oauth2 clients
-
class
tapis_cli.clients.oauth.bearer.
BearerTokenFormatOne
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.clients.http.HTTPFormatOne
HTTP+Bearer Token Record Display
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.clients.oauth.bearer.
BearerTokenFormatMany
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.clients.http.HTTPFormatMany
HTTP+Bearer Token Records Listing
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.clients.oauth.impersonate.
ImpersonationTokenFormatOne
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.clients.oauth.bearer.BearerTokenFormatOne
HTTP+Bearer Record Display
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.clients.oauth.impersonate.
ImpersonationTokenFormatMany
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.clients.oauth.bearer.BearerTokenFormatMany
HTTP+Bearer Records Listing
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.clients.oauth.keysecret.
KeySecretBasicFormatOne
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.clients.basic.main.BasicHTTPFormatOne
HTTP+KeySecret+Basic Record Display
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.clients.oauth.keysecret.
KeySecretBasicFormatMany
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.clients.basic.main.BasicHTTPFormatMany
HTTP+KeySecret+Basic Records Listing
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.clients.oauth.keysecret.
KeySecretOnlyFormatOne
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.clients.http.HTTPFormatOne
HTTP+KeySecret Only Record Display
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.clients.oauth.keysecret.
KeySecretOnlyFormatMany
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.clients.http.HTTPFormatMany
HTTP+KeySecret+Basic Records Listing
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.clients.oauth.refresh.
RefreshBearerTokenFormatOne
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.clients.oauth.bearer.BearerTokenFormatOne
HTTP+Bearer+Refresh Token Record Display
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.clients.oauth.refresh.
RefreshBearerTokenFormatMany
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.clients.oauth.bearer.BearerTokenFormatMany
HTTP+Bearer+Refresh Records Listing
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
Implementation of service-specific clients
TACC API service clients
-
class
tapis_cli.clients.services.taccapis.v2.api_keysecret.
TaccApisKeySecretPassword
¶ Bases:
tapis_cli.clients.services.taccapis.v2.base.TaccApisCommandBase
Parameterize Tapis API commands that accept API key/secret + password
-
add_common_parser_arguments
(parser)¶
-
-
class
tapis_cli.clients.services.taccapis.v2.api_keysecret.
TaccApisKeySecretUsernamePassword
¶ Bases:
tapis_cli.clients.services.taccapis.v2.api_keysecret.TaccApisKeySecretPassword
Parameterize Tapis API commands that accept API key/secret + username/password and/or token_username
-
add_common_parser_arguments
(parser)¶
-
-
class
tapis_cli.clients.services.taccapis.v2.apiclient.
TaccApiClient
¶ Bases:
object
-
PROPS
= [('token', 'access_token', 'access_token'), ('refresh_token', 'refresh_token', 'refresh_token'), ('api_key', 'api_key', 'api_key'), ('api_secret', 'api_secret', 'api_secret'), ('api_server', 'baseurl', 'api_server'), ('tenant_id', 'tenantid', 'tenant_id'), ('username', 'username', 'username'), ('token_username', 'token_username', 'token_username'), ('password', 'password', 'password'), ('created_at', 'created_at', 'created_at'), ('expires_in', 'expires_in', 'expires_in'), ('expires_at', 'expires_at', 'expires_at')]¶
-
TIMEZONE
= None¶
-
init_clients
(passed_args=None)¶
-
key_values
()¶ Returns Tapis variable/value pairs for templating
-
post_payload
= {}¶
-
render_value
(value)¶ Renders a value based on current display format
Each field value in a response can be passed through this function to implement format-specific rendering
-
-
class
tapis_cli.clients.services.taccapis.v2.base.
TaccApisCommandBase
¶ Bases:
tapis_cli.clients.services.taccapis.v2.apiclient.TaccApiClient
A base class for building Tapis API client commands
-
add_common_parser_arguments
(parser)¶
-
client_extra_args
= {}¶
-
constants
= <module 'tapis_cli.constants' from '/home/docs/checkouts/readthedocs.org/user_builds/tapis-cli/envs/latest/lib/python3.7/site-packages/tapis_cli/constants.py'>¶
-
get_parser
(prog_name)¶
-
post_payload
= {}¶
-
take_action
(parsed_args)¶
-
update_payload
(parsed_args)¶
-
-
class
tapis_cli.clients.services.taccapis.v2.basic.
TaccApisOnlyBasic
¶ Bases:
tapis_cli.clients.services.taccapis.v2.base.TaccApisCommandBase
Base class for Tapis API commands accepting only HTTP Basic Authentication
-
add_common_parser_arguments
(parser)¶
-
-
class
tapis_cli.clients.services.taccapis.v2.bearer.
TaccApisBearer
¶ Bases:
tapis_cli.clients.services.taccapis.v2.base.TaccApisCommandBase
-
ACCEPT_ACCESS_TOKEN
= True¶
-
ACCEPT_NONCE
= False¶
-
ACCEPT_REFRESH_TOKEN
= False¶
-
ALLOW_NO_VERIFY
= True¶
-
add_common_parser_arguments
(parser)¶
-
init_clients
(parsed_args)¶ Override CommandBase to set up client with passed token
-
-
class
tapis_cli.clients.services.taccapis.v2.bearer.
TaccApisNoBearer
¶ Bases:
tapis_cli.clients.services.taccapis.v2.base.TaccApisCommandBase
Base class for Tapis API commands that accept only an access token
-
add_common_parser_arguments
(parser)¶
-
-
class
tapis_cli.clients.services.taccapis.v2.bearer_refresh.
TaccApisBearerRefresh
¶ Bases:
tapis_cli.clients.services.taccapis.v2.bearer.TaccApisBearer
Base class for Tapis API commands both an access token and a refresh token
-
add_common_parser_arguments
(parser)¶
-
-
class
tapis_cli.clients.services.taccapis.v2.direct.
TaccApiDirectClient
(agave_client)¶ Bases:
object
Requests client bootstrapped from a Tapis API client
The intended use is to implement methods not expressed by the current Swagger spec and which are thus not accessible in AgavePy. Examples include the ‘search’ function, which relies on encoding a POST form of search terms into a GET request. The web request is made directly using the
requests
library. Configuration for SSL verification is inherited from theverify
property of the passed Agave client to enforce consistent communications behavior between the two kinds of HTTP client.-
build_url
(*args)¶
-
delete
(path=None)¶
-
get
(path=None)¶
-
get_bytes
(path=None)¶
-
get_data
(path=None, params={})¶
-
post
(path=None, data=None, content_type=None, json=None, params=None)¶
-
post_data_basic
(data=None, auth=None, path=None, content_type=None)¶
-
setup
(service_name, service_version, api_path=None)¶
-
-
class
tapis_cli.clients.services.taccapis.v2.format_many.
TaccApisFormatManyUnlimited
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.clients.services.mixins.LegacyCommmandHelp
,tapis_cli.clients.services.mixins.JsonVerbose
,tapis_cli.clients.http.HTTPFormatMany
,tapis_cli.clients.services.taccapis.v2.bearer.TaccApisBearer
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
preprocess_args
(parsed_args)¶
-
-
class
tapis_cli.clients.services.taccapis.v2.format_many.
TaccApisFormatMany
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.clients.services.taccapis.v2.format_many.TaccApisFormatManyUnlimited
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
preprocess_args
(parsed_args)¶
-
update_payload
(parsed_args)¶
-
-
class
tapis_cli.clients.services.taccapis.v2.format_one.
TaccApisFormatOne
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.clients.services.mixins.LegacyCommmandHelp
,tapis_cli.clients.services.mixins.JsonVerbose
,tapis_cli.clients.http.HTTPFormatOne
,tapis_cli.clients.services.taccapis.v2.bearer.TaccApisBearer
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
preprocess_args
(parsed_args)¶
-
update_payload
(parsed_args)¶
-
-
class
tapis_cli.clients.services.taccapis.v2.format_one.
TaccApisFormatOneNoBearer
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.clients.services.mixins.LegacyCommmandHelp
,tapis_cli.clients.services.mixins.JsonVerbose
,tapis_cli.clients.http.HTTPFormatOne
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
preprocess_args
(parsed_args)¶
-
update_payload
(parsed_args)¶
-
Mix-ins used to add defined behaviors to Tapis CLI commands
-
exception
tapis_cli.clients.services.mixins.
OptionNotImplemented
¶ Bases:
ValueError
Raised when an option that is only a placeholder is specified
-
class
tapis_cli.clients.services.mixins.
AppVerboseLevel
¶ Bases:
tapis_cli.clients.services.mixins.ParserExtender
Configures a Command to access the parent cliff App’s verbosity level
The calling App’s verbose_level is made available via method app_verbose_level(). In addition, two properties ‘VERBOSITY’ and ‘EXTRA_VERBOSITY’ are defined. These are intended to be values defined by the Verbosity module. ‘VERBOSITY’ is the default field-display verbosity for the Command, while EXTRA_VERBOSITY is the verbosity level when a user or process specifies that additional verbosity is needed.
-
EXTRA_VERBOSITY
= None¶
-
VERBOSITY
= None¶
-
app_verbose_level
¶ Exposes the app-scoped verbosity level as a formatter property
-
-
class
tapis_cli.clients.services.mixins.
JsonVerbose
¶ Bases:
tapis_cli.clients.services.mixins.AppVerboseLevel
Configures a Command to use JSON as formatter when verbose is requested
Overrides the Command.formatter_default property such that passing an instance of ‘-v’ to the cliff App when running a command will configure the Command to use JSON formatter and to increase its field-display verbosity to the level defined by ‘EXTRA_VERBOSITY’
-
EXTRA_VERBOSITY
= 2¶
-
formatter_default
¶ Overrides formatter_default to return JSON when -v is passed
-
preprocess_args
(parsed_args)¶
-
verbosify_parsed_args
(parsed_args)¶
-
-
class
tapis_cli.clients.services.mixins.
ServiceIdentifier
¶ Bases:
tapis_cli.clients.services.mixins.ParserExtender
Configures a Command to require a mandatory ‘identifier’ positional param
Adds a positional parameter to the Command parser. The value for the parameter’s ‘metavar’ is set by the Command.service_id_type property.
-
arg_display
(id_value)¶
-
arg_help
(id_value)¶
-
arg_metavar
(id_value)¶
-
dest
= 'identifier'¶
-
extend_parser
(parser)¶
-
get_identifier
(parsed_args, validate=False, permissive=False)¶
-
id_type
= 'identifier'¶
-
optional
= False¶
-
service_id_type
= 'Service'¶
-
validate_identifier
(identifier, permissive=True)¶
-
-
class
tapis_cli.clients.services.mixins.
UploadJsonFile
¶ Bases:
tapis_cli.clients.services.mixins.ParserExtender
Configures a client to accept and load a JSON file
Adds -F and –file to a Command’s parser. To load the designated file, the handle_file_upload() must then be called. JSON file contents will reside in self.json_file_contents.
-
default
= None¶
-
extend_parser
(parser)¶
-
handle_file_upload
(parsed_args)¶
-
json_loaded
= {}¶
-
optional
= False¶
-
validate
= True¶
-
-
class
tapis_cli.clients.services.mixins.
AgaveURI
¶ Bases:
tapis_cli.clients.services.mixins.ParserExtender
Configures a Command to require a mandatory ‘agave uri’ positional parameter
-
extend_parser
(parser)¶
-
get_value
(parsed_args)¶
-
classmethod
parse_url
(url)¶ Parse an Agave files resource URI into storageSystem and filePath
-
validate
(url, permissive=False)¶ Placeholder to implement validation of a value passed via a ParserExtender
-
-
class
tapis_cli.clients.services.mixins.
RemoteFilePath
¶ Bases:
tapis_cli.clients.services.mixins.ParserExtender
Configures a Command to accept an optional file path
-
extend_parser
(parser)¶
-
-
class
tapis_cli.clients.services.mixins.
LocalFilePath
¶ Bases:
tapis_cli.clients.services.mixins.ParserExtender
Configures a Command to accept a local file path
-
extend_parser
(parser)¶
-
-
class
tapis_cli.clients.services.mixins.
Username
¶ Bases:
tapis_cli.clients.services.mixins.ParserExtender
Configures a Command to accept an positional username
-
extend_parser
(parser)¶
-
-
exception
tapis_cli.clients.services.mixins.
InvalidIdentifier
¶ Bases:
tapis_cli.clients.services.mixins.InvalidValue
Raised when an invalid identifier is encountered
-
class
tapis_cli.clients.services.mixins.
OptionalLocalFilePath
¶ Bases:
tapis_cli.clients.services.mixins.ParserExtender
Configures a Command to accept a local file path
-
extend_parser
(parser)¶
-
-
exception
tapis_cli.clients.services.mixins.
InvalidValue
¶ Bases:
ValueError
-
class
tapis_cli.clients.services.mixins.
URL
¶ Bases:
tapis_cli.clients.services.mixins.ParserExtender
Configures a Command to require a mandatory ‘url’ positional parameter
-
extend_parser
(parser)¶
-
get_value
(parsed_args)¶
-
validate
(url, permissive=False)¶ Placeholder to implement validation of a value passed via a ParserExtender
-
-
class
tapis_cli.clients.services.mixins.
TapisEntityUUID
¶ Bases:
tapis_cli.clients.services.mixins.ServiceIdentifier
-
classmethod
arg_display
(id_value)¶
-
id_type
= 'unique identifer'¶
-
service_id_type
= 'Tapis Entity'¶
-
classmethod
-
class
tapis_cli.clients.services.mixins.
OptionalTapisEntityUUID
¶ Bases:
tapis_cli.clients.services.mixins.TapisEntityUUID
-
optional
= True¶
-
-
class
tapis_cli.clients.services.mixins.
UploadJSONTemplate
¶ Bases:
tapis_cli.clients.services.mixins.IniLoader
,tapis_cli.clients.services.mixins.UploadJsonFile
-
all_key_values
(parsed_args, passed_vals)¶
-
handle_file_upload
(parsed_args, passed_vals={})¶
-
-
class
tapis_cli.clients.services.mixins.
WorkingDirectory
¶ Bases:
tapis_cli.clients.services.mixins.ParserExtender
Allows the working directory to be set via positional argument.
-
extend_parser
(parser)¶
-
help_string
= 'Working directory'¶
-
set_working_directory
(parsed_args, working_dir='.')¶
-
-
class
tapis_cli.clients.services.mixins.
WorkingDirectoryOpt
¶ Bases:
tapis_cli.clients.services.mixins.WorkingDirectory
Allows the working directory to be set via optional, terminal argument.
-
extend_parser
(parser)¶
-
-
class
tapis_cli.clients.services.mixins.
WorkingDirectoryArg
¶ Bases:
tapis_cli.clients.services.mixins.WorkingDirectory
Allows the working directory to be set via optional argument.
-
extend_parser
(parser)¶
-
-
class
tapis_cli.clients.services.mixins.
DownloadDirectoryArg
¶ Bases:
tapis_cli.clients.services.mixins.WorkingDirectoryArg
Allows the working directory to be set via optional argument.
-
extend_parser
(parser)¶
-
help_string
= 'Download directory'¶
-
-
class
tapis_cli.clients.services.mixins.
DockerPy
¶ Bases:
object
-
docker_client_from_env
()¶
-
dockerpy
= None¶
-
-
class
tapis_cli.clients.services.mixins.
LegacyCommmandHelp
¶ Bases:
object
Configures a commands to show legacy syntax
Bash CLI syntax is shown in overview and detailed help responses. This is configurable at class level with SHOW_LEGACY_INTERACTIVE and RENDER_LEGACY_DOCS booleans. It is also configurable for overview mode via settings.TAPIS_CLI_SHOW_LEGACY_INTERACTIVE_HELP.
-
HELP_STRING
= 'Command description'¶
-
LEGACY_COMMMAND_STRING
= None¶
-
RENDER_LEGACY_DOCS
= True¶
-
SHOW_LEGACY_INTERACTIVE
= False¶
-
get_epilog
()¶
-
-
class
tapis_cli.clients.services.mixins.
FilesURI
¶ Bases:
tapis_cli.clients.services.mixins.AgaveURI
-
extend_parser
(parser)¶
-
get_value
(parsed_args, agave=None)¶
-
Submodules¶
tapis_cli.clients.http module¶
Basic HTTP requests client
-
class
tapis_cli.clients.http.
HTTPFormatOne
(app, app_args, cmd_name=None)¶ Bases:
cliff.show.ShowOne
,tapis_cli.clients.http.HTTPCommandBase
HTTP Single Record Display
-
class
tapis_cli.clients.http.
HTTPFormatMany
(app, app_args, cmd_name=None)¶ Bases:
cliff.lister.Lister
,tapis_cli.clients.http.HTTPCommandBase
HTTP Records Listing
tapis_cli.commands package¶
Subpackages¶
On-premises Gitlab commands
Pure client-side commands
Settings managament commands
-
class
tapis_cli.commands.local.settings.get.
SettingsGet
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.mocks.FormatOne
,tapis_cli.commands.local.settings.mixins.SettingName
Get a Tapis CLI setting
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.local.settings.list.
SettingsList
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.mocks.FormatMany
List current Tapis CLI settings
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
Settings-specfic mixins
-
class
tapis_cli.commands.local.settings.set.
SettingsSet
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.mocks.FormatOne
,tapis_cli.commands.local.settings.mixins.SettingName
Set a Tapis CLI setting
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
tapis_cli.commands.local.settings.set.
settings_set
(setting_name, setting_value)¶
-
class
tapis_cli.commands.local.settings.unset.
SettingsUnset
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.mocks.FormatOne
,tapis_cli.commands.local.settings.mixins.SettingName
Unset a Tapis CLI setting
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.local.variables.
VariablesList
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.formatters.TaccApisFormatManyUnlimited
,tapis_cli.clients.services.mixins.UploadJSONTemplate
-
HELP_STRING
= 'Show active template variable names and values'¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.commands.local.variables.
VariablesInit
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.formatters.TaccApisFormatOne
-
HELP_STRING
= 'Create an .ini file to support templating'¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
Docker container registry commands
Data model for a message-only response
-
class
tapis_cli.commands.taccapis.model.v2.message.
Message
¶ Bases:
tapis_cli.commands.taccapis.model.v2.tapismodel.TapisModel
Model of a Tapis message-only response
-
SEARCH_ARGS
= []¶
-
get_headers
(verbosity_level=1, formatter='table')¶ Custom headers for Message
-
Data model and functions for Tapis apps
-
class
tapis_cli.commands.taccapis.model.v2.permission.
Permission
¶ Bases:
tapis_cli.commands.taccapis.model.v2.tapismodel.TapisModel
Model of a Tapis permission
-
NAMES
= ['ALL', 'READ', 'WRITE', 'READ_WRITE', 'EXECUTE', 'READ_EXECUTE', 'WRITE_EXECUTE', 'NONE']¶
-
PEM_POSIX_MAPPING
= {'ALL': 'rwx', 'EXECUTE': '--x', 'NONE': '---', 'READ': 'r--', 'READ_EXECUTE': 'r-x', 'READ_WRITE': 'rw-', 'WRITE': '-w-', 'WRITE_EXECUTE': '-wx'}¶
-
SEARCH_ARGS
= [('username', <class 'str'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('permission', <class 'dict'>, 1, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('_links', <class 'list'>, 1, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, 'links', False)]¶
-
get_headers
(verbosity_level=1, formatter='table')¶ Custom headers by verbosity for AppPermission
-
classmethod
pem_to_row
(permission)¶ Transforms a ‘permission’ object into an array of strings
Values for ‘True’ and ‘False’ are defined in constants.PEM_TRUE and constants.PEM_FALSE.
-
classmethod
pem_to_unix
(permission)¶ Returns a UNIX shell representation of a Tapis permission
-
classmethod
validate
(permission, permissive=False)¶
-
-
class
tapis_cli.commands.taccapis.model.v2.permission.
AbacoPermission
¶ Bases:
tapis_cli.commands.taccapis.model.v2.tapismodel.TapisModel
Model of an Abaco permission
-
NAMES
= ['READ', 'EXECUTE', 'UPDATE', 'NONE']¶
-
SEARCH_ARGS
= [('result', <class 'list'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('message', <class 'dict'>, 1, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('status', <class 'dict'>, 1, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, 'links', False)]¶
-
get_headers
(verbosity_level=1, formatter='table')¶ Custom headers by verbosity for ActorPermission
-
classmethod
validate
(permission, permissive=False)¶
-
-
class
tapis_cli.commands.taccapis.model.v2.tapismodel.
TapisModel
¶ Bases:
object
Base class for Tapis models
-
ARGS_ORDERED
= []¶
-
SEARCH_ARGS
= []¶
-
add_field
(param_name, param_type, only_detail, mods_allowed, default_mod, value_choices=None, param_opt=None, searchable=False)¶ Add a searchable field
-
add_fields
(fields, ordered=[])¶ Bulk add multiple searchable fields
-
classmethod
argify
(arg_name, arg_type, arg_help=None)¶
-
fields
= []¶
-
format_many
= False¶
-
get_args
(list_only=False)¶
-
get_headers
(verbosity_level=None, formatter='table')¶
-
classmethod
optionize
(text_string)¶ Render a field name as an option
-
payload
= {}¶
-
classmethod
render_key_value
(key, value)¶ Overridable function to how JSON key/values should be transformed
-
service_id_type
= 'Unknown'¶
-
classmethod
transform_response
(response_json)¶ Apply an intermediate transform to a JSON document
-
validate
(entity, permissive=True)¶
-
Data model and functions for Tapis users
TACC APIs commands referencing /v1
TACC API commands referencing /v2
Abaco commands
Manages cache of current Abaco actor ID
-
tapis_cli.commands.taccapis.v2.actors.deploy.actorid.
get_cachefile
(filename=None)¶ Resolve cachefile path
-
tapis_cli.commands.taccapis.v2.actors.deploy.actorid.
read_id
(filename=None)¶ Read from cache
-
tapis_cli.commands.taccapis.v2.actors.deploy.actorid.
validate
(actor_id, permissive=True)¶ Validate actorId
-
tapis_cli.commands.taccapis.v2.actors.deploy.actorid.
write_id
(actor_id, filename='.actorid')¶ Write to cache
-
class
tapis_cli.commands.taccapis.v2.actors.deploy.deploy.
ActorsDeploy
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.actors.formatters.ActorsFormatManyUnlimited
,tapis_cli.clients.services.mixins.DockerPy
,tapis_cli.clients.services.mixins.WorkingDirectoryArg
,tapis_cli.clients.services.mixins.IniLoader
-
HELP_STRING
= 'Deploy an Actor from a project directory'¶
-
LEGACY_COMMMAND_STRING
= 'abaco deploy'¶
-
build
= True¶
-
config
= {}¶
-
create
= True¶
-
document
= None¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
grant
= True¶
-
messages
= []¶
-
passed_vals
= {}¶
-
pull
= True¶
-
push
= True¶
-
results
= []¶
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
Loads a legacy reactor.rc file as a config dictionary
-
tapis_cli.commands.taccapis.v2.actors.deploy.rcfile.
config_path
(filename=None, working_directory=None)¶
-
tapis_cli.commands.taccapis.v2.actors.deploy.rcfile.
load_config
(filename='reactor.rc', as_dict=False, permissive=True)¶ Return project configuration as ConfigParser or dict from reactor.rc
-
class
tapis_cli.commands.taccapis.v2.actors.init.init.
ActorsInit
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.actors.formatters.ActorsFormatManyUnlimited
-
CATALOG_FILENAME
= 'catalog.json'¶
-
EXTRA_VERBOSITY
= 2.5¶
-
HELP_STRING
= 'Initialize a new Tapis Actor project'¶
-
LEGACY_COMMMAND_STRING
= 'abaco-init'¶
-
VERBOSITY
= 2¶
-
config
= None¶
-
document
= None¶
-
exceptions
= []¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
git_init
= True¶
-
git_remote
= False¶
-
headers
= []¶
-
messages
= []¶
-
passed_vals
= {}¶
-
results
= []¶
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
Provides key, name, description, and location for cookiecutter actors templates
-
class
tapis_cli.commands.taccapis.v2.actors.manage.base.
ActorsBaseClass
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.actors.formatters.ActorsFormatOne
,tapis_cli.commands.taccapis.v2.actors.mixins.ActorIdentifier
Shared base class implementing actors create/update
-
CREATE_ONLY
= False¶
-
EXTRA_VERBOSITY
= 2.5¶
-
VERBOSITY
= 0¶
-
config
= {}¶
-
extend_parser
(parser)¶ Adds a named argument to parser for each searchable argument
Help for each argument is displayed in the special argument group
-
get_configuration
(parsed_args, agave=None)¶ Returns specified Actor configuration from argparse inputs
-
get_envs
(parsed_args)¶ Returns specified environment variables from CLI and file
-
classmethod
get_envs_from_file
(filename, decryption_key=None)¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.actors.manage.create.
ActorsCreate
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.actors.manage.base.ActorsBaseClass
-
CREATE_ONLY
= True¶
-
HELP_STRING
= 'Create an Actor'¶
-
LEGACY_COMMMAND_STRING
= 'abaco create'¶
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.actors.manage.update.
ActorsUpdate
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.actors.manage.base.ActorsBaseClass
-
CREATE_ONLY
= False¶
-
HELP_STRING
= 'Update an Actor'¶
-
LEGACY_COMMMAND_STRING
= 'abaco update'¶
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
Data model and functions for Tapis Actor
-
class
tapis_cli.commands.taccapis.v2.actors.models.actor.
Actor
¶ Bases:
tapis_cli.commands.taccapis.model.v2.tapismodel.TapisModel
Model of a Tapis actor
-
ARGS_ORDERED
= ['id', 'name', 'description', 'owner', 'image']¶
-
FILTERABLE_KEYS
= ['name', 'description', 'image', 'owner']¶
-
SEARCH_ARGS
= [('createTime', 'datetime', 1.5, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('lastUpdateTime', 'datetime', 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('defaultEnvironment', <class 'dict'>, 1.5, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('description', <class 'str'>, 1.5, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('gid', <class 'int'>, 1.5, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('hints', <class 'list'>, 1.5, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('id', <class 'str'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('image', <class 'str'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('link', <class 'str'>, 1.5, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('mounts', <class 'list'>, 1.5, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('name', <class 'str'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('owner', <class 'str'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('privileged', <class 'bool'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('queue', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('state', <class 'dict'>, 3, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('stateless', <class 'bool'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('status', <class 'str'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('statusMessage', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('tasdir', <class 'str'>, 3, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('token', <class 'bool'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('type', <class 'str'>, 3, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('uid', <class 'int'>, 1.5, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('useContainerUid', <class 'bool'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('webhook', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('cronOn', <class 'bool'>, 0, ['eq', 'neq'], 'eq', None, None, True), ('cronSchedule', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('cronNextEx', <class 'str'>, 2.5, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('_links', <class 'list'>, 1, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, 'links', False)]¶
-
service_id_type
= 'Actor'¶
-
Data model and functions for Tapis Alias
-
class
tapis_cli.commands.taccapis.v2.actors.models.alias.
Alias
¶ Bases:
tapis_cli.commands.taccapis.model.v2.tapismodel.TapisModel
-
ARGS_ORDERED
= ['alias', 'actorId']¶
-
FILTERABLE_KEYS
= ['owner']¶
-
SEARCH_ARGS
= [('actorId', <class 'str'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('alias', <class 'str'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('owner', <class 'str'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('_links', <class 'list'>, 1, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, 'links', False)]¶
-
service_id_type
= 'Alias'¶
-
Data model and functions for Abaco Executions
Data model and functions for Tapis Message
-
class
tapis_cli.commands.taccapis.v2.actors.models.message.
Message
¶ Bases:
tapis_cli.commands.taccapis.model.v2.tapismodel.TapisModel
-
SEARCH_ARGS
= [('executionId', <class 'str'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('msg', <class 'str'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('_links', <class 'list'>, 1, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, 'links', False)]¶
-
service_id_type
= 'Message'¶
-
Data model and functions for Abaco Nonces
Data model and functions for Actor workers
-
class
tapis_cli.commands.taccapis.v2.actors.aliases_create.
ActorsAliasesCreate
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.actors.formatters.ActorsFormatOne
,tapis_cli.commands.taccapis.v2.actors.mixins.ActorIdentifier
,tapis_cli.commands.taccapis.v2.actors.mixins.AliasIdentifier
-
EXTRA_VERBOSITY
= 2.5¶
-
HELP_STRING
= 'Add an Alias for an Actor'¶
-
LEGACY_COMMMAND_STRING
= 'abaco aliases create'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.actors.aliases_delete.
ActorsAliasesDelete
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.actors.formatters.ActorsFormatOne
,tapis_cli.commands.taccapis.v2.actors.mixins.AliasIdentifier
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Delete an Actor Alias'¶
-
LEGACY_COMMMAND_STRING
= 'abaco aliases rm'¶
-
VERBOSITY
= 2¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.actors.aliases_list.
ActorsAliasesList
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.actors.formatters.ActorsFormatMany
,tapis_cli.commands.taccapis.v2.actors.mixins.GlobListFilter
-
EXTRA_VERBOSITY
= 2.5¶
-
FILTERABLE_KEYS
= ['owner']¶
-
HELP_STRING
= 'List all Actor Aliases'¶
-
LEGACY_COMMMAND_STRING
= 'abaco aliases list'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.commands.taccapis.v2.actors.aliases_show.
ActorsAliasesShow
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.actors.formatters.ActorsFormatOne
,tapis_cli.commands.taccapis.v2.actors.mixins.AliasIdentifier
-
EXTRA_VERBOSITY
= 2.5¶
-
HELP_STRING
= 'Show details for an Actor Alias'¶
-
LEGACY_COMMMAND_STRING
= 'abaco aliases list'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.actors.aliases_update.
ActorsAliasesUpdate
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.actors.formatters.ActorsFormatOne
,tapis_cli.commands.taccapis.v2.actors.aliases_update.NewActorIdentifier
,tapis_cli.commands.taccapis.v2.actors.mixins.AliasIdentifier
-
EXTRA_VERBOSITY
= 2.5¶
-
HELP_STRING
= 'Update an Alias to resolve to a different Actor'¶
-
LEGACY_COMMMAND_STRING
= ''¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.actors.aliases_update.
NewActorIdentifier
¶ Bases:
tapis_cli.commands.taccapis.v2.actors.mixins.ActorIdentifier
-
dest
= 'new_actor_id'¶
-
-
class
tapis_cli.commands.taccapis.v2.actors.delete.
ActorsDelete
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.actors.formatters.ActorsFormatOne
,tapis_cli.commands.taccapis.v2.actors.mixins.ActorIdentifier
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Delete an Actor'¶
-
LEGACY_COMMMAND_STRING
= 'abaco rm'¶
-
VERBOSITY
= 2¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.actors.execs_list.
ActorsExecsList
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.actors.formatters.ActorsFormatManyUnlimited
,tapis_cli.commands.taccapis.v2.actors.mixins.ActorIdentifier
,tapis_cli.commands.taccapis.v2.actors.mixins.GlobListFilter
-
ACCEPT_NONCE
= True¶
-
EXTRA_VERBOSITY
= 2¶
-
FILTERABLE_KEYS
= ['finalState', 'status']¶
-
HELP_STRING
= 'List Executions for a specific Actor'¶
-
LEGACY_COMMMAND_STRING
= 'abaco executions'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.commands.taccapis.v2.actors.execs_logs.
ActorsExecsLogs
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.actors.formatters.ActorsFormatManyUnlimited
,tapis_cli.commands.taccapis.v2.actors.mixins.ActorIdentifier
,tapis_cli.commands.taccapis.v2.actors.mixins.ExecutionIdentifier
-
ACCEPT_NONCE
= True¶
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Show logs for a specific Execution'¶
-
LEGACY_COMMMAND_STRING
= 'abaco logs'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.commands.taccapis.v2.actors.execs_show.
ActorsExecsShow
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.actors.formatters.ActorsFormatOne
,tapis_cli.commands.taccapis.v2.actors.mixins.ActorIdentifier
,tapis_cli.commands.taccapis.v2.actors.mixins.ExecutionIdentifier
-
ACCEPT_NONCE
= True¶
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Show details of a specific Execution'¶
-
LEGACY_COMMMAND_STRING
= 'abaco executions'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.actors.execs_stop.
ActorsExecsStop
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.actors.formatters.ActorsFormatOne
,tapis_cli.commands.taccapis.v2.actors.mixins.ActorIdentifier
-
ACCEPT_NONCE
= True¶
-
EXTRA_VERBOSITY
= 2¶
-
FILTERABLE_KEYS
= ['finalState', 'status']¶
-
HELP_STRING
= 'Delete queued messages from the Actor mailbox, preventing their execution. Running executions will continue.'¶
-
LEGACY_COMMMAND_STRING
= None¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
Formatters customized for Actor records and listings
-
class
tapis_cli.commands.taccapis.v2.actors.formatters.
ActorsFormatOne
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.actors.formatters.ActorsBase
,tapis_cli.commands.taccapis.formatters.TaccApisFormatOne
-
class
tapis_cli.commands.taccapis.v2.actors.formatters.
ActorsFormatMany
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.actors.formatters.ActorsBase
,tapis_cli.commands.taccapis.formatters.TaccApisFormatMany
-
class
tapis_cli.commands.taccapis.v2.actors.formatters.
ActorsFormatManyUnlimited
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.actors.formatters.ActorsBase
,tapis_cli.commands.taccapis.formatters.TaccApisFormatManyUnlimited
-
class
tapis_cli.commands.taccapis.v2.actors.list.
ActorsList
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.actors.formatters.ActorsFormatManyUnlimited
,tapis_cli.commands.taccapis.v2.actors.mixins.GlobListFilter
-
EXTRA_VERBOSITY
= 1.5¶
-
FILTERABLE_KEYS
= ['name', 'description', 'image', 'owner']¶
-
HELP_STRING
= 'List available Actors'¶
-
LEGACY_COMMMAND_STRING
= 'abaco list'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.commands.taccapis.v2.actors.mixins.
AliasIdentifier
¶ Bases:
tapis_cli.clients.services.mixins.ServiceIdentifier
-
dest
= 'alias_id'¶
-
id_type
= 'string'¶
-
service_id_type
= 'Alias'¶
-
-
class
tapis_cli.commands.taccapis.v2.actors.mixins.
ActorIdentifier
¶ Bases:
tapis_cli.clients.services.mixins.ServiceIdentifier
-
dest
= 'actor_id'¶
-
service_id_type
= 'Actor'¶
-
-
class
tapis_cli.commands.taccapis.v2.actors.mixins.
ExecutionIdentifier
¶ Bases:
tapis_cli.clients.services.mixins.ServiceIdentifier
-
dest
= 'execution_id'¶
-
service_id_type
= 'Execution'¶
-
-
class
tapis_cli.commands.taccapis.v2.actors.mixins.
NonceIdentifier
¶ Bases:
tapis_cli.clients.services.mixins.ServiceIdentifier
-
dest
= 'nonce_id'¶
-
service_id_type
= 'Nonce'¶
-
-
class
tapis_cli.commands.taccapis.v2.actors.mixins.
WorkerIdentifier
¶ Bases:
tapis_cli.clients.services.mixins.ServiceIdentifier
-
dest
= 'worker_id'¶
-
service_id_type
= 'Worker'¶
-
-
class
tapis_cli.commands.taccapis.v2.actors.mixins.
GlobListFilter
¶ Bases:
tapis_cli.clients.services.mixins.ParserExtender
Configures a list Command to accept a filter glob
Sets ‘parsed_args.list_filter’
-
FILTERABLE_KEYS
= ['id']¶
-
extend_parser
(parser)¶
-
-
class
tapis_cli.commands.taccapis.v2.actors.mixins.
ActorFileOrMessage
¶ Bases:
tapis_cli.clients.services.mixins.ParserExtender
-
extend_parser
(parser)¶
-
handle_file_upload
(parsed_args)¶
-
payload
= None¶
-
-
class
tapis_cli.commands.taccapis.v2.actors.mixins.
ActorEnvironmentVariables
¶ Bases:
tapis_cli.clients.services.mixins.ParserExtender
-
environment
= {}¶
-
extend_parser
(parser)¶
-
process_parsed_args
(parsed_args)¶
-
validate
(value, permissive=False)¶ Placeholder to implement validation of a value passed via a ParserExtender
-
-
class
tapis_cli.commands.taccapis.v2.actors.nonces_create.
ActorsNoncesCreate
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.actors.formatters.ActorsFormatOne
,tapis_cli.commands.taccapis.v2.actors.mixins.ActorIdentifier
-
EXTRA_VERBOSITY
= 1.5¶
-
HELP_STRING
= 'Create a Nonce for the specified Actor (or Alias)'¶
-
LEGACY_COMMMAND_STRING
= None¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.actors.nonces_delete.
ActorsNoncesDelete
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.actors.formatters.ActorsFormatOne
,tapis_cli.commands.taccapis.v2.actors.mixins.ActorIdentifier
,tapis_cli.commands.taccapis.v2.actors.mixins.NonceIdentifier
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Delete a Nonce from an Actor (or Alias)'¶
-
LEGACY_COMMMAND_STRING
= None¶
-
VERBOSITY
= 2¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.actors.nonces_list.
ActorsNoncesList
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.actors.formatters.ActorsFormatManyUnlimited
,tapis_cli.commands.taccapis.v2.actors.mixins.ActorIdentifier
,tapis_cli.commands.taccapis.v2.actors.mixins.GlobListFilter
-
EXTRA_VERBOSITY
= 2¶
-
FILTERABLE_KEYS
= ['description', 'level']¶
-
HELP_STRING
= 'List Nonces for the specified Actor (or Alias)'¶
-
LEGACY_COMMMAND_STRING
= None¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.commands.taccapis.v2.actors.nonces_show.
ActorsNoncesShow
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.actors.formatters.ActorsFormatOne
,tapis_cli.commands.taccapis.v2.actors.mixins.ActorIdentifier
,tapis_cli.commands.taccapis.v2.actors.mixins.NonceIdentifier
-
EXTRA_VERBOSITY
= 2.5¶
-
HELP_STRING
= 'Show details for a Nonce attached to an Actor (or Alias)'¶
-
LEGACY_COMMMAND_STRING
= None¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.actors.pems_grant.
ActorsPemsGrant
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.actors.formatters.ActorsFormatManyUnlimited
,tapis_cli.commands.taccapis.v2.actors.mixins.ActorIdentifier
,tapis_cli.clients.services.mixins.Username
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Grant Permissions on the specified Actor'¶
-
LEGACY_COMMMAND_STRING
= 'abaco permissions'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.commands.taccapis.v2.actors.pems_list.
ActorsPemsList
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.actors.formatters.ActorsFormatManyUnlimited
,tapis_cli.commands.taccapis.v2.actors.mixins.ActorIdentifier
Show Permissions on an Actor
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Show Permissions for the specified Actor'¶
-
LEGACY_COMMMAND_STRING
= 'abaco permissions'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.commands.taccapis.v2.actors.pems_revoke.
ActorsPemsRevoke
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.actors.formatters.ActorsFormatManyUnlimited
,tapis_cli.commands.taccapis.v2.actors.mixins.ActorIdentifier
,tapis_cli.clients.services.mixins.Username
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Revoke Permissions on the specified Actor for a User'¶
-
LEGACY_COMMMAND_STRING
= 'abaco permissions'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.commands.taccapis.v2.actors.pems_show.
ActorsPemsShow
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.actors.formatters.ActorsFormatOne
,tapis_cli.commands.taccapis.v2.actors.mixins.ActorIdentifier
,tapis_cli.clients.services.mixins.Username
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Show User-specific Permissions for an Actor'¶
-
LEGACY_COMMMAND_STRING
= 'abaco permissions'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.actors.run.
ActorsRun
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.actors.submit.ActorsSubmit
-
ACCEPT_NONCE
= True¶
-
HELP_STRING
= 'Send a message to an Actor and await response'¶
-
LEGACY_COMMMAND_STRING
= 'abaco run'¶
-
SYNCHRONOUS_EXECUTION
= True¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.actors.show.
ActorsShow
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.actors.formatters.ActorsFormatOne
,tapis_cli.commands.taccapis.v2.actors.mixins.ActorIdentifier
-
ACCEPT_NONCE
= True¶
-
EXTRA_VERBOSITY
= 2.5¶
-
HELP_STRING
= 'Show details for an Actor'¶
-
LEGACY_COMMMAND_STRING
= 'abaco list'¶
-
VERBOSITY
= 2¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.actors.submit.
ActorsSubmit
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.actors.formatters.ActorsFormatOne
,tapis_cli.commands.taccapis.v2.actors.mixins.ActorIdentifier
,tapis_cli.commands.taccapis.v2.actors.mixins.ActorFileOrMessage
,tapis_cli.commands.taccapis.v2.actors.mixins.ActorEnvironmentVariables
-
ACCEPT_NONCE
= True¶
-
EXTRA_VERBOSITY
= 2.5¶
-
HELP_STRING
= 'Send an asynchronous message to an Actor'¶
-
LEGACY_COMMMAND_STRING
= 'abaco run'¶
-
SYNCHRONOUS_EXECUTION
= False¶
-
VERBOSITY
= 2¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
prepare_message
(parsed_args)¶
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.actors.workers_create.
ActorsWorkersCreate
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.actors.formatters.ActorsFormatOne
,tapis_cli.commands.taccapis.v2.actors.mixins.ActorIdentifier
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Add Workers to the specified Actor'¶
-
LEGACY_COMMMAND_STRING
= 'abaco workers'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.actors.workers_delete.
ActorsWorkersDelete
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.actors.formatters.ActorsFormatOne
,tapis_cli.commands.taccapis.v2.actors.mixins.ActorIdentifier
,tapis_cli.commands.taccapis.v2.actors.mixins.WorkerIdentifier
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Delete a Worker'¶
-
LEGACY_COMMMAND_STRING
= None¶
-
VERBOSITY
= 2¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.actors.workers_list.
ActorsWorkersList
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.actors.formatters.ActorsFormatManyUnlimited
,tapis_cli.commands.taccapis.v2.actors.mixins.ActorIdentifier
,tapis_cli.commands.taccapis.v2.actors.mixins.GlobListFilter
-
ACCEPT_NONCE
= True¶
-
EXTRA_VERBOSITY
= 2.5¶
-
FILTERABLE_KEYS
= ['status']¶
-
HELP_STRING
= 'List Workers for an Actor'¶
-
LEGACY_COMMMAND_STRING
= 'abaco workers'¶
-
VERBOSITY
= 2¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.commands.taccapis.v2.actors.workers_show.
ActorsWorkersShow
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.actors.formatters.ActorsFormatOne
,tapis_cli.commands.taccapis.v2.actors.mixins.ActorIdentifier
,tapis_cli.commands.taccapis.v2.actors.mixins.WorkerIdentifier
-
ACCEPT_NONCE
= True¶
-
EXTRA_VERBOSITY
= 2.5¶
-
HELP_STRING
= 'Show details for a Worker'¶
-
LEGACY_COMMMAND_STRING
= None¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
Clients and tokens commands
Data model and functions for Tapis token
-
class
tapis_cli.commands.taccapis.v2.apim.models.token.
Token
¶ Bases:
tapis_cli.commands.taccapis.model.v2.tapismodel.TapisModel
Model of a Tapis application
-
SEARCH_ARGS
= [('scope', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('token_type', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('expires_at', 'datetime', 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('expires_in', <class 'int'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('access_token', <class 'str'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('refresh_token', <class 'str'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False)]¶
-
id_display_name
= 'TOKEN'¶
-
-
class
tapis_cli.commands.taccapis.v2.apim.auth_init.
AuthInit
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.apim.formatters.CreateTokenFormatOne
,tapis_cli.commands.taccapis.v2.apim.registry.init.RegistryOpts
,tapis_cli.commands.taccapis.v2.apim.gitserver.init.GitServerOpts
Configure this host to use Tapis
-
EXTRA_VERBOSITY
= 2.5¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.apim.auth_show.
AuthShow
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.clients.services.mixins.JsonVerbose
,cliff.show.ShowOne
Show current Tapis authentication configuration
-
EXTRA_VERBOSITY
= 2.5¶
-
VERBOSITY
= 0¶
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
Formatters customized for token, client, and client subscription responses
-
class
tapis_cli.commands.taccapis.v2.apim.formatters.
TokenFormatOne
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.apim.formatters.TokensBase
,tapis_cli.commands.taccapis.formatters.TaccApisFormatOne
-
class
tapis_cli.commands.taccapis.v2.apim.formatters.
CreateTokenFormatOne
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.apim.formatters.TokensBase
,tapis_cli.commands.taccapis.formatters.TaccApisFormatOneNoBearer
-
class
tapis_cli.commands.taccapis.v2.apim.token_create.
TokenCreate
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.apim.formatters.CreateTokenFormatOne
Create a new Tapis access/refresh token pair
-
EXTRA_VERBOSITY
= 2.5¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.apim.token_refresh.
TokenRefresh
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.apim.formatters.TokenFormatOne
Refresh the current Tapis access token
-
EXTRA_VERBOSITY
= 2.5¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
Apps service commands
-
class
tapis_cli.commands.taccapis.v2.apps.deploy.deploy.
AppsDeploy
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.apps.formatters.AppsFormatManyUnlimited
,tapis_cli.clients.services.mixins.DockerPy
,tapis_cli.clients.services.mixins.WorkingDirectoryArg
,tapis_cli.commands.taccapis.v2.apps.deploy.deploy.UploadAppTemplate
-
HELP_STRING
= 'Deploy an App from a project directory'¶
-
LEGACY_COMMMAND_STRING
= 'apps-deploy'¶
-
backup
= False¶
-
build
= True¶
-
config
= {}¶
-
create
= True¶
-
display
= True¶
-
document
= None¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
grant
= True¶
-
messages
= []¶
-
passed_vals
= {}¶
-
pull
= True¶
-
push
= True¶
-
results
= []¶
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
upload
= True¶
-
-
class
tapis_cli.commands.taccapis.v2.apps.init.init.
AppsInit
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.apps.formatters.AppsFormatManyUnlimited
-
CATALOG_FILENAME
= 'catalog.json'¶
-
EXTRA_VERBOSITY
= 2.5¶
-
HELP_STRING
= 'Initialize a new Tapis App project from a template'¶
-
LEGACY_COMMMAND_STRING
= 'apps-init'¶
-
VERBOSITY
= 2¶
-
config
= None¶
-
document
= None¶
-
exceptions
= []¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
git_init
= True¶
-
git_remote
= False¶
-
headers
= []¶
-
messages
= []¶
-
passed_vals
= {}¶
-
results
= []¶
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
Provides key, name, description, and location for cookiecutter apps templates
Data model and functions for Tapis apps
-
class
tapis_cli.commands.taccapis.v2.apps.models.app.
App
¶ Bases:
tapis_cli.commands.taccapis.model.v2.tapismodel.TapisModel
Model of a Tapis application
-
SEARCH_ARGS
= [('id', <class 'str'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('name', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('version', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('revision', <class 'int'>, 1, ['eq', 'neq', 'gt', 'gte', 'lt', 'lte'], 'eq', None, None, True), ('label', <class 'str'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('lastModified', 'datetime', 1.5, ['on', 'after', 'before', 'eq', 'neq', 'gt', 'gte', 'lt', 'lte'], 'after', None, None, False), ('shortDescription', <class 'str'>, 1, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('longDescription', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('owner', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('isPublic', <class 'bool'>, 1, ['eq', 'neq'], 'eq', None, None, False), ('executionType', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', ['HPC', 'CLI'], None, True), ('executionSystem', <class 'str'>, 1, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('deploymentSystem', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('available', <class 'bool'>, 2, ['eq', 'neq'], 'eq', None, None, True), ('parallelism', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', ['SERIAL', 'PARALLEL'], None, True), ('defaultProcessorsPerNode', <class 'int'>, 2, ['eq', 'neq', 'gt', 'gte', 'lt', 'lte'], 'eq', None, None, True), ('defaultMemoryPerNode', <class 'int'>, 2, ['eq', 'neq', 'gt', 'gte', 'lt', 'lte'], 'eq', None, None, True), ('defaultNodeCount', <class 'int'>, 2, ['eq', 'neq', 'gt', 'gte', 'lt', 'lte'], 'eq', None, None, True), ('defaultMaxRunTime', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('defaultQueue', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('tags', <class 'list'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('ontology', <class 'list'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('helpURI', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('deploymentPath', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('templatePath', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('testPath', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('checkpointable', <class 'bool'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('modules', <class 'list'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('inputs', <class 'list'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('parameters', <class 'list'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('outputs', <class 'list'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('uuid', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('icon', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('_links', <class 'list'>, 1, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, 'links', False)]¶
-
service_id_type
= 'App'¶
-
-
class
tapis_cli.commands.taccapis.v2.apps.models.app_history.
AppHistory
¶ Bases:
tapis_cli.commands.taccapis.v2.apps.models.app.App
Model of a Tapis system history record
-
SEARCH_ARGS
= [('_links', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('id', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('status', <class 'str'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('created', 'datetime', 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('createdBy', <class 'str'>, 1.5, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('description', <class 'str'>, 1, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False)]¶
-
-
class
tapis_cli.commands.taccapis.v2.apps.clone.
AppsClone
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.apps.formatters.AppsFormatOne
,tapis_cli.commands.taccapis.v2.apps.mixins.AppIdentifier
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Clone an App'¶
-
LEGACY_COMMMAND_STRING
= 'apps-clone'¶
-
VERBOSITY
= 1¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.apps.create.
AppsCreate
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.apps.formatters.AppsFormatOne
,tapis_cli.clients.services.mixins.WorkingDirectoryArg
,tapis_cli.clients.services.mixins.UploadJSONTemplate
-
EXTRA_VERBOSITY
= 2.5¶
-
HELP_STRING
= 'Create a new App'¶
-
LEGACY_COMMMAND_STRING
= 'apps-addupdate'¶
-
VERBOSITY
= 2¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.apps.disable.
AppsDisable
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.apps.formatters.AppsFormatOne
,tapis_cli.commands.taccapis.v2.apps.mixins.AppIdentifier
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Disable usage of an App'¶
-
LEGACY_COMMMAND_STRING
= 'apps-disable'¶
-
VERBOSITY
= 1¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.apps.enable.
AppsEnable
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.apps.formatters.AppsFormatOne
,tapis_cli.commands.taccapis.v2.apps.mixins.AppIdentifier
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Restore usage for an App if disabled'¶
-
LEGACY_COMMMAND_STRING
= 'apps-enable'¶
-
VERBOSITY
= 1¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
Formatters customized for App records and listings
-
class
tapis_cli.commands.taccapis.v2.apps.formatters.
AppsFormatOne
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.apps.formatters.AppsBase
,tapis_cli.commands.taccapis.formatters.TaccApisFormatOne
-
class
tapis_cli.commands.taccapis.v2.apps.formatters.
AppsFormatMany
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.apps.formatters.AppsBase
,tapis_cli.commands.taccapis.formatters.TaccApisFormatMany
-
class
tapis_cli.commands.taccapis.v2.apps.formatters.
AppsFormatManyUnlimited
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.apps.formatters.AppsBase
,tapis_cli.commands.taccapis.formatters.TaccApisFormatManyUnlimited
-
class
tapis_cli.commands.taccapis.v2.apps.history.
AppsHistory
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.apps.formatters.AppsFormatMany
,tapis_cli.commands.taccapis.v2.apps.mixins.AppIdentifier
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Show history for an App'¶
-
LEGACY_COMMMAND_STRING
= 'apps-history'¶
-
VERBOSITY
= 1¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.commands.taccapis.v2.apps.list.
AppsList
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.apps.formatters.AppsFormatMany
-
EXTRA_VERBOSITY
= 1¶
-
HELP_STRING
= 'List the Apps catalog'¶
-
LEGACY_COMMMAND_STRING
= 'apps-list'¶
-
VERBOSITY
= 0¶
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.commands.taccapis.v2.apps.mixins.
AppIdentifier
¶ Bases:
tapis_cli.clients.services.mixins.ServiceIdentifier
-
dest
= 'app_id'¶
-
service_id_type
= 'App'¶
-
validate_identifier
(identifier, permissive=False)¶
-
-
class
tapis_cli.commands.taccapis.v2.apps.pems_drop.
AppsPemsDrop
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.apps.formatters.AppsFormatMany
,tapis_cli.commands.taccapis.v2.apps.mixins.AppIdentifier
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Drop all granted Permissions from an App'¶
-
LEGACY_COMMMAND_STRING
= 'apps-pems-delete'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.commands.taccapis.v2.apps.pems_grant.
AppsPemsGrant
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.apps.formatters.AppsFormatMany
,tapis_cli.commands.taccapis.v2.apps.mixins.AppIdentifier
,tapis_cli.clients.services.mixins.Username
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Grant Permissions on an App to a User'¶
-
LEGACY_COMMMAND_STRING
= 'apps-pems-update'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.commands.taccapis.v2.apps.pems_list.
AppsPemsList
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.apps.formatters.AppsFormatMany
,tapis_cli.commands.taccapis.v2.apps.mixins.AppIdentifier
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'List Permissions for an specific App'¶
-
LEGACY_COMMMAND_STRING
= 'apps-pems-list'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.commands.taccapis.v2.apps.pems_revoke.
AppsPemsRevoke
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.apps.formatters.AppsFormatMany
,tapis_cli.commands.taccapis.v2.apps.mixins.AppIdentifier
,tapis_cli.clients.services.mixins.Username
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Revoke Permissions on an App for a User'¶
-
LEGACY_COMMMAND_STRING
= 'apps-pems-update'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.commands.taccapis.v2.apps.pems_show.
AppsPemsShow
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.apps.formatters.AppsFormatOne
,tapis_cli.commands.taccapis.v2.apps.mixins.AppIdentifier
,tapis_cli.clients.services.mixins.Username
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Show Permissions on an App for specific User'¶
-
LEGACY_COMMMAND_STRING
= 'apps-pems-list'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.apps.publish.
AppsPublish
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.apps.formatters.AppsFormatOne
,tapis_cli.commands.taccapis.v2.apps.mixins.AppIdentifier
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Publish an App for use by others'¶
-
LEGACY_COMMMAND_STRING
= 'apps-publish'¶
-
VERBOSITY
= 1¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.apps.search.
AppsSearch
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.apps.formatters.AppsFormatMany
-
EXTRA_VERBOSITY
= 1¶
-
HELP_STRING
= 'Search the Apps catalog'¶
-
LEGACY_COMMMAND_STRING
= 'apps-list'¶
-
VERBOSITY
= 1¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.commands.taccapis.v2.apps.show.
AppsShow
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.apps.formatters.AppsFormatOne
,tapis_cli.commands.taccapis.v2.apps.mixins.AppIdentifier
-
EXTRA_VERBOSITY
= 2.5¶
-
HELP_STRING
= 'Show details for an App'¶
-
LEGACY_COMMMAND_STRING
= 'apps-list'¶
-
VERBOSITY
= 2¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.apps.unpublish.
AppsUnpublish
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.apps.disable.AppsDisable
Disable usage of a public App (it is not possible to actually unpublish)
-
class
tapis_cli.commands.taccapis.v2.apps.update.
AppsUpdate
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.apps.create.AppsCreate
,tapis_cli.commands.taccapis.v2.apps.mixins.AppIdentifier
-
HELP_STRING
= 'Update an existing App'¶
-
LEGACY_COMMMAND_STRING
= 'apps-addupdate'¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
Files service commands
Globals pertaining to the Tapis files
API
Exceptions and error handlers
-
exception
tapis_cli.commands.taccapis.v2.files.helpers.error.
HTTPError
(*args, **kwargs)¶ Bases:
requests.exceptions.RequestException
An HTTP error occurred.
-
exception
tapis_cli.commands.taccapis.v2.files.helpers.error.
HTTPNotFoundError
(*args, **kwargs)¶ Bases:
requests.exceptions.HTTPError
-
exception
tapis_cli.commands.taccapis.v2.files.helpers.error.
TapisOperationFailed
¶ Bases:
agavepy.errors.AgaveError
-
exception
tapis_cli.commands.taccapis.v2.files.helpers.error.
ImportNotCompleteError
(*args, **kwargs)¶ Bases:
tapis_cli.commands.taccapis.v2.files.helpers.error.HTTPNotFoundError
-
tapis_cli.commands.taccapis.v2.files.helpers.error.
read_tapis_http_error
(http_error_object)¶ Extract useful details from an exception raised by interactting with a Tapis API
-
tapis_cli.commands.taccapis.v2.files.helpers.error.
handle_http_error
(httperror)¶
-
tapis_cli.commands.taccapis.v2.files.helpers.manage.
copy
(file_path, system_id='data-tacc-sandbox', destination=None, permissive=False, agave=None)¶
-
tapis_cli.commands.taccapis.v2.files.helpers.manage.
delete
(file_path, system_id='data-tacc-sandbox', permissive=False, agave=None)¶
-
tapis_cli.commands.taccapis.v2.files.helpers.manage.
makedirs
(file_path, system_id='data-tacc-sandbox', destination='/', exist_ok=True, permissive=False, agave=None)¶
-
tapis_cli.commands.taccapis.v2.files.helpers.manage.
move
(file_path, system_id='data-tacc-sandbox', destination=None, permissive=False, agave=None)¶
-
tapis_cli.commands.taccapis.v2.files.helpers.pems_list.
pems_list
(file_path, system_id='data-tacc-sandbox', limit=200, offset=0, root_dir='/', permissive=False, agave=None, **kwargs)¶
Web service implementations of files-list
operations
-
tapis_cli.commands.taccapis.v2.files.helpers.stat.
stat
(file_path, system_id='data-tacc-sandbox', root_dir='/', permissive=False, agave=None, **kwargs)¶ Retrieve attributes for a given path on a Tapis storageSystem
Parameters: - file_path (str) – The path from which to fetch attributes
- system_id (str, optional) – The Tapis storageSystem for file_path
- root_dir (str, optional) – Base path on the storageSystem if file_path is relative
- permissive (bool, optional) – Whether to raise an Exception on failure
- agave (Agave, optional) – An active Tapis client
Returns: A dictionary containing Tapis files API attributes
Return type: Raises: HTTPError
– A transport or web services error was encounteredTapisOperationFailed
– Some other error prevented the operation
-
tapis_cli.commands.taccapis.v2.files.helpers.stat.
rsrc_type
(file_path, system_id='data-tacc-sandbox', root_dir='/', permissive=False, agave=None, **kwargs)¶ Retrieve the
type
for a given path on a Tapis storageSystemParameters: - file_path (str) – The path from which to fetch attributes
- system_id (str, optional) – The Tapis storageSystem for file_path
- root_dir (str, optional) – Base path on the storageSystem if file_path is relative
- permissive (bool, optional) – Whether to raise an Exception on failure
- agave (Agave, optional) – An active Tapis client
Returns: Either
file
ordir
Return type: string
Raises: HTTPError
– A transport or web services error was encounteredTapisOperationFailed
– Some other error prevented the operation
-
tapis_cli.commands.taccapis.v2.files.helpers.stat.
exists
(file_path, system_id='data-tacc-sandbox', root_dir='/', permissive=False, agave=None, **kwargs)¶ Determine if a path exists on a Tapis storageSystem
Parameters: - file_path (str) – The path from which to fetch attributes
- system_id (str, optional) – The Tapis storageSystem for file_path
- root_dir (str, optional) – Base path on the storageSystem if file_path is relative
- permissive (bool, optional) – Whether to raise an Exception on failure
- agave (Agave, optional) – An active Tapis client
Returns: True if the path exists and False if not
Return type: Raises: HTTPError
– A transport or web services error was encounteredTapisOperationFailed
– Some other error prevented the operation
-
tapis_cli.commands.taccapis.v2.files.helpers.stat.
isfile
(file_path, system_id='data-tacc-sandbox', root_dir='/', permissive=False, agave=None, **kwargs)¶ Determine if a path exists and is a file on a Tapis storageSystem
Parameters: - file_path (str) – The path from which to fetch attributes
- system_id (str, optional) – The Tapis storageSystem for file_path
- root_dir (str, optional) – Base path on the storageSystem if file_path is relative
- permissive (bool, optional) – Whether to raise an Exception on failure
- agave (Agave, optional) – An active Tapis client
Returns: True if the path is a file and False if not
Return type: Raises: HTTPError
– A transport or web services error was encounteredTapisOperationFailed
– Some other error prevented the operation
-
tapis_cli.commands.taccapis.v2.files.helpers.stat.
isdir
(file_path, system_id='data-tacc-sandbox', root_dir='/', permissive=False, agave=None, **kwargs)¶ Determine if a path exists and is a directory on a Tapis storageSystem
Parameters: - file_path (str) – The path from which to fetch attributes
- system_id (str, optional) – The Tapis storageSystem for file_path
- root_dir (str, optional) – Base path on the storageSystem if file_path is relative
- permissive (bool, optional) – Whether to raise an Exception on failure
- agave (Agave, optional) – An active Tapis client
Returns: True if the path is a directory and False if not
Return type: Raises: HTTPError
– A transport or web services error was encounteredTapisOperationFailed
– Some other error prevented the operation
Web service implementations of files sync
operations.
-
tapis_cli.commands.taccapis.v2.files.helpers.sync.
download
(source, system_id, destination='.', includes=None, excludes=None, force=False, sync=False, atomic=False, progress=False, agave=None)¶
-
tapis_cli.commands.taccapis.v2.files.helpers.upload.
upload
(local_file_path, system_id, destination='/', excludes=None, includes=None, force=False, sync=False, atomic=False, progress=True, agave=None)¶
Web service implementations of the walk
operation.
Provides both walk
and listdir
functions
via recursive files-list
web service operations.
-
tapis_cli.commands.taccapis.v2.files.helpers.walk.
walk
(directory_path, system_id='data-tacc-sandbox', root_dir='/', directories=False, dotfiles=False, sort=False, page_size=100, agave=None, **kwargs)¶ Recursively lists contents of a Tapis files directory.
Parameters: - directory_path (str) – Full or relative path of directory to walk
- system_id (str, optional) – Tapis storageSystem for directory_path
- root_dir (str, optional) – Base path if directory_path is relative
- directories (bool, optional) – Whether result should include directories
- dotfiles (bool, optional) – Whether result should include dotfiles
- page_size (int, optional) – Override default Tapis files-list page size
- agave (Agave, optional) – Tapis (Agave) API client
Returns: List of Tapis-canonical absolute paths as AnnotatedFile objects
Return type: Raises: TapisOperationFailed
– An exception or error happened
-
tapis_cli.commands.taccapis.v2.files.helpers.walk.
listdir
(directory_path, system_id='data-tacc-sandbox', root_dir='/', directories=True, dotfiles=False, page_size=100, sort=True, agave=None, **kwargs)¶ Lists immediate contents of a Tapis files directory.
Parameters: - directory_path (str) – Full or relative path of directory to walk
- system_id (str, optional) – Tapis storageSystem for directory_path
- root_dir (str, optional) – Base path if directory_path is relative
- directories (bool, optional) – Whether result should include directories
- dotfiles (bool, optional) – Whether result should include dotfiles
- agave (Agave, optional) – Tapis (Agave) API client
Returns: List of paths relative to directory_path
Return type: Raises: TapisOperationFailed
– Some error prevented the action from completing
Data model and functions for Tapis files
-
class
tapis_cli.commands.taccapis.v2.files.models.file.
File
¶ Bases:
tapis_cli.commands.taccapis.model.v2.tapismodel.TapisModel
Model of a Tapis file
-
SEARCH_ARGS
= [('_links', <class 'list'>, 1, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, 'links', False), ('name', <class 'str'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('path', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('lastModified', 'datetime', 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('length', <class 'int'>, 0, ['eq', 'neq', 'gt', 'gte', 'lt', 'lte'], 'eq', None, None, False), ('permissions', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('mimeType', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('type', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('system', <class 'str'>, 2.5, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False)]¶
-
get_headers
(verbosity_level=None, formatter='table')¶
-
payload
= {}¶
-
service_id_type
= 'File'¶
-
-
class
tapis_cli.commands.taccapis.v2.files.models.file_history.
FileHistory
¶ Bases:
tapis_cli.commands.taccapis.v2.files.models.file.File
-
SEARCH_ARGS
= [('status', <class 'str'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('created', 'datetime', 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('createdBy', <class 'str'>, 1.5, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('description', <class 'str'>, 1, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False)]¶
-
-
class
tapis_cli.commands.taccapis.v2.files.models.file_pem.
FilePermission
¶ Bases:
tapis_cli.commands.taccapis.v2.files.models.file.File
-
SEARCH_ARGS
= [('_links', <class 'dict'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('username', <class 'str'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('internalUsername', 'datetime', 3, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('recursive', <class 'bool'>, 1.5, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('permission', <class 'dict'>, 1.5, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False)]¶
-
-
class
tapis_cli.commands.taccapis.v2.files.models.file_staging.
FileStaging
¶ Bases:
tapis_cli.commands.taccapis.v2.files.models.file.File
-
SEARCH_ARGS
= [('_links', <class 'list'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, 'links', False), ('name', <class 'str'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('uuid', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('owner', <class 'str'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('path', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('lastModified', 'datetime', 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('source', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('status', <class 'str'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('nativeFormat', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('systemId', <class 'str'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False)]¶
-
-
class
tapis_cli.commands.taccapis.v2.files.copy.
FilesCopy
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.files.formatters.FilesFormatOne
,tapis_cli.clients.services.mixins.AgaveURI
,tapis_cli.commands.taccapis.v2.files.mixins.FileOptions
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Copy a Files path between locations within Tapis'¶
-
LEGACY_COMMMAND_STRING
= 'files-copy'¶
-
VERBOSITY
= 2¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.files.delete.
FilesDelete
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.files.formatters.FilesFormatOne
,tapis_cli.clients.services.mixins.AgaveURI
,tapis_cli.commands.taccapis.v2.files.mixins.FileOptions
,tapis_cli.commands.taccapis.v2.files.mixins.ReportProgress
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Delete a file or directory from Tapis'¶
-
LEGACY_COMMMAND_STRING
= 'files-delete'¶
-
VERBOSITY
= 2¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.files.download.
FilesDownload
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.files.formatters.FilesFormatOne
,tapis_cli.clients.services.mixins.AgaveURI
,tapis_cli.clients.services.mixins.DownloadDirectoryArg
,tapis_cli.commands.taccapis.v2.files.mixins.IncludeFiles
,tapis_cli.commands.taccapis.v2.files.mixins.ExcludeFiles
,tapis_cli.commands.taccapis.v2.files.mixins.OverwritePolicy
,tapis_cli.commands.taccapis.v2.files.mixins.ReportProgress
-
HELP_STRING
= 'Download from Tapis to the local host'¶
-
LEGACY_COMMMAND_STRING
= 'files-get'¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
Formatters customized for system records and listings
-
class
tapis_cli.commands.taccapis.v2.files.formatters.
FilesFormatOne
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.files.formatters.FilesBase
,tapis_cli.commands.taccapis.formatters.TaccApisFormatOne
-
class
tapis_cli.commands.taccapis.v2.files.formatters.
FilesFormatMany
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.files.formatters.FilesBase
,tapis_cli.commands.taccapis.formatters.TaccApisFormatMany
-
class
tapis_cli.commands.taccapis.v2.files.formatters.
FilesHistoryFormatMany
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.files.formatters.FilesBase
,tapis_cli.commands.taccapis.formatters.TaccApisFormatMany
-
class
tapis_cli.commands.taccapis.v2.files.formatters.
FilesPemsFormatMany
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.files.formatters.FilesBase
,tapis_cli.commands.taccapis.formatters.TaccApisFormatMany
-
class
tapis_cli.commands.taccapis.v2.files.history.
FilesHistory
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.files.formatters.FilesFormatMany
,tapis_cli.clients.services.mixins.AgaveURI
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'List history for a Files'¶
-
LEGACY_COMMMAND_STRING
= 'files-history'¶
-
VERBOSITY
= 1¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.commands.taccapis.v2.files.list.
FilesList
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.files.formatters.FilesFormatMany
,tapis_cli.clients.services.mixins.AgaveURI
,tapis_cli.commands.taccapis.v2.files.mixins.FilesOptions
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'List contents of a Files path'¶
-
LEGACY_COMMMAND_STRING
= 'files-list'¶
-
VERBOSITY
= 1¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
Files-specfic mixins
-
class
tapis_cli.commands.taccapis.v2.files.mixins.
ExcludeFiles
¶ Bases:
tapis_cli.clients.services.mixins.ParserExtender
Configures a Command to accept a list of files to exclude
Sets ‘parsed_args.exclude_files’
-
extend_parser
(parser)¶
-
-
class
tapis_cli.commands.taccapis.v2.files.mixins.
FileOptions
¶ Bases:
tapis_cli.clients.services.mixins.ParserExtender
Configures a Command to accept rendering options for a single file
-
extend_parser
(parser)¶
-
-
class
tapis_cli.commands.taccapis.v2.files.mixins.
FilesOptions
¶ Bases:
tapis_cli.commands.taccapis.v2.files.mixins.FileOptions
Configures a Command to accept rendering options for a list of files
Extends parser to set ‘parsed_args.ls_sort_reverse’, ‘parsed_args.ls_sort_size’, and ‘parsed_args.ls_sort_time’. Also provides a ‘sort_table’ function to sort a table by designated header.
-
extend_parser
(parser)¶
-
classmethod
sort_table
(rows, headers, header='name', reverse=False)¶
-
-
class
tapis_cli.commands.taccapis.v2.files.mixins.
FilesCallbackURI
¶ Bases:
tapis_cli.clients.services.mixins.ParserExtender
Configures a Command to accept a URI to call when a files action is complete
Sets ‘parsed_args.files_callback_uri’
-
extend_parser
(parser)¶
-
-
class
tapis_cli.commands.taccapis.v2.files.mixins.
IncludeFiles
¶ Bases:
tapis_cli.clients.services.mixins.ParserExtender
Configures a Command to accept a list of files to include
Sets ‘parsed_args.include_files’
-
extend_parser
(parser)¶
-
-
class
tapis_cli.commands.taccapis.v2.files.mkdir.
FilesMakeDir
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.files.formatters.FilesFormatOne
,tapis_cli.clients.services.mixins.AgaveURI
,tapis_cli.commands.taccapis.v2.files.mixins.FileOptions
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Create a directory on a System'¶
-
LEGACY_COMMMAND_STRING
= 'files-mkdir'¶
-
VERBOSITY
= 2¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.files.move.
FilesMove
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.files.formatters.FilesFormatOne
,tapis_cli.clients.services.mixins.AgaveURI
,tapis_cli.commands.taccapis.v2.files.mixins.FileOptions
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Move a Files path from one location to another on a System'¶
-
LEGACY_COMMMAND_STRING
= 'files-move'¶
-
VERBOSITY
= 2¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.files.pems_drop.
FilesPemsDrop
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.files.formatters.FilesFormatMany
,tapis_cli.clients.services.mixins.AgaveURI
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Drop all granted permissions from a Files path'¶
-
LEGACY_COMMMAND_STRING
= 'files-pems-update'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.commands.taccapis.v2.files.pems_grant.
FilesPemsGrant
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.files.formatters.FilesFormatMany
,tapis_cli.clients.services.mixins.AgaveURI
,tapis_cli.clients.services.mixins.Username
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Grant permissions on a Files path to a User'¶
-
LEGACY_COMMMAND_STRING
= 'files-pems-update'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.commands.taccapis.v2.files.pems_list.
FilesPemsList
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.files.formatters.FilesPemsFormatMany
,tapis_cli.clients.services.mixins.AgaveURI
,tapis_cli.commands.taccapis.v2.files.mixins.FileOptions
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'List permissions for an specific Files path'¶
-
LEGACY_COMMMAND_STRING
= 'files-pems-list'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.commands.taccapis.v2.files.pems_revoke.
FilesPemsRevoke
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.files.formatters.FilesFormatMany
,tapis_cli.clients.services.mixins.AgaveURI
,tapis_cli.clients.services.mixins.Username
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Revoke permissions on a Files path for a User'¶
-
LEGACY_COMMMAND_STRING
= 'files-pems-update'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.commands.taccapis.v2.files.pems_show.
FilesPemsShow
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.files.formatters.FilesFormatOne
,tapis_cli.clients.services.mixins.AgaveURI
,tapis_cli.clients.services.mixins.Username
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Show permissions on a Files path for a User'¶
-
LEGACY_COMMMAND_STRING
= 'files-pems-list'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.files.show.
FilesShow
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.files.formatters.FilesFormatOne
,tapis_cli.clients.services.mixins.AgaveURI
,tapis_cli.commands.taccapis.v2.files.mixins.FileOptions
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Show details of a Files path'¶
-
LEGACY_COMMMAND_STRING
= 'files-list'¶
-
VERBOSITY
= 2¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.files.upload.
FilesUpload
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.files.formatters.FilesFormatOne
,tapis_cli.clients.services.mixins.AgaveURI
,tapis_cli.clients.services.mixins.LocalFilePath
,tapis_cli.commands.taccapis.v2.files.mixins.ExcludeFiles
,tapis_cli.commands.taccapis.v2.files.mixins.IncludeFiles
,tapis_cli.commands.taccapis.v2.files.mixins.FilesCallbackURI
,tapis_cli.commands.taccapis.v2.files.mixins.OverwritePolicy
,tapis_cli.commands.taccapis.v2.files.mixins.ReportProgress
-
HELP_STRING
= 'Upload from local host to Tapis'¶
-
LEGACY_COMMMAND_STRING
= 'files-upload'¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
Jobs service commands
Globals pertaining to the Tapis files
API
Exceptions and error handlers
-
exception
tapis_cli.commands.taccapis.v2.jobs.helpers.error.
HTTPError
(*args, **kwargs)¶ Bases:
requests.exceptions.RequestException
An HTTP error occurred.
-
exception
tapis_cli.commands.taccapis.v2.jobs.helpers.error.
HTTPNotFoundError
(*args, **kwargs)¶ Bases:
requests.exceptions.HTTPError
-
exception
tapis_cli.commands.taccapis.v2.jobs.helpers.error.
TapisOperationFailed
¶ Bases:
agavepy.errors.AgaveError
-
exception
tapis_cli.commands.taccapis.v2.jobs.helpers.error.
ImportNotCompleteError
(*args, **kwargs)¶ Bases:
tapis_cli.commands.taccapis.v2.jobs.helpers.error.HTTPNotFoundError
-
tapis_cli.commands.taccapis.v2.jobs.helpers.error.
read_tapis_http_error
(http_error_object)¶ Extract useful details from an exception raised by interactting with a Tapis API
-
tapis_cli.commands.taccapis.v2.jobs.helpers.error.
handle_http_error
(httperror)¶
Web service implementations of jobs-output-list
operations
-
tapis_cli.commands.taccapis.v2.jobs.helpers.stat.
stat
(file_path, job_uuid, root_dir='/', permissive=False, agave=None, **kwargs)¶ Retrieve attributes for a given path on a Tapis storageSystem
Parameters: - file_path (str) – The path from which to fetch attributes
- job_uuid (str) – The Tapis job for file_path
- root_dir (str, optional) – Base path in output directory if file_path is relative
- permissive (bool, optional) – Whether to raise an Exception on failure
- agave (Agave, optional) – An active Tapis client
Returns: A dictionary containing Tapis attributes for a jobs output
Return type: Raises: HTTPError
– A transport or web services error was encounteredTapisOperationFailed
– Some other error prevented the operation
-
tapis_cli.commands.taccapis.v2.jobs.helpers.stat.
rsrc_type
(file_path, job_uuid, root_dir='/', permissive=False, agave=None, **kwargs)¶ Retrieve the
type
for a given path in a Tapis job outputParameters: - file_path (str) – The path from which to fetch attributes
- job_uuid (str) – The Tapis job UUID for file_path
- root_dir (str, optional) – Base path in output directory if file_path is relative
- permissive (bool, optional) – Whether to raise an Exception on failure
- agave (Agave, optional) – An active Tapis client
Returns: Either
file
ordir
Return type: string
Raises: HTTPError
– A transport or web services error was encounteredTapisOperationFailed
– Some other error prevented the operation
-
tapis_cli.commands.taccapis.v2.jobs.helpers.stat.
exists
(file_path, job_uuid, root_dir='/', permissive=False, agave=None, **kwargs)¶ Determine if a path exists in a Tapis job output
Parameters: - file_path (str) – The path from which to fetch attributes
- job_uuid (str) – The Tapis job UUID for file_path
- root_dir (str, optional) – Base path in output directory if file_path is relative
- permissive (bool, optional) – Whether to raise an Exception on failure
- agave (Agave, optional) – An active Tapis client
Returns: True if the path exists and False if not
Return type: Raises: HTTPError
– A transport or web services error was encounteredTapisOperationFailed
– Some other error prevented the operation
-
tapis_cli.commands.taccapis.v2.jobs.helpers.stat.
isfile
(file_path, job_uuid, root_dir='/', permissive=False, agave=None, **kwargs)¶ Determine if a path exists and is a file in a Tapis job output
Parameters: - file_path (str) – The path from which to fetch attributes
- job_uuid (str) – The Tapis job UUID for file_path
- root_dir (str, optional) – Base path in output directory if file_path is relative
- permissive (bool, optional) – Whether to raise an Exception on failure
- agave (Agave, optional) – An active Tapis client
Returns: True if the path is a file and False if not
Return type: Raises: HTTPError
– A transport or web services error was encounteredTapisOperationFailed
– Some other error prevented the operation
-
tapis_cli.commands.taccapis.v2.jobs.helpers.stat.
isdir
(file_path, job_uuid, root_dir='/', permissive=False, agave=None, **kwargs)¶ Determine if a path exists and is a directory in a Tapis job output
Parameters: - file_path (str) – The path from which to fetch attributes
- job_uuid (str) – The Tapis job UUID for file_path
- root_dir (str, optional) – Base path in output directory if file_path is relative
- permissive (bool, optional) – Whether to raise an Exception on failure
- agave (Agave, optional) – An active Tapis client
Returns: True if the path is a directory and False if not
Return type: Raises: HTTPError
– A transport or web services error was encounteredTapisOperationFailed
– Some other error prevented the operation
Web service implementations of jobs-output sync
operations.
-
tapis_cli.commands.taccapis.v2.jobs.helpers.sync.
download
(source, job_uuid, destination=None, excludes=None, includes=None, force=False, sync=False, atomic=False, progress=False, agave=None)¶
-
tapis_cli.commands.taccapis.v2.jobs.helpers.sync.
basic_download
(src, job_uuid, dest=None, agave=None)¶
Web service implementations of the walk
operation.
Provides both walk
and listdir
functions
via recursive jobs-output-list
web service operations.
-
tapis_cli.commands.taccapis.v2.jobs.helpers.walk.
walk
(directory_path, job_uuid, root_dir='/', directories=False, dotfiles=False, sort=False, page_size=100, agave=None, **kwargs)¶ Recursively lists contents of a Tapis job output directory.
Parameters: - directory_path (str) – Full or relative path of directory to walk
- job_uuid (str) – Tapis job UUID for directory path
- root_dir (str, optional) – Base path if directory_path is relative
- directories (bool, optional) – Whether result should include directories
- dotfiles (bool, optional) – Whether result should include dotfiles
- page_size (int, optional) – Override default Tapis files-list page size
- agave (Agave, optional) – Tapis (Agave) API client
Returns: List of Tapis-canonical absolute paths as AnnotatedFile objects
Return type: Raises: TapisOperationFailed
– An exception or error happened
-
tapis_cli.commands.taccapis.v2.jobs.helpers.walk.
listdir
(directory_path, job_uuid, root_dir='/', directories=True, dotfiles=False, page_size=100, sort=True, agave=None, **kwargs)¶ Lists immediate contents of a Tapis job output directory.
Parameters: - directory_path (str) – Full or relative path of directory to walk
- job_uuid (str) – Tapis job UUID for directory path
- root_dir (str, optional) – Base path if directory_path is relative
- directories (bool, optional) – Whether result should include directories
- dotfiles (bool, optional) – Whether result should include dotfiles
- agave (Agave, optional) – Tapis (Agave) API client
Returns: List of paths relative to directory_path
Return type: Raises: TapisOperationFailed
– Some error prevented the action from completing
-
class
tapis_cli.commands.taccapis.v2.jobs.init.init.
JobsInit
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.jobs.formatters.JobsFormatManyUnlimited
,tapis_cli.commands.taccapis.v2.apps.mixins.AppIdentifier
-
EXTRA_VERBOSITY
= 2.5¶
-
HELP_STRING
= 'Create a Job document for the specified App'¶
-
LEGACY_COMMMAND_STRING
= 'jobs-template'¶
-
VERBOSITY
= 2¶
-
config
= None¶
-
document
= None¶
-
exceptions
= []¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
messages
= []¶
-
passed_vals
= {}¶
-
results
= []¶
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
Data model and functions for Tapis jobs
-
class
tapis_cli.commands.taccapis.v2.jobs.models.job.
Job
¶ Bases:
tapis_cli.commands.taccapis.model.v2.tapismodel.TapisModel
Model of a Tapis job
-
SEARCH_ARGS
= [('_links', <class 'list'>, 1, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, 'links', False), ('accepted', 'datetime', 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('appId', <class 'str'>, 1.5, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('appUuid', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('archive', <class 'bool'>, 2, ['eq', 'neq'], 'eq', None, None, True), ('archiveOnAppError', <class 'bool'>, 2, ['eq', 'neq'], 'eq', None, None, True), ('archivePath', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('archiveSystem', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('blockedCount', <class 'int'>, 2, ['eq', 'neq', 'gt', 'gte', 'lt', 'lte'], 'eq', None, None, True), ('created', 'datetime', 1.5, ['on', 'after', 'before', 'eq', 'neq', 'gt', 'gte', 'lt', 'lte'], 'after', None, None, True), ('ended', 'datetime', 1.5, ['on', 'after', 'before', 'eq', 'neq', 'gt', 'gte', 'lt', 'lte'], 'after', None, None, True), ('failedStatusChecks', <class 'int'>, 2, ['eq', 'neq', 'gt', 'gte', 'lt', 'lte'], 'eq', None, None, True), ('id', <class 'str'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('inputs', <class 'dict'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('lastStatusCheck', 'datetime', 1.5, ['on', 'after', 'before', 'eq', 'neq', 'gt', 'gte', 'lt', 'lte'], 'after', None, None, False), ('lastStatusMessage', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('lastUpdated', 'datetime', 1.5, ['on', 'after', 'before', 'eq', 'neq', 'gt', 'gte', 'lt', 'lte'], 'after', None, None, True), ('maxHours', <class 'int'>, 2, ['eq', 'neq', 'gt', 'gte', 'lt', 'lte'], 'eq', None, None, True), ('memoryPerNode', <class 'int'>, 2, ['eq', 'neq', 'gt', 'gte', 'lt', 'lte'], 'eq', None, None, True), ('name', <class 'str'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('nodeCount', <class 'int'>, 2, ['eq', 'neq', 'gt', 'gte', 'lt', 'lte'], 'eq', None, None, True), ('owner', <class 'str'>, 1, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('parameters', <class 'dict'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('processorsPerNode', <class 'int'>, 2, ['eq', 'neq', 'gt', 'gte', 'lt', 'lte'], 'eq', None, None, True), ('remoteEnded', 'datetime', 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('remoteJobId', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('remoteOutcome', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('remoteQueue', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('remoteStarted', 'datetime', 1.5, ['on', 'after', 'before', 'eq', 'neq', 'gt', 'gte', 'lt', 'lte'], 'after', None, None, False), ('remoteStatusChecks', <class 'int'>, 2, ['eq', 'neq', 'gt', 'gte', 'lt', 'lte'], 'eq', None, None, True), ('remoteSubmitted', 'datetime', 1.5, ['on', 'after', 'before', 'eq', 'neq', 'gt', 'gte', 'lt', 'lte'], 'after', None, None, False), ('roles', <class 'list'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('schedulerJobId', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('status', <class 'str'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('submitRetries', <class 'int'>, 2, ['eq', 'neq', 'gt', 'gte', 'lt', 'lte'], 'eq', None, None, True), ('systemId', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('tenantId', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('tenantQueue', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('visible', <class 'bool'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('workPath', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False)]¶
-
TEMPLATE_KEYS
= ['appId', 'archive', 'archiveSystem', 'maxRunTime', 'inputs', 'memoryPerNode', 'name', 'nodeCount', 'parameters', 'processorsPerNode']¶
-
get_template_headers
(verbosity_level=None, formatter='table')¶ Return only submittable Job fields
-
classmethod
render_key_value
(key, value)¶ Rules for transforming key names and values
-
service_id_type
= 'Job'¶
-
-
class
tapis_cli.commands.taccapis.v2.jobs.models.job_history.
JobHistory
¶ Bases:
tapis_cli.commands.taccapis.v2.jobs.models.job.Job
-
SEARCH_ARGS
= [('status', <class 'str'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('created', 'datetime', 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('createdBy', <class 'str'>, 1.5, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('description', <class 'str'>, 1, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('progress', <class 'str'>, 1.5, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False)]¶
-
-
class
tapis_cli.commands.taccapis.v2.jobs.models.job_pem.
JobPermission
¶ Bases:
tapis_cli.commands.taccapis.v2.jobs.models.job.Job
-
SEARCH_ARGS
= [('_links', <class 'dict'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('username', <class 'str'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('internalUsername', 'datetime', 3, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('permission', <class 'dict'>, 1.5, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False)]¶
-
-
class
tapis_cli.commands.taccapis.v2.jobs.cancel.
JobsCancel
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.jobs.formatters.JobsFormatOne
,tapis_cli.commands.taccapis.v2.jobs.mixins.JobsUUID
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Cancel a running or queued Job'¶
-
LEGACY_COMMMAND_STRING
= 'jobs-stop'¶
-
VERBOSITY
= 1¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
Formatters customized for job records and listings
-
class
tapis_cli.commands.taccapis.v2.jobs.formatters.
JobsFormatOne
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.jobs.formatters.JobsBase
,tapis_cli.commands.taccapis.formatters.TaccApisFormatOne
-
class
tapis_cli.commands.taccapis.v2.jobs.formatters.
JobsFormatMany
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.jobs.formatters.JobsBase
,tapis_cli.commands.taccapis.formatters.TaccApisFormatMany
-
class
tapis_cli.commands.taccapis.v2.jobs.formatters.
JobsHistoryFormatMany
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.jobs.formatters.JobsBase
,tapis_cli.commands.taccapis.formatters.TaccApisFormatManyUnlimited
-
class
tapis_cli.commands.taccapis.v2.jobs.formatters.
JobsFormatManyUnlimited
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.jobs.formatters.JobsBase
,tapis_cli.commands.taccapis.formatters.TaccApisFormatManyUnlimited
-
class
tapis_cli.commands.taccapis.v2.jobs.hide.
JobsHide
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.jobs.formatters.JobsFormatOne
,tapis_cli.commands.taccapis.v2.jobs.mixins.JobsUUID
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Hide a Job from view'¶
-
LEGACY_COMMMAND_STRING
= 'jobs-hide'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.jobs.history.
JobsHistory
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.jobs.formatters.JobsHistoryFormatMany
,tapis_cli.commands.taccapis.v2.jobs.mixins.JobsUUID
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'List history of a given job'¶
-
LEGACY_COMMMAND_STRING
= 'jobs-history'¶
-
VERBOSITY
= 1¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.commands.taccapis.v2.jobs.list.
JobsList
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.jobs.formatters.JobsFormatMany
-
EXTRA_VERBOSITY
= 1¶
-
HELP_STRING
= 'List Jobs'¶
-
LEGACY_COMMMAND_STRING
= 'jobs-list'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.commands.taccapis.v2.jobs.mixins.
JobsUUID
¶ Bases:
tapis_cli.clients.services.mixins.TapisEntityUUID
Configures a Command to require a mandatory Tapis job UUID
-
dest
= 'job_uuid'¶
-
service_id_type
= 'Job'¶
-
validate_identifier
(identifier, permissive=False)¶
-
-
class
tapis_cli.commands.taccapis.v2.jobs.outputs_download.
JobsOutputsDownload
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.jobs.formatters.JobsFormatOne
,tapis_cli.commands.taccapis.v2.jobs.mixins.JobsUUID
,tapis_cli.clients.services.mixins.RemoteFilePath
,tapis_cli.commands.taccapis.v2.files.mixins.ExcludeFiles
,tapis_cli.commands.taccapis.v2.files.mixins.IncludeFiles
,tapis_cli.commands.taccapis.v2.files.mixins.OverwritePolicy
,tapis_cli.commands.taccapis.v2.files.mixins.ReportProgress
-
HELP_STRING
= 'Download outputs from a Job'¶
-
LEGACY_COMMMAND_STRING
= 'jobs-output-get'¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.jobs.outputs_list.
JobsOutputsList
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.jobs.formatters.JobsFormatMany
,tapis_cli.commands.taccapis.v2.jobs.mixins.JobsUUID
,tapis_cli.commands.taccapis.v2.files.mixins.FilesOptions
,tapis_cli.clients.services.mixins.RemoteFilePath
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Lists output directory for a Jobs'¶
-
LEGACY_COMMMAND_STRING
= 'jobs-output-list'¶
-
VERBOSITY
= 1¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.commands.taccapis.v2.jobs.outputs_logs.
JobsOutputsLogs
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.files.formatters.FilesFormatOne
,tapis_cli.commands.taccapis.v2.jobs.mixins.JobsUUID
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Displays logs for a Tapis Job'¶
-
LEGACY_COMMMAND_STRING
= None¶
-
VERBOSITY
= 1¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.jobs.pems_drop.
JobsPemsDrop
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.jobs.formatters.JobsFormatMany
,tapis_cli.commands.taccapis.v2.jobs.mixins.JobsUUID
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Drop all granted Permissions from a Job'¶
-
LEGACY_COMMMAND_STRING
= 'jobs-pems-update'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.commands.taccapis.v2.jobs.pems_grant.
JobsPemsGrant
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.jobs.formatters.JobsFormatMany
,tapis_cli.commands.taccapis.v2.jobs.mixins.JobsUUID
,tapis_cli.clients.services.mixins.Username
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Grant Permissions on a Job to a User'¶
-
LEGACY_COMMMAND_STRING
= 'jobs-pems-update'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.commands.taccapis.v2.jobs.pems_list.
JobsPemsList
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.jobs.formatters.JobsFormatMany
,tapis_cli.commands.taccapis.v2.jobs.mixins.JobsUUID
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'List Permissions for a Job'¶
-
LEGACY_COMMMAND_STRING
= 'jobs-pems-list'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.commands.taccapis.v2.jobs.pems_revoke.
JobsPemsRevoke
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.jobs.formatters.JobsFormatMany
,tapis_cli.commands.taccapis.v2.jobs.mixins.JobsUUID
,tapis_cli.clients.services.mixins.Username
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Revoke Permissions on a Job for a User'¶
-
LEGACY_COMMMAND_STRING
= 'jobs-pems-update'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.commands.taccapis.v2.jobs.pems_show.
JobsPemsShow
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.jobs.formatters.JobsFormatOne
,tapis_cli.commands.taccapis.v2.jobs.mixins.JobsUUID
,tapis_cli.clients.services.mixins.Username
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Show Permissions on a Job for a User'¶
-
LEGACY_COMMMAND_STRING
= 'jobs-pems-list'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.jobs.resubmit.
JobsResubmit
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.jobs.formatters.JobsFormatOne
,tapis_cli.commands.taccapis.v2.jobs.mixins.JobsUUID
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Resubmit a Job using the same inputs and parameters'¶
-
LEGACY_COMMMAND_STRING
= 'jobs-resubmit'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.jobs.search.
JobsSearch
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.jobs.formatters.JobsFormatMany
-
EXTRA_VERBOSITY
= 1¶
-
HELP_STRING
= 'Search Job records'¶
-
LEGACY_COMMMAND_STRING
= 'jobs-search'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.commands.taccapis.v2.jobs.show.
JobsShow
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.jobs.formatters.JobsFormatOne
,tapis_cli.commands.taccapis.v2.jobs.mixins.JobsUUID
-
EXTRA_VERBOSITY
= 2.5¶
-
HELP_STRING
= 'Show a specific Job'¶
-
LEGACY_COMMMAND_STRING
= 'jobs-list'¶
-
VERBOSITY
= 2¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.jobs.status.
JobsStatus
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.jobs.formatters.JobsFormatOne
,tapis_cli.commands.taccapis.v2.jobs.mixins.JobsUUID
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'how the status of a Job'¶
-
LEGACY_COMMMAND_STRING
= 'jobs-status'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.jobs.submit.
JobsSubmit
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.jobs.formatters.JobsFormatOne
,tapis_cli.clients.services.mixins.UploadJSONTemplate
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Submit a new Job'¶
-
LEGACY_COMMMAND_STRING
= 'jobs-submit'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.jobs.unhide.
JobsUnhide
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.jobs.formatters.JobsFormatOne
,tapis_cli.commands.taccapis.v2.jobs.mixins.JobsUUID
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Unhide a hidden Job'¶
-
LEGACY_COMMMAND_STRING
= 'jobs-unhide'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
TACC SSH keys service commands
Metadata service commands
Data model and functions for Tapis apps
-
class
tapis_cli.commands.taccapis.v2.metadata.models.metadata.
Metadata
¶ Bases:
tapis_cli.commands.taccapis.model.v2.tapismodel.TapisModel
Model of a Tapis metadata record
-
SEARCH_ARGS
= [('uuid', <class 'str'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('schemaId', <class 'str'>, 2.5, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('internalUsername', <class 'str'>, 2.5, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('owner', <class 'str'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('associationIds', <class 'list'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('name', <class 'str'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('value', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('created', 'datetime', 2, ['on', 'after', 'before', 'eq', 'neq', 'gt', 'gte', 'lt', 'lte'], 'after', None, None, False), ('lastUpdated', 'datetime', 2, ['on', 'after', 'before', 'eq', 'neq', 'gt', 'gte', 'lt', 'lte'], 'after', None, None, False), ('_links', <class 'list'>, 1, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, 'links', False)]¶
-
service_id_type
= 'Unique'¶
-
-
class
tapis_cli.commands.taccapis.v2.metadata.create.
MetadataCreate
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.metadata.formatters.MetadataFormatOne
,tapis_cli.commands.taccapis.v2.metadata.mixins.UploadMetadataFile
-
EXTRA_VERBOSITY
= 2.5¶
-
HELP_STRING
= 'Store Metadata in a new document'¶
-
LEGACY_COMMMAND_STRING
= 'metadata-addupdate'¶
-
VERBOSITY
= 2¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.metadata.delete.
MetadataDelete
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.metadata.formatters.MetadataFormatOne
,tapis_cli.commands.taccapis.v2.metadata.mixins.MetadataUUID
-
EXTRA_VERBOSITY
= 2.5¶
-
HELP_STRING
= 'Delete a Metadata document by UUID'¶
-
LEGACY_COMMMAND_STRING
= 'metadata-delete'¶
-
VERBOSITY
= 2¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
Formatters customized for metadata records and listings
-
class
tapis_cli.commands.taccapis.v2.metadata.formatters.
MetadataFormatOne
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.metadata.formatters.MetadataBase
,tapis_cli.commands.taccapis.formatters.TaccApisFormatOne
-
class
tapis_cli.commands.taccapis.v2.metadata.formatters.
MetadataFormatMany
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.metadata.formatters.MetadataBase
,tapis_cli.commands.taccapis.formatters.TaccApisFormatMany
-
class
tapis_cli.commands.taccapis.v2.metadata.list.
MetadataList
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.metadata.formatters.MetadataFormatMany
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'List Metadata documents'¶
-
LEGACY_COMMMAND_STRING
= 'metadata-list'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
Metadata-specfic mixins
-
class
tapis_cli.commands.taccapis.v2.metadata.mixins.
UploadMetadataFile
¶ Bases:
tapis_cli.clients.services.mixins.UploadJSONTemplate
-
optional
= True¶
-
-
class
tapis_cli.commands.taccapis.v2.metadata.pems_drop.
MetadataPemsDrop
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.metadata.formatters.MetadataFormatMany
,tapis_cli.commands.taccapis.v2.metadata.mixins.MetadataUUID
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Drop all granted Permissions from a Metadata document'¶
-
LEGACY_COMMMAND_STRING
= 'metadata-pems-update'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.commands.taccapis.v2.metadata.pems_grant.
MetadataPemsGrant
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.metadata.formatters.MetadataFormatMany
,tapis_cli.commands.taccapis.v2.metadata.mixins.MetadataUUID
,tapis_cli.clients.services.mixins.Username
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Grant Permissions on a Metadata document to a User'¶
-
LEGACY_COMMMAND_STRING
= 'metadata-pems-update'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.commands.taccapis.v2.metadata.pems_list.
MetadataPemsList
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.metadata.formatters.MetadataFormatMany
,tapis_cli.commands.taccapis.v2.metadata.mixins.MetadataUUID
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'List Permissions for a Metadata document'¶
-
LEGACY_COMMMAND_STRING
= 'metadata-pems-list'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.commands.taccapis.v2.metadata.pems_revoke.
MetadataPemsRevoke
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.metadata.formatters.MetadataFormatMany
,tapis_cli.commands.taccapis.v2.metadata.mixins.MetadataUUID
,tapis_cli.clients.services.mixins.Username
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Revoke Permissions on a Metadata document for a User'¶
-
LEGACY_COMMMAND_STRING
= 'metadata-pems-update'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.commands.taccapis.v2.metadata.pems_show.
MetadataPemsShow
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.metadata.formatters.MetadataFormatOne
,tapis_cli.commands.taccapis.v2.metadata.mixins.MetadataUUID
,tapis_cli.clients.services.mixins.Username
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Show Permissions on a Metadata document for specific User'¶
-
LEGACY_COMMMAND_STRING
= 'metadata-pems-list'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.metadata.search.
MetadataSearch
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.metadata.formatters.MetadataFormatMany
,tapis_cli.commands.taccapis.searchable.SearchableCommand
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Search for Metadata documents'¶
-
LEGACY_COMMMAND_STRING
= 'metadata-list'¶
-
VERBOSITY
= 1¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
update_payload
(parsed_args)¶
-
-
class
tapis_cli.commands.taccapis.v2.metadata.show.
MetadataShow
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.metadata.formatters.MetadataFormatOne
,tapis_cli.commands.taccapis.v2.metadata.mixins.MetadataUUID
-
EXTRA_VERBOSITY
= 2.5¶
-
HELP_STRING
= 'Show a Metadata document by UUID'¶
-
LEGACY_COMMMAND_STRING
= 'metadata-list'¶
-
VERBOSITY
= 2¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.metadata.update.
MetadataUpdate
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.metadata.formatters.MetadataFormatOne
,tapis_cli.commands.taccapis.v2.metadata.mixins.UploadMetadataFile
,tapis_cli.commands.taccapis.v2.metadata.mixins.MetadataUUID
-
EXTRA_VERBOSITY
= 2.5¶
-
HELP_STRING
= 'Update an existing Metadata document by UUID'¶
-
LEGACY_COMMMAND_STRING
= 'metadata-addupdate'¶
-
VERBOSITY
= 2¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
Notifications service commands
Data model and functions for Tapis notifications
-
class
tapis_cli.commands.taccapis.v2.notifications.models.notification.
Notification
¶ Bases:
tapis_cli.commands.taccapis.model.v2.tapismodel.TapisModel
Model of a Tapis notification
-
SEARCH_ARGS
= [('_links', <class 'list'>, 1, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, 'links', False), ('id', <class 'str'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('associatedUuid', <class 'str'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('event', <class 'str'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('url', <class 'str'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('persistent', <class 'bool'>, 1, ['eq', 'neq'], 'eq', None, None, True), ('responseCode', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('attempts', <class 'int'>, 2, ['eq', 'neq', 'gt', 'gte', 'lt', 'lte'], 'eq', None, None, False), ('status', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('lastUpdated', 'datetime', 2, ['on', 'after', 'before', 'eq', 'neq', 'gt', 'gte', 'lt', 'lte'], 'eq', None, None, True), ('created', 'datetime', 2, ['on', 'after', 'before', 'eq', 'neq', 'gt', 'gte', 'lt', 'lte'], 'eq', None, None, True), ('policy', <class 'dict'>, 2, ['on', 'after', 'before', 'eq', 'neq', 'gt', 'gte', 'lt', 'lte'], 'eq', None, None, True)]¶
-
service_id_type
= 'Notification'¶
-
-
class
tapis_cli.commands.taccapis.v2.notifications.create.
NotificationsCreate
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.notifications.formatters.NotificationsFormatOne
,tapis_cli.commands.taccapis.v2.notifications.mixins.NotificationOptions
,tapis_cli.commands.taccapis.v2.notifications.mixins.UploadNotificationJson
,tapis_cli.clients.services.mixins.OptionalTapisEntityUUID
-
EXTRA_VERBOSITY
= 2.5¶
-
HELP_STRING
= 'Create a Notification'¶
-
LEGACY_COMMMAND_STRING
= 'notifications-addupdate'¶
-
VERBOSITY
= 2¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.notifications.delete.
NotificationsDelete
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.notifications.formatters.NotificationsFormatOne
,tapis_cli.commands.taccapis.v2.notifications.mixins.NotificationsUUID
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Delete a Notification'¶
-
LEGACY_COMMMAND_STRING
= 'notifications-delete'¶
-
VERBOSITY
= 2¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
Formatters customized for notification records and listings
-
class
tapis_cli.commands.taccapis.v2.notifications.formatters.
NotificationsFormatOne
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.notifications.formatters.NotificationsBase
,tapis_cli.commands.taccapis.formatters.TaccApisFormatOne
-
class
tapis_cli.commands.taccapis.v2.notifications.formatters.
NotificationsFormatMany
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.notifications.formatters.NotificationsBase
,tapis_cli.commands.taccapis.formatters.TaccApisFormatMany
-
render_extended_parser_value
(key, value, formatter=None)¶
-
-
class
tapis_cli.commands.taccapis.v2.notifications.list.
NotificationsList
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.notifications.formatters.NotificationsFormatMany
,tapis_cli.clients.services.mixins.OptionalTapisEntityUUID
-
EXTRA_VERBOSITY
= 1¶
-
HELP_STRING
= 'List Notifications [by Tapis UUID]'¶
-
LEGACY_COMMMAND_STRING
= 'notifications-list'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.commands.taccapis.v2.notifications.mixins.
UploadNotificationJson
¶ Bases:
tapis_cli.clients.services.mixins.UploadJsonFile
-
optional
= True¶
-
-
class
tapis_cli.commands.taccapis.v2.notifications.mixins.
NotificationsUUID
¶ Bases:
tapis_cli.clients.services.mixins.TapisEntityUUID
Configures a Command to require a mandatory Tapis notification UUID
-
dest
= 'notification_uuid'¶
-
service_id_type
= 'Notification'¶
-
suffix
= '-011'¶
-
-
class
tapis_cli.commands.taccapis.v2.notifications.show.
NotificationsShow
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.notifications.formatters.NotificationsFormatOne
,tapis_cli.commands.taccapis.v2.notifications.mixins.NotificationsUUID
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Show details of a Notification'¶
-
LEGACY_COMMMAND_STRING
= 'notifications-list'¶
-
VERBOSITY
= 2¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.notifications.update.
NotificationsUpdate
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.notifications.create.NotificationsCreate
,tapis_cli.commands.taccapis.v2.notifications.mixins.NotificationsUUID
-
EXTRA_VERBOSITY
= 2.5¶
-
HELP_STRING
= 'Update a Notification by UUID'¶
-
LEGACY_COMMMAND_STRING
= 'notifications-addupdate'¶
-
VERBOSITY
= 2¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
PostIts service commands
Data model and functions for Tapis apps
-
class
tapis_cli.commands.taccapis.v2.postits.models.postit.
PostIt
¶ Bases:
tapis_cli.commands.taccapis.model.v2.tapismodel.TapisModel
Model of a Tapis post-it entry
-
SEARCH_ARGS
= [('postit', <class 'str'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('remainingUses', <class 'int'>, 0, ['eq', 'neq', 'gt', 'gte', 'lt', 'lte'], 'eq', None, None, False), ('expires', 'datetime', 0, ['on', 'after', 'before', 'eq', 'neq', 'gt', 'gte', 'lt', 'lte'], 'after', None, None, False), ('url', <class 'str'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('creator', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('created', 'datetime', 2, ['on', 'after', 'before', 'eq', 'neq', 'gt', 'gte', 'lt', 'lte'], 'after', None, None, False), ('noauth', <class 'bool'>, 2, ['eq', 'neq'], 'eq', None, None, False), ('method', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('_links', <class 'list'>, 1, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, 'links', False)]¶
-
service_id_type
= 'Post-it'¶
-
-
class
tapis_cli.commands.taccapis.v2.postits.create.
PostItsCreate
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.postits.formatters.PostItsFormatOne
,tapis_cli.clients.services.mixins.FilesURI
-
EXTRA_VERBOSITY
= 2.5¶
-
HELP_STRING
= 'Create a new Postit'¶
-
LEGACY_COMMMAND_STRING
= 'postits-create'¶
-
VERBOSITY
= 2¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.postits.delete.
PostItsDelete
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.postits.formatters.PostItsFormatOne
,tapis_cli.commands.taccapis.v2.postits.mixins.PostItsIdentifier
-
EXTRA_VERBOSITY
= 2.5¶
-
HELP_STRING
= 'Delete a Postit'¶
-
LEGACY_COMMMAND_STRING
= 'postits-delete'¶
-
VERBOSITY
= 2¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
Formatters customized for postit records and listings
-
class
tapis_cli.commands.taccapis.v2.postits.formatters.
PostItsFormatOne
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.postits.formatters.PostItsBase
,tapis_cli.commands.taccapis.formatters.TaccApisFormatOne
-
class
tapis_cli.commands.taccapis.v2.postits.formatters.
PostItsFormatMany
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.postits.formatters.PostItsBase
,tapis_cli.commands.taccapis.formatters.TaccApisFormatManyUnlimited
-
class
tapis_cli.commands.taccapis.v2.postits.list.
PostItsList
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.postits.formatters.PostItsFormatMany
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'List active Post-Its'¶
-
LEGACY_COMMMAND_STRING
= 'postits-list'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.commands.taccapis.v2.postits.mixins.
PostItsIdentifier
¶ Bases:
tapis_cli.clients.services.mixins.ServiceIdentifier
Configures a Command to require a mandatory Post-it
-
dest
= 'postit_id'¶
-
service_id_type
= 'PostIt'¶
-
validate_identifier
(identifier, permissive=False)¶
-
Profiles service commands
Data model and functions for Tapis profiles
-
class
tapis_cli.commands.taccapis.v2.profiles.models.profile.
Profile
¶ Bases:
tapis_cli.commands.taccapis.model.v2.tapismodel.TapisModel
Model of a Tapis user profile
-
SEARCH_ARGS
= [('first_name', <class 'str'>, 0, ['eq'], 'eq', None, None, True), ('last_name', <class 'str'>, 0, ['eq'], 'eq', None, None, True), ('full_name', <class 'str'>, 2.5, ['eq'], 'eq', None, None, False), ('email', <class 'str'>, 0, ['eq'], 'eq', None, None, True), ('mobile_phone', <class 'str'>, 2, ['eq'], 'eq', None, None, False), ('phone', <class 'str'>, 2, ['eq'], 'eq', None, None, False), ('username', <class 'str'>, 0, ['eq'], 'eq', None, None, True), ('uid', <class 'int'>, 2.5, ['eq'], 'eq', None, None, False), ('nonce', <class 'str'>, 2.5, ['eq'], 'eq', None, None, False), ('status', <class 'str'>, 2.5, ['eq'], 'eq', None, None, False), ('create_time', 'datetime', 2.5, ['eq'], 'eq', None, None, False)]¶
-
service_id_type
= 'User'¶
-
Formatters customized for profile records and listings
-
class
tapis_cli.commands.taccapis.v2.profiles.formatters.
ProfilesFormatOne
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.profiles.formatters.ProfilesBase
,tapis_cli.commands.taccapis.formatters.TaccApisFormatOne
-
class
tapis_cli.commands.taccapis.v2.profiles.formatters.
ProfilesFormatMany
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.profiles.formatters.ProfilesBase
,tapis_cli.commands.taccapis.formatters.TaccApisFormatManyUnlimited
-
class
tapis_cli.commands.taccapis.v2.profiles.list.
ProfilesList
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.profiles.formatters.ProfilesFormatMany
List all Profiles (requires administrative privileges)
-
EXTRA_VERBOSITY
= 1¶
-
VERBOSITY
= 1¶
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.commands.taccapis.v2.profiles.search.
ProfilesSearch
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.profiles.formatters.ProfilesFormatMany
-
HELP_STRING
= 'Search by attribute for a Profile'¶
-
LEGACY_COMMMAND_STRING
= 'profiles-search'¶
-
VERBOSITY
= 1¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.commands.taccapis.v2.profiles.show.
ProfilesShow
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.profiles.formatters.ProfilesFormatOne
,tapis_cli.clients.services.mixins.Username
-
HELP_STRING
= 'Show details for a specific Profile'¶
-
LEGACY_COMMMAND_STRING
= 'profiles-list'¶
-
VERBOSITY
= 2¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.profiles.show_self.
ProfilesShowSelf
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.profiles.formatters.ProfilesFormatOne
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Show Profile for the authenticated User'¶
-
LEGACY_COMMMAND_STRING
= 'profiles-list'¶
-
VERBOSITY
= 2¶
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
Systems service commands
Data model and functions for Tapis systems
-
class
tapis_cli.commands.taccapis.v2.systems.models.system.
System
¶ Bases:
tapis_cli.commands.taccapis.model.v2.tapismodel.TapisModel
Model of a Tapis system
-
ARGS_ORDERED
= ['id', 'name', 'type', 'default']¶
-
SEARCH_ARGS
= [('_links', <class 'list'>, 1, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, 'links', False), ('available', <class 'bool'>, 1, ['eq', 'neq'], 'eq', None, None, True), ('default', <class 'bool'>, 0, ['eq', 'neq'], 'eq', None, None, True), ('description', <class 'str'>, 1, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('environment', <class 'dict'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('executionType', <class 'str'>, 2, ['eq', 'neq'], 'eq', ['HPC', 'CLI', 'Condor'], None, True), ('globalDefault', <class 'bool'>, 2, ['eq', 'neq'], 'eq', None, None, True), ('id', <class 'str'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('lastModified', 'datetime', 1.5, ['on', 'after', 'before', 'eq', 'neq', 'gt', 'gte', 'lt', 'lte'], 'after', None, None, False), ('login', <class 'dict'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('maxSystemJobs', <class 'int'>, 2, ['eq', 'neq', 'gt', 'gte', 'lt', 'lte'], 'eq', None, None, True), ('maxSystemJobsPerUser', <class 'int'>, 2, ['eq', 'neq', 'gt', 'gte', 'lt', 'lte'], 'eq', None, None, True), ('name', <class 'str'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('owner', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('public', <class 'bool'>, 1, ['eq', 'neq'], 'eq', None, None, True), ('queues', <class 'dict'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('revision', <class 'int'>, 2, ['eq', 'neq', 'gt', 'gte', 'lt', 'lte'], 'eq', None, None, True), ('scheduler', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', ['CONDOR', 'SGE', 'LSF', 'PBS', 'SLURM', 'CUSTOM_SLURM', 'FORK'], None, True), ('scratchDir', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('site', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('status', <class 'str'>, 1, ['eq', 'neq'], 'eq', ['UP', 'DOWN', 'MAINTENANCE', 'UNKNOWN'], None, True), ('storage', <class 'dict'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('type', <class 'str'>, 0, ['eq', 'neq'], 'eq', ['STORAGE', 'EXECUTION'], None, True), ('uuid', <class 'str'>, 2, ['eq', 'neq'], 'eq', None, None, False), ('workDir', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False)]¶
-
service_id_type
= 'System'¶
-
-
class
tapis_cli.commands.taccapis.v2.systems.models.system_history.
SystemHistory
¶ Bases:
tapis_cli.commands.taccapis.v2.systems.models.system.System
Model of a Tapis system history record
-
SEARCH_ARGS
= [('_links', <class 'dict'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('id', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('status', <class 'str'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('created', 'datetime', 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('createdBy', <class 'str'>, 1.5, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('description', <class 'str'>, 1, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False)]¶
-
-
class
tapis_cli.commands.taccapis.v2.systems.models.system_queue.
SystemQueue
¶ Bases:
tapis_cli.commands.taccapis.v2.systems.models.system.System
Model of a Tapis system virtual queue
-
SEARCH_ARGS
= [('_links', <class 'dict'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('id', <class 'str'>, 1.5, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('name', <class 'str'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('mappedName', <class 'str'>, 1, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('description', <class 'str'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('default', <class 'bool'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('maxJobs', <class 'int'>, 1, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('maxUserJobs', <class 'int'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('maxNodes', <class 'int'>, 1.5, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('maxProcessorsPerNode', <class 'int'>, 1.5, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('maxMemoryPerNode', <class 'float'>, 1.5, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('maxRequestedTime', <class 'str'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('customDirectives', <class 'str'>, 1.5, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('load', <class 'str'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False)]¶
-
-
class
tapis_cli.commands.taccapis.v2.systems.models.system_queue_load.
SystemQueueLoad
¶ Bases:
tapis_cli.commands.taccapis.v2.systems.models.system.System
Model of the load on a Tapis system virtual queue
-
SEARCH_ARGS
= [('active', <class 'int'>, 1, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('backlogged', <class 'int'>, 1, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('pending', <class 'int'>, 1, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('paused', <class 'int'>, 1, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('processingInputs', <class 'int'>, 1, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('stagingInputs', <class 'int'>, 1, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('staging', <class 'int'>, 1, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('submitting', <class 'int'>, 1, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('queued', <class 'int'>, 1, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('running', <class 'int'>, 1, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('cleaningUp', <class 'int'>, 1, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('archiving', <class 'int'>, 1, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False)]¶
-
-
class
tapis_cli.commands.taccapis.v2.systems.models.system_role.
SystemRole
¶ Bases:
tapis_cli.commands.taccapis.v2.systems.models.system.System
Model of a Tapis system role
-
NAMES
= ['GUEST', 'USER', 'PUBLISHER', 'ADMIN', 'OWNER']¶
-
SEARCH_ARGS
= [('_links', <class 'dict'>, 2, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, False), ('username', <class 'str'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True), ('role', <class 'str'>, 0, ['eq', 'neq', 'start', 'end', 'like'], 'eq', None, None, True)]¶
-
-
class
tapis_cli.commands.taccapis.v2.systems.create.
SystemsCreate
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.systems.formatters.SystemsFormatOne
,tapis_cli.clients.services.mixins.UploadJSONTemplate
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Create a new System'¶
-
LEGACY_COMMMAND_STRING
= 'systems-addupdate'¶
-
VERBOSITY
= 2¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
update_json_creds
(parsed_args) → None¶ Updates system login and storage credentials in attr json_file_contents with command line arguments from parsed_args.
-
-
class
tapis_cli.commands.taccapis.v2.systems.default_set.
SystemsDefaultSet
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.systems.formatters.SystemsFormatOne
,tapis_cli.clients.services.mixins.ServiceIdentifier
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Set a Tapis System to user (or global) default'¶
-
LEGACY_COMMMAND_STRING
= 'systems-setdefault'¶
-
VERBOSITY
= 1¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.systems.default_unset.
SystemsDefaultUnset
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.systems.formatters.SystemsFormatOne
,tapis_cli.clients.services.mixins.ServiceIdentifier
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= "Unset a Tapis System as the user's (or global) default"¶
-
LEGACY_COMMMAND_STRING
= 'systems-unsetdefault'¶
-
VERBOSITY
= 1¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.systems.disable.
SystemsDisable
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.systems.formatters.SystemsFormatOne
,tapis_cli.clients.services.mixins.ServiceIdentifier
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Remove a System from active use'¶
-
LEGACY_COMMMAND_STRING
= 'systems-disable'¶
-
VERBOSITY
= 1¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.systems.enable.
SystemsEnable
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.systems.formatters.SystemsFormatOne
,tapis_cli.clients.services.mixins.ServiceIdentifier
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Return a disabled System to active use'¶
-
LEGACY_COMMMAND_STRING
= 'systems-enable'¶
-
VERBOSITY
= 1¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
Formatters customized for system records and listings
-
class
tapis_cli.commands.taccapis.v2.systems.formatters.
SystemsFormatOne
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.systems.formatters.SystemsBase
,tapis_cli.commands.taccapis.formatters.TaccApisFormatOne
-
class
tapis_cli.commands.taccapis.v2.systems.formatters.
SystemsFormatMany
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.systems.formatters.SystemsBase
,tapis_cli.commands.taccapis.formatters.TaccApisFormatMany
-
class
tapis_cli.commands.taccapis.v2.systems.formatters.
SystemsHistoryFormatMany
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.systems.formatters.SystemsBase
,tapis_cli.commands.taccapis.formatters.TaccApisFormatMany
-
tapis_cli.commands.taccapis.v2.systems.helpers.
default_execution_system
(agave, public_only=False)¶ Determines a default execution system for the current user
Resolves private default, followed by public default, or None
-
tapis_cli.commands.taccapis.v2.systems.helpers.
default_storage_system
(agave, public_only=False)¶ Determines a default storage system for the current user
Resolves private default, followed by public default, or None
-
class
tapis_cli.commands.taccapis.v2.systems.history.
SystemsHistory
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.systems.formatters.SystemsHistoryFormatMany
,tapis_cli.clients.services.mixins.ServiceIdentifier
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Show history for a System'¶
-
LEGACY_COMMMAND_STRING
= 'systems-history'¶
-
VERBOSITY
= 1¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.commands.taccapis.v2.systems.list.
SystemsList
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.systems.formatters.SystemsFormatMany
-
EXTRA_VERBOSITY
= 1¶
-
HELP_STRING
= 'List available Systems'¶
-
LEGACY_COMMMAND_STRING
= 'systems-list'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.commands.taccapis.v2.systems.publish.
SystemsPublish
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.systems.formatters.SystemsFormatOne
,tapis_cli.clients.services.mixins.ServiceIdentifier
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Publish a System for general use'¶
-
LEGACY_COMMMAND_STRING
= 'systems-publish'¶
-
VERBOSITY
= 1¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.systems.queues_list.
SystemsQueuesList
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.systems.formatters.SystemsFormatMany
,tapis_cli.clients.services.mixins.ServiceIdentifier
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'List virtual queues on a System'¶
-
LEGACY_COMMMAND_STRING
= 'systems-queues-list'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.commands.taccapis.v2.systems.roles_drop.
SystemsRolesDrop
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.systems.formatters.SystemsFormatMany
,tapis_cli.clients.services.mixins.ServiceIdentifier
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Drop all granted roles from a System'¶
-
LEGACY_COMMMAND_STRING
= 'systems-roles-delete'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.commands.taccapis.v2.systems.roles_grant.
SystemsRolesGrant
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.systems.formatters.SystemsFormatOne
,tapis_cli.clients.services.mixins.ServiceIdentifier
,tapis_cli.clients.services.mixins.Username
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Grant a user role on a System'¶
-
LEGACY_COMMMAND_STRING
= 'systems-roles-addupdate'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.systems.roles_list.
SystemsRolesList
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.systems.formatters.SystemsFormatMany
,tapis_cli.clients.services.mixins.ServiceIdentifier
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'List user roles on a System'¶
-
LEGACY_COMMMAND_STRING
= 'systems-roles-list'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.commands.taccapis.v2.systems.roles_revoke.
SystemsRolesRevoke
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.systems.formatters.SystemsFormatOne
,tapis_cli.clients.services.mixins.ServiceIdentifier
,tapis_cli.clients.services.mixins.Username
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Revoke a user role from a System'¶
-
LEGACY_COMMMAND_STRING
= 'systems-roles-addupdate'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.systems.roles_show.
SystemsRolesShow
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.systems.formatters.SystemsFormatOne
,tapis_cli.clients.services.mixins.ServiceIdentifier
,tapis_cli.clients.services.mixins.Username
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Show roles on a System for the specified User'¶
-
LEGACY_COMMMAND_STRING
= 'systems-roles-list'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.systems.search.
SystemsSearch
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.systems.formatters.SystemsFormatMany
,tapis_cli.commands.taccapis.searchable.SearchableCommand
-
EXTRA_VERBOSITY
= 1¶
-
HELP_STRING
= 'Search available Systems'¶
-
LEGACY_COMMMAND_STRING
= 'systems-search'¶
-
VERBOSITY
= 0¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
-
class
tapis_cli.commands.taccapis.v2.systems.show.
SystemsShow
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.systems.formatters.SystemsFormatOne
,tapis_cli.clients.services.mixins.ServiceIdentifier
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Show details of a System'¶
-
LEGACY_COMMMAND_STRING
= 'systems-list'¶
-
VERBOSITY
= 2¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.systems.status.
SystemsStatus
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.systems.show.SystemsShow
Show status of a System
-
EXTRA_VERBOSITY
= 0¶
-
HELP_STRING
= 'Show status of a System'¶
-
LEGACY_COMMMAND_STRING
= 'systems-status'¶
-
VERBOSITY
= 0¶
-
-
class
tapis_cli.commands.taccapis.v2.systems.unpublish.
SystemsUnpublish
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.systems.formatters.SystemsFormatOne
,tapis_cli.clients.services.mixins.ServiceIdentifier
-
EXTRA_VERBOSITY
= 2¶
-
HELP_STRING
= 'Unpublish a public System'¶
-
LEGACY_COMMMAND_STRING
= 'systems-unpublish'¶
-
VERBOSITY
= 1¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.commands.taccapis.v2.systems.update.
SystemsUpdate
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.commands.taccapis.v2.systems.create.SystemsCreate
,tapis_cli.clients.services.mixins.ServiceIdentifier
-
HELP_STRING
= 'Update an existing System'¶
-
LEGACY_COMMMAND_STRING
= 'systems-addupdate'¶
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
UUID service commands
TACC API commands referencing /v3
-
class
tapis_cli.commands.taccapis.formatters.
TaccApisCommandBase
¶ Bases:
tapis_cli.clients.services.taccapis.v2.base.TaccApisCommandBase
,tapis_cli.commands.taccapis.searchable.SearchableCommand
-
class
tapis_cli.commands.taccapis.formatters.
TaccApisFormatOne
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.clients.services.taccapis.v2.format_one.TaccApisFormatOne
-
class
tapis_cli.commands.taccapis.formatters.
TaccApisFormatMany
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.clients.services.taccapis.v2.format_many.TaccApisFormatMany
-
class
tapis_cli.commands.taccapis.formatters.
TaccApisFormatOneNoBearer
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.clients.services.taccapis.v2.format_one.TaccApisFormatOneNoBearer
-
class
tapis_cli.commands.taccapis.formatters.
TaccApisFormatManyUnlimited
(app, app_args, cmd_name=None)¶ Bases:
tapis_cli.clients.services.taccapis.v2.format_many.TaccApisFormatManyUnlimited
-
class
tapis_cli.commands.taccapis.searchable.
SearchableCommand
¶ Bases:
object
Manages population of the search arguments option group
-
extend_parser
(parser, class_name)¶ Adds a named argument to parser for each searchable argument
Help for each argument is displayed in the special argument group
-
render_headers
(tapis_entity_class, parsed_args)¶ Returns headers from a TapisModel based on current verbosity level
-
search_args
= {}¶
-
tapis_cli.hashcache package¶
Extends Python hashing to support memoization.
Extends Python’s hashing support to support memoizing and serialization of functions with complex parameters and/or returns.
-
tapis_cli.hashcache.
lru_cache
(maxsize=128, typed=False)¶ Least-recently-used cache decorator.
If maxsize is set to None, the LRU features are disabled and the cache can grow without bound.
If typed is True, arguments of different types will be cached separately. For example, f(3.0) and f(3) will be treated as distinct calls with distinct results.
Arguments to the cached function must be hashable.
View the cache statistics named tuple (hits, misses, maxsize, currsize) with f.cache_info(). Clear the cache and statistics with f.cache_clear(). Access the underlying function with f.__wrapped__.
See: http://en.wikipedia.org/wiki/Cache_replacement_policies#Least_recently_used_(LRU)
Submodules¶
tapis_cli.hashcache.jsoncache module¶
A memoizing cache built on the Python json
module
-
tapis_cli.hashcache.jsoncache.
mcache
(cache)¶
tapis_cli.hashcache.lru_py27 module¶
Backport of Python 3.3 lru_cache to Python 2.7
-
tapis_cli.hashcache.lru_py27.
lru_cache
(maxsize=100, typed=False)¶ Least-recently-used cache decorator.
If maxsize is set to None, the LRU features are disabled and the cache can grow without bound.
If typed is True, arguments of different types will be cached separately. For example, f(3.0) and f(3) will be treated as distinct calls with distinct results.
Arguments to the cached function must be hashable.
View the cache statistics named tuple (hits, misses, maxsize, currsize) with f.cache_info(). Clear the cache and statistics with f.cache_clear(). Access the underlying function with f.__wrapped__.
See: http://en.wikipedia.org/wiki/Cache_algorithms#Least_Recently_Used
tapis_cli.mocks package¶
Mockup formatters
-
class
tapis_cli.mocks.
FormatOne
(app, app_args, cmd_name=None)¶ Bases:
cliff.show.ShowOne
Generic Record Display
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Return a two-part tuple with a tuple of column names and a tuple of values.
-
-
class
tapis_cli.mocks.
FormatMany
(app, app_args, cmd_name=None)¶ Bases:
cliff.lister.Lister
Generic Records Listing
-
get_parser
(prog_name)¶ Return an
argparse.ArgumentParser
.
-
take_action
(parsed_args)¶ Run command.
Return a tuple containing the column names and an iterable containing the data to be listed.
-
tapis_cli.project_ini package¶
Supports the .ini format used to configure app and actor projects
Subpackages¶
-
tapis_cli.project_ini.mixins.
ActorIniArgs
(ParserExtender)¶
-
tapis_cli.project_ini.mixins.
AppIniArgs
(ParserExtender)¶
-
tapis_cli.project_ini.mixins.
DockerIniArgs
(ParserExtender)¶
-
tapis_cli.project_ini.mixins.
GitIniArgs
(ParserExtender)¶
-
tapis_cli.project_ini.mixins.
JobIniArgs
(ParserExtender)¶
-
tapis_cli.project_ini.mixins.
SystemIniArgs
(ParserExtender)¶
-
class
tapis_cli.project_ini.schema.
BaseSchema
¶ Bases:
object
-
PROPERTIES
= [('field', 'default', <class 'str'>, 'Field description')]¶
-
get_keys
()¶
-
get_section
()¶
-
parser_args
()¶
-
section
= 'DEFAULT'¶
-
-
class
tapis_cli.project_ini.schema.actor.
Schema
¶ Bases:
tapis_cli.project_ini.schema.BaseSchema
-
PROPERTIES
= [('name', '', <class 'str'>, 'Tapis actor name'), ('description', '', <class 'str'>, 'Tapis actor name description'), ('alias', '', <class 'str'>, 'Tapis actor alias'), ('stateless', True, <class 'bool'>, 'Whether actor is stateless'), ('hint', '', <class 'str'>, 'Scaling hint for actor'), ('privileged', False, <class 'bool'>, 'Whether actor runs with advanced capabilities'), ('use_uid', True, <class 'bool'>, 'Whether actor should run as the owner UNIX ID'), ('workers', 1, <class 'int'>, 'Default number of workers for the actor')]¶
-
-
class
tapis_cli.project_ini.schema.app.
Schema
¶ Bases:
tapis_cli.project_ini.schema.BaseSchema
-
PROPERTIES
= [('name', '', <class 'str'>, 'Tapis app name'), ('version', '', <class 'str'>, 'Tapis app semantic version'), ('bundle', '', <class 'str'>, 'Local path containing app assets'), ('deployment_path', '', <class 'str'>, 'Remote path holding app assets'), ('deployment_system', '', <class 'str'>, 'Storage system holding app assets'), ('execution_system', '', <class 'str'>, 'Execution system for Tapis app')]¶
-
-
class
tapis_cli.project_ini.schema.docker.
Schema
¶ Bases:
tapis_cli.project_ini.schema.BaseSchema
-
PROPERTIES
= [('dockerfile', 'Dockerfile', <class 'str'>, 'Dockerfile to build current project'), ('username', '', <class 'str'>, 'Container registry username'), ('group', '', <class 'str'>, 'Container registry group'), ('registry', '', <class 'str'>, 'Container registry URL'), ('repo', '', <class 'str'>, 'Container repo name'), ('tag', '', <class 'str'>, 'Container repo tag'), ('build_args', '', <class 'str'>, 'Container build arguments'), ('use_commit_hash', True, <class 'bool'>, 'Use commit hash for tag if available')]¶
-
-
class
tapis_cli.project_ini.schema.env.
Schema
¶ Bases:
tapis_cli.project_ini.schema.BaseSchema
-
PROPERTIES
= []¶
-
-
class
tapis_cli.project_ini.schema.git.
Schema
¶ Bases:
tapis_cli.project_ini.schema.BaseSchema
-
PROPERTIES
= [('branch', 'master', <class 'str'>, 'Current git branch'), ('remote', '', <class 'str'>, 'Current git remote')]¶
-
-
class
tapis_cli.project_ini.schema.job.
Schema
¶ Bases:
tapis_cli.project_ini.schema.BaseSchema
-
PROPERTIES
= []¶
-
-
class
tapis_cli.project_ini.schema.system.
Schema
¶ Bases:
tapis_cli.project_ini.schema.BaseSchema
-
PROPERTIES
= [('ssh_private_key', '~/.ssh/id_rsa', <class 'str'>, 'Current user SSH private key'), ('ssh_public_key', '~/.ssh/id_rsa.pub', <class 'str'>, 'Current user SSH public key')]¶
-
Submodules¶
tapis_cli.project_ini.config_file module¶
-
tapis_cli.project_ini.config_file.
load_config
(filename=None, as_dict=False)¶
-
tapis_cli.project_ini.config_file.
save_config
(config, filename='project.ini')¶
-
tapis_cli.project_ini.config_file.
config_path
(filename=None, working_directory=None)¶
tapis_cli.project_ini.templating module¶
-
tapis_cli.project_ini.templating.
key_values
(filename=None, as_dict=True)¶ Load project config file into a dict for template remdering
Keyword Arguments: filename (str, optional) – Path to a project config file. Defaults to $PWD/project.ini Returns: Variables and names to support Jinja template rendering Return type: dict
-
tapis_cli.project_ini.templating.
generate_template_ini
(passed_vals=None)¶
-
tapis_cli.project_ini.templating.
update_config
(config={}, values_dict=None, add_keys=False)¶ Recursively merge a dict onto a ConfigParser
This is used to initialize the parser with passed values, like one might do when setting up a project for the first time.
tapis_cli.search package¶
Methods and classes for building CLI-driven search and filtering
Submodules¶
tapis_cli.search.argdef module¶
-
class
tapis_cli.search.argdef.
Argdef
(param_name, param_type, verbosity, mod_types, default_mod, choices, override_option, searchable)¶ Bases:
tuple
-
choices
¶ Alias for field number 5
-
default_mod
¶ Alias for field number 4
-
mod_types
¶ Alias for field number 3
-
override_option
¶ Alias for field number 6
-
param_name
¶ Alias for field number 0
-
param_type
¶ Alias for field number 1
-
searchable
¶ Alias for field number 7
-
verbosity
¶ Alias for field number 2
-
-
tapis_cli.search.argdef.
optionize
(fieldKeyName)¶ Transforms a string into an argparse option
-
tapis_cli.search.argdef.
propertize
(fieldKeyName)¶ Transforms a string into an Python parameter name
-
tapis_cli.search.argdef.
tapisize
(fieldKeyName)¶ Transforms a string into a Tapis query parameter
-
tapis_cli.search.argdef.
spinal_to_camel
(optionName)¶
tapis_cli.search.argmod module¶
Enumeration of valid modifiers for search arguments
tapis_cli.search.argtype module¶
Enumeration of valid types for search arguments
-
tapis_cli.search.argtype.
param_type_repr
(param_type)¶
-
tapis_cli.search.argtype.
format_allows_param_type
(argdef, formatter='table')¶ Filter (mostly structured) un-formattable arguments
This method implements a handful fo empirically-determined policies to filter out parameter types that cannot be easily displayed in flattened formats like ‘table’ or ‘value’.
tapis_cli.search.arrowspan module¶
-
class
tapis_cli.search.arrowspan.
ArrowSpan
(year: int, month: int, day: int, hour: int = 0, minute: int = 0, second: int = 0, microsecond: int = 0, tzinfo: Union[datetime.tzinfo, str, None] = None, **kwargs)¶ Bases:
arrow.arrow.Arrow
Subclass of Arrow with upgraded span() capability used to generate MongoDB date ranges for queries
-
DAY
= 'day'¶
-
HOUR
= 'hour'¶
-
MINUTE
= 'minute'¶
-
MONTH
= 'month'¶
-
SPANS
= ['year', 'month', 'week', 'day', 'hour', 'minute']¶
-
WEEK
= 'week'¶
-
YEAR
= 'year'¶
-
default_span
= 'day'¶
-
original_value
= None¶
-
setup
(value)¶
-
smart_ceil
(span_value=None)¶
-
smart_floor
(span_value=None)¶
-
smart_span
(span_value=None)¶
-
tapis_cli.search.mongoql module¶
-
class
tapis_cli.search.mongoql.
SearchMongoQuery
(field_type=<class 'str'>, **kwargs)¶ Bases:
tapis_cli.search.searcharg.SearchArg
-
query_after
(value)¶
-
query_before
(value)¶
-
query_end
(value)¶
-
query_eq
(value)¶
-
query_gt
(value)¶
-
query_gte
(value)¶
-
query_in
(values)¶
-
query_like
(value)¶
-
query_lt
(value)¶
-
query_lte
(value)¶
-
query_nend
(value)¶
-
query_neq
(value)¶
-
query_nin
(values)¶
-
query_nlike
(value)¶
-
query_nstart
(value)¶
-
query_on
(value)¶
-
query_start
(value)¶
-
tapis_cli.search.param module¶
-
class
tapis_cli.search.param.
SearchWebParam
(field_type=<class 'str'>, **kwargs)¶ Bases:
tapis_cli.search.searcharg.SearchArg
Renders param.mod=value for passing to a web service
-
query_after
(value)¶
-
query_before
(value)¶
-
query_end
(value)¶
-
query_eq
(value)¶
-
query_gt
(value)¶
-
query_gte
(value)¶
-
query_in
(values)¶
-
query_like
(value)¶
-
query_lt
(value)¶
-
query_lte
(value)¶
-
query_neq
(value)¶
-
query_nin
(values)¶
-
query_nlike
(value)¶
-
query_on
(value)¶
-
query_start
(value)¶
-
-
class
tapis_cli.search.param.
SearchWebParamEqualsOnly
(field_type=<class 'str'>, **kwargs)¶ Bases:
tapis_cli.search.searcharg.SearchArg
Renders param=value for passing to a web service
-
query_eq
(value)¶
-
tapis_cli.search.searcharg module¶
-
class
tapis_cli.search.searcharg.
Argument
(argument, attributes)¶ Bases:
tuple
-
argument
¶ Alias for field number 0
-
attributes
¶ Alias for field number 1
-
-
class
tapis_cli.search.searcharg.
SearchArg
(field_type=<class 'str'>, **kwargs)¶ Bases:
object
Uses metadata to generate argparse and param views of a search term
-
PARAMS
= [('argument', False, 'argument', 'str', None), ('field', False, 'field', 'str', None), ('destination', False, 'destination', None, None), ('choices', False, 'choices', None, None), ('mods', False, 'mods', 'list', ['eq']), ('default_mod', False, 'default_mod', 'str', 'eq')]¶
-
cast
(value, field_type=None)¶ Cast a value into a defined Python type
-
get_argparse
()¶ Generate an argparse argument for a MongoDB collection field
-
get_param
(values)¶ Render a query from the argument’s metadata and value(s)
-
classmethod
parse_datetime
(value, span=None)¶ Transform a human date or time string to a Python UTC datetime
-
to_values
(value, delim=', ')¶ Transform a value into a list of values
-
tapis_cli.settings package¶
Provides a consistent environment- and file-driven approach to run-time application configuration.
-
tapis_cli.settings.
all_settings
()¶ Returns name and value of all properties resembling settings
Subpackages¶
Submodules¶
tapis_cli.settings.auth module¶
tapis_cli.settings.config module¶
Provides config file loading and management
-
tapis_cli.settings.config.
find_config
(filename='.env')¶ Wrapper for find_dotenv that searches module path, CWD, and HOME
-
tapis_cli.settings.config.
load_config
(filename='.env', override=False)¶ Wrapper for load_env that considers module path, CWD, and HOME
tapis_cli.settings.debug module¶
tapis_cli.settings.display module¶
tapis_cli.settings.gitserver module¶
Git server settings
tapis_cli.settings.google module¶
Google Analytics settings
tapis_cli.settings.helpers module¶
-
tapis_cli.settings.helpers.
ns_os_environ_get
(env_var_name, default, prefix='TAPIS_CLI')¶
-
tapis_cli.settings.helpers.
fix_assets_path
(path)¶
-
tapis_cli.settings.helpers.
array_from_string
(s)¶
-
tapis_cli.settings.helpers.
set_from_string
(s)¶
-
tapis_cli.settings.helpers.
parse_boolean
(s)¶ Takes a string and returns the equivalent as a boolean value.
-
tapis_cli.settings.helpers.
int_or_none
(value)¶
-
tapis_cli.settings.helpers.
os_environ_get_none
(env_var_name, default=None)¶
tapis_cli.settings.jupyter module¶
TACC Jupyter-specific CLI settings
tapis_cli.settings.organization module¶
tapis_cli.settings.projects module¶
Project configuration and build settings
tapis_cli.settings.redact module¶
Functions supporting redaction of private settings
-
tapis_cli.settings.redact.
key_is_private
(key)¶ Determine if a key has a name indicating it is private
-
tapis_cli.settings.redact.
auto_redact
(key, value)¶ Automatically redact values of private settings
-
tapis_cli.settings.redact.
redact
(value)¶
tapis_cli.settings.registry module¶
Container registry settings
tapis_cli.settings.ssh module¶
tapis_cli.templating package¶
Supports Jinja-based templating across the CLI
-
tapis_cli.templating.
key_values
(passed_vals=None)¶ Create a dict that can be used to render a Jinja template
-
tapis_cli.templating.
render_template
(doc_source, passed_vals=None, allow_undefined=True)¶ Render a string template using extant variables
Parameters: doc_source (str) – Template string
Keyword Arguments: Returns: Rendered string
Return type:
-
tapis_cli.templating.
dot_notation
(sourcedict, replacelevel=None)¶ Transform a nested configparser option into section.option form
Subpackages¶
Submodules¶
Submodules¶
tapis_cli.constants module¶
Constant values and help strings
tapis_cli.display module¶
Constants, classes, and helpers pertaining to results display
-
class
tapis_cli.display.
Verbosity
¶ Bases:
object
-
BRIEF
= 0¶
-
BRIEF_VERBOSE
= 0.5¶
-
EXPANDED
= 3¶
-
EXPANDED_VERBOSE
= 3¶
-
LISTING
= 1¶
-
LISTING_VERBOSE
= 1.5¶
-
RECORD
= 2¶
-
RECORD_VERBOSE
= 2.5¶
-
VERBOSE
= 1¶
-
VERY_VERBOSE
= 3¶
-
-
tapis_cli.display.
abbreviate
(value)¶
tapis_cli.githelper module¶
Functions for inspecting Git repository details at runtime
-
tapis_cli.githelper.
get_git_revision_hash
()¶
-
tapis_cli.githelper.
get_git_revision_short_hash
()¶
-
tapis_cli.githelper.
get_git_remote
(name='origin')¶
tapis_cli.main module¶
-
class
tapis_cli.main.
Tapis_App
¶ Bases:
cliff.app.App
-
build_option_parser
(description, version)¶ Return an argparse option parser for this application.
Subclasses may override this method to extend the parser with more global options.
Parameters: - description – full description of the application
- version – version number for the application
- argparse_kwargs – extra keyword argument passed to the ArgumentParser constructor
-
configure_logging
()¶ Create logging handlers for any log output.
-
initialize_app
(argv)¶ Hook for subclasses to take global initialization action after the arguments are parsed but before a command is run. Invoked only once, even in interactive mode.
Parameters: argv – List of arguments, including the subcommand to run. Empty for interactive mode.
-
prepare_to_run_command
(cmd)¶ Prepares to run the command
Checks if the minimal parameters are provided and creates the client interface. This is inherited from the framework.
-
-
tapis_cli.main.
main
(argv=['-T', '-E', '-b', 'readthedocssinglehtmllocalmedia', '-d', '_build/doctrees', '-D', 'language=en', '.', '_build/localmedia'])¶
tapis_cli.user_agent module¶
-
tapis_cli.user_agent.
user_agent
()¶ Generate a custom user-agent string for Tapis CLI
tapis_cli.utils module¶
Public, low-dependency helper functions
-
tapis_cli.utils.
abspath
(file_path, root='/')¶ Safely combine a relative (which might not actually be relative) and base path.
Parameters: Returns: Processed file_path
Return type:
-
tapis_cli.utils.
command_set
()¶ Discover and return the full complement of commands
-
tapis_cli.utils.
current_time
()¶ Current UTC time :returns: A
datetime
object rounded to millisecond precision
-
tapis_cli.utils.
datestring_to_epoch
(date_string)¶ Convert a date string to UNIX epoch
-
tapis_cli.utils.
datetime_to_human
(date_obj)¶ Convert a Python datetime object to a human-friendly string
-
tapis_cli.utils.
datetime_to_isodate
(date_obj)¶ Convert a Python datetime object to ISO-8601
-
tapis_cli.utils.
dynamic_import
(module, package=None)¶ Dynamically import a module by name at runtime
Parameters: Returns: The imported module
Return type:
-
tapis_cli.utils.
fg_blue
(message)¶ Blue text
-
tapis_cli.utils.
fg_bright
(message)¶ Bright text
-
tapis_cli.utils.
fg_dim
(message)¶ Dim text
-
tapis_cli.utils.
fg_green
(message)¶ Green text
-
tapis_cli.utils.
fg_red
(message)¶ Red text
-
tapis_cli.utils.
fmtcols
(mylist, cols)¶ Generate a string of tab and newline delimited columns from a list
-
tapis_cli.utils.
fnmatches
(file_name, patterns=None)¶ Check if a filename string matches a specified patterns
Uses UNIX-style file wildcards
-
tapis_cli.utils.
get_hostname
()¶ Returns the fully-qualified domain name for current localhost
-
tapis_cli.utils.
get_local_username
()¶ Returns local system username
-
tapis_cli.utils.
get_public_ip
()¶ Returns localhost’s public IP address (or NAT gateway address)
-
tapis_cli.utils.
humanize_bytes
(bytesize, precision=2)¶ Render byte counts into human-scale formats
-
tapis_cli.utils.
import_submodules
(module, package=None, exclude=[])¶ Dynamically discover and import submodules at runtime
-
tapis_cli.utils.
makedirs
(file_path, exist_ok=True)¶ Python2-compatible makedirs with exist_ok support
-
tapis_cli.utils.
microseconds
()¶ Current time in microseconds as
int
-
tapis_cli.utils.
milliseconds
()¶ Current time in milliseconds as
int
-
tapis_cli.utils.
nanoseconds
()¶ Current time in nanoseconds as
int
-
tapis_cli.utils.
normalize
(file_path)¶ Trim leading slash or slashes from a path
Parameters: file_path (str) – Path to normalize Returns: Normalized file_path Return type: str
-
tapis_cli.utils.
normpath
(file_path)¶ Collapse duplicate leading slashes and resolve relative references in a path
Parameters: file_path (str) – Path to process Returns: Processed file_path Return type: str
-
tapis_cli.utils.
nrlist
(sequence)¶ Python 2.7 compatible list deduplication
-
tapis_cli.utils.
num
(n)¶
-
tapis_cli.utils.
parse_uri
(url)¶
-
tapis_cli.utils.
print_stderr
(message)¶ Print to STDERR without using logging
-
tapis_cli.utils.
prompt
(body, default=None, secret=False, allow_empty=True)¶ Prompt user for input
-
tapis_cli.utils.
prompt_accept
(body, default='y', exit_reject=True)¶
-
tapis_cli.utils.
prompt_boolean
(body, default=True)¶
-
tapis_cli.utils.
redact
(value)¶
-
tapis_cli.utils.
relpath
(file_path, root='/')¶ Returns path relative to start
-
tapis_cli.utils.
reserved_environment_vars
()¶
-
tapis_cli.utils.
seconds
()¶ Current time in seconds as
int
-
tapis_cli.utils.
serializable
(obj, permissive=True)¶ Check that a Python object is JSON serializable
-
tapis_cli.utils.
slugify
(text, separator='_')¶ Implements a stable slugify function over python-slugify, unicode-slugify, or awesome-slugify
-
tapis_cli.utils.
split_string
(inp, separator=', ')¶ Split and de-whitespace delimited string
-
tapis_cli.utils.
splitall
(path)¶ Splits a path into all of its parts
-
tapis_cli.utils.
timestamp
()¶ Returns Zulu-formatted UTC time
-
tapis_cli.utils.
to_slug
(inp, lowercase=True)¶ Implements Aloe Slugify.to_slug
-
tapis_cli.utils.
ts_to_date
(date_string)¶ Convert a datetime string (UTC) into a pretty date string
-
tapis_cli.utils.
ts_to_isodate
(date_string, include_time=False)¶ Convert a datetime string (UTC) into a date string in ISO format