Skip to content

eriksf/atmosphere-cli

develop
Switch branches/tags
Code
This branch is 81 commits ahead of cyverse:master.
Contribute

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Atmosphere CLI

Build Status GitHub version Documentation Status

The Atmosphere CLI is a command-line client written in Python (based on OpenStack's cliff framework) for Atmosphere. Atmosphere is an integrative, private, self-service cloud computing platform designed to provide easy access to preconfigured, frequently used analysis routines, relevant algorithms, and data sets in an available-on-demand environment designed to accommodate computationally and data-intensive bioinformatics tasks. It is currently in use on the CyVerse and Jetstream projects.

Getting Started

The Atmosphere CLI can be installed from PyPI using pip:

$ pip install atmosphere-cli

There are a few ways to get help. A listing of supported commands and global options can be shown with --help:

$ atmo --help

There is also a help command that can be used to get help for specific commands:

$ atmo help image list

(Optional) Install bash command line completion to get command hints by tabbing:

$ atmo complete >> ~/.bash_aliases
$ . ~/.bash_aliases  # add to ~/.bashrc or ~/.bash_profile to always load (Ubuntu distro's already load it)
$ atmo <tab>
allocation   group        identity     instance     project      size         volume
complete     help         image        maintenance  provider     version

Configuration

The Atmosphere CLI can be configured with environment variables or command-line options. The two required variables are ATMO_BASE_URL, the URL to the corresponding instance of Atmosphere, and ATMO_AUTH_TOKEN, the token needed for authorization. An authorization token can be created by logging into the web client and going to the user menu (upper right corner) and selecting Settings -> Advanced -> Personal Access Tokens. For instance:

export ATMO_BASE_URL="https://atmo.cyverse.org"
export ATMO_AUTH_TOKEN="xxxxxxxxxxxxxxxxxxxx"

A sample .env file is provided in the repo. The corresponding command-line options can also be used:

--atmo-base-url <URL>
--atmo-auth-token <TOKEN>

Contributing

To contribute to development and run the included tests:

# grab the repo
$ git clone https://github.com/eriksf/atmosphere-cli
$ cd atmosphere-cli

# install pipenv
$ pip install pipenv

# install atmosphere-cli
$ pipenv install --dev  # if multiple python versions installed, select with --python option

# setup environment
$ cp .env.sample .env  # edit ATMO_BASE_URL and ATMO_AUTH_URL as in Configuration section above

# load virtual environment
$ pipenv shell  # this also loads variables in .env to environment

License

See LICENSE.txt for license information.

Authors

About

Command-line interface to Atmosphere (https://www.cyverse.org/atmosphere).

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 76.9%
  • Gherkin 22.9%
  • Dockerfile 0.2%