Skip to main content

stackdio-python-client

Build Status

The canonical Python client and cli for the stackd.io API

Overview

This is a small set of tools for internal use of stackd.io. After cloning this repo, you should be able to quickly get up and running with your own stacks.

Advanced usage like creating custom blueprints or writing your own formulas is beyond the scope of this.

Installation

We recommend using virtualenv via virtualenvwrapper to install this in a virtualenv. If you consider yourself a knowledgeable Pythonista, feel free to install this however you’d like, but this document will assume that you are using virtualenvwrapper. See the full virtualenvwrapper docs for details, but in short you can install it on most systems like:

pip install virtualenvwrapper

Once you’ve got it, installing this tool goes something like:

mkvirtualenv stackdio-client

pip install stackdio

You’ll see a few things scrolling by, but should be set after this. To use this later, you’ll need to re-activate the virtualenv like:

workon stackdio-client

Whenever it’s activated, stackdio-cli should be on your path.

First Use

The first time that you fire up stackdio-cli, you’ll need to run the configure command. This will prompt you for your LDAP username and password, and store them securely in your OS keychain for later use. It will import some standard formula, and create a few commonly used blueprints.

$ stackdio-cli
None @ None
> configure
# YOU WILL BE WALKED THROUGH A SIMPLE SET OF QUESTIONS

Stack Operations

All of the following assume that you have run initial_setup successfully. To launch the cli, simply type:

$ stackdio-cli

You can run help at any point to see available commands. For details on a specific command you can run help COMMAND, e.g. help stacks. The rest of these commands assume you have the cli running.

Launching Stacks

Stacks are launched from blueprints. To launch the 3 node HBase stack that’s included with this you do:

> stacks launch cdh450-ipa-3 MYSTACKNAME

Deleting Stacks

When you are done with a stack you can delete it. This is destructive and cannot be recovered from, so think carefully before deleting your stack!

> stacks delete STACK_NAME

Alternatively you can terminate a stack which will terminate all instances, but leave the stack definition in place.

Provisioning Stacks

Occassionally something will go wrong when launching your stack, e.g. network connections may flake out causing some package installations to fail. If this happens you can manually provision your stack, causing everything to be brought back up to date:

> stacks provision STACK_NAME

Stack Info

Once you have launched a stack, you can then monitor the status of it like:

> stacks history STACK_NAME

This displays the top level information for a stack. You can supply additional arguments to pull back additional info about a stack. For example, to get a list of FQDNs (aka hostnames) for a stack:

> stacks hostnames STACK_NAME

There are various logs available that you can access with the stacks logs command.

What’s Next?

For anything not covered by this tool, you’ll need to use the stackdio-server web UI or API directly. For more information on that, check out http://docs.stackd.io.

Metadata

Release files for stackdio 0.7.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for stackdio 0.7.3
File Size Uploaded Provenance Actions
stackdio-0.7.3.tar.gz 22.2 kB Without provenance Details for stackdio-0.7.3.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for stackdio 0.7.3
File Interpreter ABI Platform Actions
stackdio-0.7.3-py2.py3-none-any.whl Python 2, Python 3 none any Details for stackdio-0.7.3-py2.py3-none-any.whl

Total release size: 58.4 kB

Release files / stackdio-0.7.3.tar.gz

Download URL stackdio-0.7.3.tar.gz
Size 22.2 kB
Tags Source
SHA-256 checksum
How to use checksums
13df0639d53b2cf8d784ef0764d6a67e155ec6442d5905db88f2e6a24d043420
BLAKE2b-256 checksum
How to use checksums
c3b953cd6c6d44883e1ee797bd3b43f11dcd6c4985bad839aac7c96fb44b8caf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / stackdio-0.7.3-py2.py3-none-any.whl

Download URL stackdio-0.7.3-py2.py3-none-any.whl
Size 36.3 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
c2f0e81bc69bffdf0ba9f4aa38025a6373ed34440887f576e795523ae4cb16d2
BLAKE2b-256 checksum
How to use checksums
4a1453c6a4c64353b7174fbe4e897413a67373147def308a80435d4cde260151
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Security for stackdio 0.7.3

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page