Skip to main content

Skytap REST API access modules

Project description

https://img.shields.io/pypi/v/skytap.svg Documentation Travis build status Code Health Code coverage

Skytap is a set of modules that we use to manage aspects of our Skytap infrastructure here at Fulcrum Technologies, but are built and supported with public use in mind.

Usage

To use the module, you’ll need to create at least two environment variables:

SKYTAP_USER=kermit.frog@fulcrum.net
SKYTAP_TOKEN=79824879aeb2b34534e112d23a3c

Optionally, you can also add:

SKYTAP_LOG_LEVEL=20

This can be a number between 0-50 and corresponds to the logging module from Python:

  • DEBUG: 0

  • INFO: 10

  • WARNING: 20

  • ERROR: 30

  • CRITICAL: 50

An easy way to set these variables is to create a .skytap file in your home directory (~/.skytap) with the variables in there:

export SKYTAP_USER=kermit.frog@fulcrum.net
export SKYTAP_TOKEN=79824879aeb2b34534e112d23a3c

Then you can source the file:

source ~/.skytap

to load the variables, or add that same source command to your ~/.bash_profile or equivalent file to have it done automatically.

Via the command line

Most modules can be accessed directly from the command line to get simple information. This functionally returns the JSON from the Skytap API:

python -m skytap.Environments
python -m skytap.Users

You’ll get back a JSON for the request, something like:

[
  {
    "id": "12345",
    "url": "https://cloud.skytap.com/users/12345",
    "login_name": "kermit.frog@fulcrum.net",
    "first_name": "Kermit",
    "last_name": "The Frog",
    "title": "Master of Ceremonies",
    "email": "kermit.frog@fulcrum.net",
    "created_at": "2012-01-02T12:43:05-08:00",
    "deleted": false
  }
]

If you only want a one item returned instead of the full list, you can get that from the command line as well:

python -m skytap.Environments 12345
python -m skytap.Quotas svm_hours

Via Python script

To use this, simply import it:

import skytap

Then you can access the resource groups of interest.

A simple example:

import skytap
users = skytap.Users()
for u in users:
    print(u.name + ' : ' + u.email)

This can also help automate running and suspending VMs:

import skytap
envs = skytap.Environments()

envs[123456].suspend()  # or .suspend(True) if you want the script to wait.

Doing this will, by default, add a note to the environment of it’s action, so someone checking the environment can see why it’s not running.

Installation

Install this through pip:

pip install skytap

Contributor list

Contact us directly for questions, or you can reach Fulcrum Technologies on Twitter.

Project details


Download files

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

Source Distribution

skytap-1.3.1.tar.gz (64.6 kB view details)

Uploaded Source

File details

Details for the file skytap-1.3.1.tar.gz.

File metadata

  • Download URL: skytap-1.3.1.tar.gz
  • Upload date:
  • Size: 64.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for skytap-1.3.1.tar.gz
Algorithm Hash digest
SHA256 12e77b99eb4828e64f5da38ab00645bcd676b0c44651a1c2f7b19bae7bc04fcf
MD5 4420548109db4feb17ac3924e6031362
BLAKE2b-256 6703fc9859fe269a4250ea9723487e9f2e70a69431e213d0539d48a668ab08db

See more details on using hashes here.

Supported by

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