setup.rst 3.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. Setup
  2. -----
  3. To initialize a connection to a cloud and get a provider object, you will
  4. need to provide the cloud's access credentials to CloudBridge. These may
  5. be provided in one of two ways:
  6. 1. Environment variables
  7. 2. A dictionary
  8. Providing access credentials through environment variables
  9. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  10. The following environment variables must be set, depending on the provider in use.
  11. **Amazon**
  12. =================== ==================
  13. Mandatory variables Optional Variables
  14. =================== ==================
  15. AWS_ACCESS_KEY
  16. AWS_SECRET_KEY
  17. =================== ==================
  18. **Openstack**
  19. =================== ==================
  20. Mandatory variables Optional Variables
  21. =================== ==================
  22. OS_AUTH_URL NOVA_SERVICE_NAME
  23. OS_USERNAME OS_COMPUTE_API_VERSION
  24. OS_PASSWORD OS_VOLUME_API_VERSION
  25. OS_TENANT_NAME
  26. OS_REGION_NAME
  27. =================== ==================
  28. Once the environment variables are set, you can create a connection as follows:
  29. .. code-block:: python
  30. from cloudbridge.cloud.factory import CloudProviderFactory, ProviderList
  31. provider = CloudProviderFactory().create_provider(ProviderList.OPENSTACK, {})
  32. Providing access credentials through a dictionary
  33. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  34. You can initialize a simple config as follows. The key names are the same
  35. as the environment variables, in lower case. Note that the config dictionary
  36. will override environment values.
  37. .. code-block:: python
  38. from cloudbridge.cloud.factory import CloudProviderFactory, ProviderList
  39. config = {'aws_access_key' : '<your_access_key>',
  40. 'aws_secret_key' : '<your_secret_key>'}
  41. provider = CloudProviderFactory().create_provider(ProviderList.AWS, config)
  42. Some optional configuration values can only be provided through the config dictionary. These
  43. are listed below for each provider.
  44. **CloudBridge**
  45. ==================== ==================
  46. Variable Description
  47. ==================== ==================
  48. default_result_limit Number of results that a .list() method should return. Defaults to 50.
  49. ==================== ==================
  50. **Amazon**
  51. ==================== ==================
  52. Variable Description
  53. ==================== ==================
  54. is_secure True to use an SSL connection. Default is True.
  55. ec2_region_name Default region name
  56. ec2_region_endpoint Endpoint to use. Defaults to us-east-1.
  57. ec2_port EC2 connection port. Does not need to be specified unless EC2 servie is running on an alternative port.
  58. ec2_conn_path Connection path. Defaults to /
  59. ==================== ==================
  60. Other configuration variables
  61. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  62. In addition to the provider specific configuration variables above, there are some
  63. general configuration variables that apply to cloudbridge as a whole
  64. ==================== ==================
  65. Variable Description
  66. ==================== ==================
  67. CB_DEBUG Setting CB_DEBUG=True will cause detailed debug output to be printed for each provider (including HTTP traces).
  68. CB_USE_MOCK_PROVIDER Setting this to True will cause the CloudBridge test suite to use mock drivers when available.
  69. CB_TEST_PROVIDER Set this value to a valid :class:`.ProviderList` value such as ``aws``, to limit tests to that provider only.
  70. ==================== ==================