Merge pull request #12083 from resmo/for-ansible

cloudstack: implement general api_region support, update docs
pull/11431/merge
James Cammarata 9 years ago
commit 2043fcd5db

@ -94,7 +94,8 @@ class AnsibleCloudStack(object):
method=api_http_method method=api_http_method
) )
else: else:
self.cs = CloudStack(**read_config()) api_region = self.module.params.get('api_region', 'cloudstack')
self.cs = CloudStack(**read_config(api_region))
def get_or_fallback(self, key=None, fallback_key=None): def get_or_fallback(self, key=None, fallback_key=None):

@ -48,18 +48,25 @@ options:
- HTTP timeout. - HTTP timeout.
required: false required: false
default: 10 default: 10
api_region:
description:
- Name of the ini section in the C(cloustack.ini) file.
required: false
default: cloudstack
requirements: requirements:
- "python >= 2.6" - "python >= 2.6"
- cs - "cs >= 0.6.10"
notes: notes:
- Ansible uses the C(cs) library's configuration method if credentials are not - Ansible uses the C(cs) library's configuration method if credentials are not
provided by the options C(api_url), C(api_key), C(api_secret). provided by the arguments C(api_url), C(api_key), C(api_secret).
Configuration is read from several locations, in the following order. Configuration is read from several locations, in the following order.
- The C(CLOUDSTACK_ENDPOINT), C(CLOUDSTACK_KEY), C(CLOUDSTACK_SECRET) and - The C(CLOUDSTACK_ENDPOINT), C(CLOUDSTACK_KEY), C(CLOUDSTACK_SECRET) and
C(CLOUDSTACK_METHOD). C(CLOUDSTACK_TIMEOUT) environment variables. C(CLOUDSTACK_METHOD). C(CLOUDSTACK_TIMEOUT) environment variables.
- A C(CLOUDSTACK_CONFIG) environment variable pointing to an C(.ini) file, - A C(CLOUDSTACK_CONFIG) environment variable pointing to an C(.ini) file,
- A C(cloudstack.ini) file in the current working directory. - A C(cloudstack.ini) file in the current working directory.
- A C(.cloudstack.ini) file in the users home directory. - A C(.cloudstack.ini) file in the users home directory.
Optionally multiple credentials and endpoints can be specified using ini sections in C(cloudstack.ini).
Use the argument C(api_region) to select the section name, default section is C(cloudstack).
See https://github.com/exoscale/cs for more information. See https://github.com/exoscale/cs for more information.
- This module supports check mode. - This module supports check mode.
''' '''

Loading…
Cancel
Save