Package: python-cloudservers
This is a client for Rackspace’s Cloud Servers API. There’s a Python API (thecloudserversmodule), and a command-line script (cloudservers). Each
implements 100% of the Rackspace API.Full documentation is available.You’ll also probably want to readRackspace’s API guide(PDF) – the first
bit, at least – to get an idea of the concepts. Rackspace is doing the cloud
hosting thing a bit differently from Amazon, and if you get the concepts this
library should make more sense.Development takes place onGitHub. Bug reports and patches may be filed there.Contents:Command-line APIPython APIFAQWhat’s new?Command-line APIInstalling this package gets you a shell command,cloudservers, that you
can use to interact with Rackspace.You’ll need to provide your Rackspace username and API key. You can do this
with the--usernameand--apikeyparams, but it’s easier to just set
them as environment variables:export CLOUD_SERVERS_USERNAME=jacobian
export CLOUD_SERVERS_API_KEY=yadayadaYou’ll find complete documentation on the shell by runningcloudservers help:usage: cloudservers [--username USERNAME] [--apikey APIKEY] <subcommand> ...

Command-line interface to the Cloud Servers API.

Positional arguments:
  <subcommand>
    backup-schedule     Show or edit the backup schedule for a server.
    backup-schedule-delete
                        Delete the backup schedule for a server.
    boot                Boot a new server.
    delete              Immediately shut down and delete a server.
    flavor-list         Print a list of available 'flavors' (sizes of
                        servers).
    help                Display help about this program or one of its
                        subcommands.
    image-create        Create a new image by taking a snapshot of a running
                        server.
    image-delete        Delete an image.
    image-list          Print a list of available images to boot from.
    ip-share            Share an IP address from the given IP group onto a
                        server.
    ip-unshare          Stop sharing an given address with a server.
    ipgroup-create      Create a new IP group.
    ipgroup-delete      Delete an IP group.
    ipgroup-list        Show IP groups.
    ipgroup-show        Show details about a particular IP group.
    list                List active servers.
    reboot              Reboot a server.
    rebuild             Shutdown, re-image, and re-boot a server.
    rename              Rename a server.
    resize              Resize a server.
    resize-confirm      Confirm a previous resize.
    resize-revert       Revert a previous resize (and return to the previous
                        VM).
    root-password       Change the root password for a server.
    show                Show details about the given server.

Optional arguments:
  --username USERNAME   Defaults to env[CLOUD_SERVERS_USERNAME].
  --apikey APIKEY       Defaults to env[CLOUD_SERVERS_API_KEY].

See "cloudservers help COMMAND" for help on a specific command.Python APIThere’s also acomplete Python API.By way of a quick-start:>>> import cloudservers
>>> cs = cloudservers.CloudServers(USERNAME, API_KEY)
>>> cs.flavors.list()
[...]
>>> cs.servers.list()
[...]
>>> s = cs.servers.create(image=2, flavor=1, name='myserver')

... time passes ...

>>> s.reboot()

... time passes ...

>>> s.delete()FAQWhat’s wrong with libcloud?Nothing! However, as a cross-service binding it’s by definition lowest
common denominator; I needed access to the Rackspace-specific APIs (shared
IP groups, image snapshots, resizing, etc.). I also wanted a command-line
utility.What’s new?Seethe release notes.