OpenStack Image Management (Glance) Client
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
Go to file
Brian Waldon c530de6389
Basic get/list operations work
11 years ago
glanceclient Basic get/list operations work 11 years ago
tests Basic get/list operations work 11 years ago
tools Basic get/list operations work 11 years ago
.gitignore Basic get/list operations work 11 years ago
AUTHORS All the latest OpenStack hotness. 11 years ago
HACKING.rst Initial checkin for new CLI and client package 11 years ago
LICENSE Basic get/list operations work 11 years ago
MANIFEST.in Basic get/list operations work 11 years ago
README.rst Basic get/list operations work 11 years ago
openstack-common.conf All the latest OpenStack hotness. 11 years ago
run_tests.py Basic get/list operations work 11 years ago
run_tests.sh Basic get/list operations work 11 years ago
setup.cfg All the latest OpenStack hotness. 11 years ago
setup.py Basic get/list operations work 11 years ago
tox.ini All the latest OpenStack hotness. 11 years ago

README.rst

Python bindings to the OpenStack Glance API

This is a client for the OpenStack Glance API. There's a Python API (the glanceclient module), and a command-line script (glance). The Glance 2.0 API is still a moving target, so this module will remain in "Beta" status until the API is finalized and fully implemented.

Development takes place via the usual OpenStack processes as outlined in the OpenStack wiki. The master repository is on GitHub.

This code a fork of Rackspace's python-novaclient which is in turn a fork of Jacobian's python-cloudservers. The python-glanceclient is licensed under the Apache License like the rest of OpenStack.

Contents:

Python API

By way of a quick-start:

# use v2.0 auth with http://example.com:5000/v2.0")
>>> from glanceclient.v1 import client
>>> glance = client.Client(username=USERNAME, password=PASSWORD, tenant_name=TENANT, auth_url=KEYSTONE_URL)
>>> glance.images.list()
>>> image = glance.images.create(name="My Test Image")
>>> print image.status
'queued'
>>> image.upload(open('/tmp/myimage.iso', 'rb'))
>>> print image.status
'active'
>>> image_file = image.image_file
>>> with open('/tmp/copyimage.iso', 'wb') as f:
        for chunk in image_file:
            f.write(chunk)
>>> image.delete()

Command-line API

Installing this package gets you a command-line tool, glance, that you can use to interact with Glance's Identity API.

You'll need to provide your OpenStack username, password, tenant, and auth endpoint. You can do this with the --tenant_id, --username, --password, and --auth_url params, but it's easier to just set them as environment variables:

export OS_TENANT_id=
export OS_USERNAME=user
export OS_PASSWORD=pass
export OS_AUTH_URL=http://example.com:5000/v2.0

Since the Identity service that Glance uses can return multiple regional image endpoints in the Service Catalog, you can specify the one you want with --region_name (or export OS_REGION_NAME). It defaults to the first in the list returned.

You'll find complete documentation on the shell by running glance help:

usage: glance [--username USERNAME] [--password PASSWORD]
              [--tenant_id TENANT_id]
              [--auth_url AUTH_URL] [--region_name REGION_NAME]
              <subcommand> ...

Command-line interface to the OpenStack Identity API.

Positional arguments:
  <subcommand>
    catalog             List all image services in service catalog
    image-create        Create new image
    image-delete        Delete image
    image-list          List images
    image-update        Update image's name and other properties
    image-upload        Upload an image file
    image-download      Download an image file
    help                Display help about this program or one of its
                        subcommands.

Optional arguments:
  --username USERNAME   Defaults to env[OS_USERNAME]
  --password PASSWORD   Defaults to env[OS_PASSWORD]
  --tenant_name TENANT_NAME
                        Defaults to env[OS_TENANT_NAME]
  --tenant_id TENANT_ID
                        Defaults to env[OS_TENANT_ID]
  --auth_url AUTH_URL   Defaults to env[OS_AUTH_URL]
  --region_name REGION_NAME
                        Defaults to env[OS_REGION_NAME]

See "glance help COMMAND" for help on a specific command.