Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Fetching latest commit...
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


What's This All About?

This directory contains the beginnings of what is hoped will be the
new core of boto.  We want to move from using httplib to using
requests.  We also want to offer full support for Python 2.6, 2.7, and
3.x.  This is a pretty big change and will require some time to roll
out but this module provides a starting point.

What you will find in this module:

* provides a SigV2 authentication packages as a args hook for requests.
* provides a way of finding AWS credentials (see below).
* provides a generic response handler that parses XML responses
  and returns them as nested Python data structures.
* provides a simple example of a service that actually makes an EC2
  request and returns a response.


Credentials are being handled a bit differently here.  The following
describes the order of search for credentials:

1. If your local environment for has ACCESS_KEY and SECRET_KEY variables
   defined, these will be used.

2. If your local environment has AWS_CREDENTIAL_FILE defined, it is assumed
   that it will be a config file with entries like this:

   access_key = xxxxxxxxxxxxxxxx
   sercret_key = xxxxxxxxxxxxxxxxxx

   access_key = yyyyyyyyyyyyyy
   secret_key = yyyyyyyyyyyyyyyyyy

   Each section in the config file is called a persona and you can reference
   a particular persona by name when instantiating a Service class.

3. If a standard boto config file is found that contains credentials, those
   will be used.

4. If temporary credentials for an IAM Role are found in the instance
   metadata of an EC2 instance, these credentials will be used.

Trying Things Out
To try this code out, cd to the directory containing the core module.

    >>> import core.service
    >>> s = core.service.Service()
    >>> s.describe_instances()

This code should return a Python data structure containing information
about your currently running EC2 instances.  This example should run in
Python 2.6.x, 2.7.x and Python 3.x.
Something went wrong with that request. Please try again.