Boto is a Python package that provides interfaces to Amazon Web Services. At the moment, boto supports:
- Amazon Elastic Compute Cloud (EC2)
- Amazon Elastic Map Reduce (EMR)
- Content Delivery
- Amazon CloudFront
- Amazon Relational Data Service (RDS)
- Amazon DynamoDB
- Amazon SimpleDB
- Amazon ElastiCache
- Amazon Redshift
- Deployment and Management
- AWS Elastic Beanstalk
- AWS CloudFormation
- AWS Data Pipeline
- AWS Opsworks
- AWS CloudTrail
- Identity & Access
- AWS Identity and Access Management (IAM)
- Application Services
- Amazon CloudSearch
- Amazon Elastic Transcoder
- Amazon Simple Workflow Service (SWF)
- Amazon Simple Queue Service (SQS)
- Amazon Simple Notification Server (SNS)
- Amazon Simple Email Service (SES)
- Amazon CloudWatch
- Amazon Route53
- Amazon Virtual Private Cloud (VPC)
- Elastic Load Balancing (ELB)
- Payments and Billing
- Amazon Flexible Payment Service (FPS)
- Amazon Simple Storage Service (S3)
- Amazon Glacier
- Amazon Elastic Block Store (EBS)
- Google Cloud Storage
- Amazon Mechanical Turk
- Marketplace Web Services
- AWS Support
The goal of boto is to support the full breadth and depth of Amazon Web Services. In addition, boto provides support for other public services such as Google Storage in addition to private cloud systems like Eucalyptus, OpenStack and Open Nebula.
Boto is developed mainly using Python 2.6.6 and Python 2.7.3 on Mac OSX and Ubuntu Maverick. It is known to work on other Linux distributions and on Windows. Most of Boto requires no additional libraries or packages other than those that are distributed with Python. Efforts are made to keep boto compatible with Python 2.5.x but no guarantees are made.
Install via pip:
$ pip install boto
Install from source:
$ git clone git://github.com/boto/boto.git $ cd boto $ python setup.py install
To see what has changed over time in boto, you can check out the release notes in the wiki.
Finding Out More About Boto
Online documentation is also available. The online documentation includes full API documentation as well as Getting Started Guides for many of the boto modules.
Boto releases can be found on the Python Cheese Shop.
Join our IRC channel #boto on FreeNode. Webchat IRC channel: http://webchat.freenode.net/?channels=boto
Join the boto-users Google Group.
Getting Started with Boto
Your credentials can be passed into the methods that create connections. Alternatively, boto will check for the existence of the following environment variables to ascertain your credentials:
AWS_ACCESS_KEY_ID - Your AWS Access Key ID
AWS_SECRET_ACCESS_KEY - Your AWS Secret Access Key
Credentials and other boto-related settings can also be stored in a boto config file. See this for details.