Index: third_party/gsutil/boto/docs/source/boto_config_tut.rst |
diff --git a/third_party/gsutil/boto/docs/source/boto_config_tut.rst b/third_party/gsutil/boto/docs/source/boto_config_tut.rst |
new file mode 100644 |
index 0000000000000000000000000000000000000000..c134397ce1fc5647a45fd6938be5bdfb5b1c953e |
--- /dev/null |
+++ b/third_party/gsutil/boto/docs/source/boto_config_tut.rst |
@@ -0,0 +1,125 @@ |
+.. _ref-boto_config: |
+ |
+=========== |
+Boto Config |
+=========== |
+ |
+Introduction |
+------------ |
+ |
+There is a growing list of configuration options for the boto library. Many of |
+these options can be passed into the constructors for top-level objects such as |
+connections. Some options, such as credentials, can also be read from |
+environment variables (e.g. ``AWS_ACCESS_KEY_ID`` and ``AWS_SECRET_ACCESS_KEY``). |
+But there is no central place to manage these options. So, the development |
+version of boto has now introduced the notion of boto config files. |
+ |
+Details |
+------- |
+ |
+A boto config file is simply a .ini format configuration file that specifies |
+values for options that control the behavior of the boto library. Upon startup, |
+the boto library looks for configuration files in the following locations |
+and in the following order: |
+ |
+* /etc/boto.cfg - for site-wide settings that all users on this machine will use |
+* ~/.boto - for user-specific settings |
+ |
+The options are merged into a single, in-memory configuration that is |
+available as :py:mod:`boto.config`. The :py:class:`boto.pyami.config.Config` |
+class is a subclass of the standard Python |
+:py:class:`ConfigParser.SafeConfigParser` object and inherits all of the |
+methods of that object. In addition, the boto |
+:py:class:`Config <boto.pyami.config.Config>` class defines additional |
+methods that are described on the PyamiConfigMethods page. |
+ |
+Sections |
+-------- |
+ |
+The following sections and options are currently recognized within the |
+boto config file. |
+ |
+Credentials |
+^^^^^^^^^^^ |
+ |
+The Credentials section is used to specify the AWS credentials used for all |
+boto requests. The order of precedence for authentication credentials is: |
+ |
+* Credentials passed into Connection class constructor. |
+* Credentials specified by environment variables |
+* Credentials specified as options in the config file. |
+ |
+This section defines the following options: ``aws_access_key_id`` and |
+``aws_secret_access_key``. The former being your aws key id and the latter |
+being the secret key. |
+ |
+For example:: |
+ |
+ [Credentials] |
+ aws_access_key_id = <your access key> |
+ aws_secret_access_key = <your secret key> |
+ |
+Please notice that quote characters are not used to either side of the '=' |
+operator even when both your aws access key id and secret key are strings. |
+ |
+For greater security, the secret key can be stored in a keyring and |
+retrieved via the keyring package. To use a keyring, use ``keyring``, |
+rather than ``aws_secret_access_key``:: |
+ |
+ [Credentials] |
+ aws_access_key_id = <your access key> |
+ keyring = <keyring name> |
+ |
+To use a keyring, you must have the Python `keyring |
+<http://pypi.python.org/pypi/keyring>`_ package installed and in the |
+Python path. To learn about setting up keyrings, see the `keyring |
+documentation |
+<http://pypi.python.org/pypi/keyring#installing-and-using-python-keyring-lib>`_ |
+ |
+ |
+Boto |
+^^^^ |
+ |
+The Boto section is used to specify options that control the operaton of |
+boto itself. This section defines the following options: |
+ |
+:debug: Controls the level of debug messages that will be printed by the boto library. |
+ The following values are defined:: |
+ |
+ 0 - no debug messages are printed |
+ 1 - basic debug messages from boto are printed |
+ 2 - all boto debugging messages plus request/response messages from httplib |
+ |
+:proxy: The name of the proxy host to use for connecting to AWS. |
+:proxy_port: The port number to use to connect to the proxy host. |
+:proxy_user: The user name to use when authenticating with proxy host. |
+:proxy_pass: The password to use when authenticating with proxy host. |
+:num_retries: The number of times to retry failed requests to an AWS server. |
+ If boto receives an error from AWS, it will attempt to recover and retry the |
+ request. The default number of retries is 5 but you can change the default |
+ with this option. |
+ |
+As an example:: |
+ |
+ [Boto] |
+ debug = 0 |
+ num_retries = 10 |
+ |
+ proxy = myproxy.com |
+ proxy_port = 8080 |
+ proxy_user = foo |
+ proxy_pass = bar |
+ |
+Precedence |
+---------- |
+ |
+Even if you have your boto config setup, you can also have credentials and |
+options stored in environmental variables or you can explicitly pass them to |
+method calls i.e.:: |
+ |
+ >>> boto.connect_ec2('<KEY_ID>','<SECRET_KEY>') |
+ |
+In these cases where these options can be found in more than one place boto |
+will first use the explicitly supplied arguments, if none found it will then |
+look for them amidst environment variables and if that fails it will use the |
+ones in boto config. |