summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavide Guerri <davide.guerri@gmail.com>2015-04-21 14:52:35 +0100
committerDavide Guerri <davide.guerri@gmail.com>2015-04-21 14:53:01 +0100
commitee72221527b96155426da413235a47469e3b4fbd (patch)
treec8c461b7e6f8f92adf0d4cf0591196bc4fdc64dd
parent0c1e4c009c19fbdf02db2c32a353157fa287ab61 (diff)
downloadopenstack-ansible-modules-ee72221527b96155426da413235a47469e3b4fbd.tar.gz
Use region name for keystone authentication
-rw-r--r--neutron_router18
-rw-r--r--neutron_router_gateway10
-rw-r--r--neutron_router_interface25
3 files changed, 29 insertions, 24 deletions
diff --git a/neutron_router b/neutron_router
index a724c45..6baa65f 100644
--- a/neutron_router
+++ b/neutron_router
@@ -92,16 +92,18 @@ _os_tenant_id = None
def _get_ksclient(module, kwargs):
try:
- kclient = ksclient.Client(username=kwargs.get('login_username'),
- password=kwargs.get('login_password'),
- tenant_name=kwargs.get('login_tenant_name'),
- auth_url=kwargs.get('auth_url'))
+ kclient = ksclient.Client(
+ username=module.params.get('login_username'),
+ password=module.params.get('login_password'),
+ tenant_name=module.params.get('login_tenant_name'),
+ auth_url=module.params.get('auth_url'),
+ region_name=module.params.get('region_name'))
except Exception as e:
module.fail_json(msg = "Error authenticating to the keystone: %s " % e.message)
global _os_keystone
_os_keystone = kclient
return kclient
-
+
def _get_endpoint(module, ksclient):
try:
@@ -172,7 +174,7 @@ def _delete_router(module, neutron, router_id):
except:
module.fail_json("Error in deleting the router")
return True
-
+
def main():
module = AnsibleModule(
argument_spec = dict(
@@ -187,7 +189,7 @@ def main():
admin_state_up = dict(type='bool', default=True),
),
)
-
+
neutron = _get_neutron_client(module, module.params)
_set_tenant_id(module)
@@ -206,7 +208,7 @@ def main():
else:
_delete_router(module, neutron, router_id)
module.exit_json(changed=True, result="deleted")
-
+
# this is magic, see lib/ansible/module.params['common.py
from ansible.module_utils.basic import *
main()
diff --git a/neutron_router_gateway b/neutron_router_gateway
index 93235b8..fec2e1b 100644
--- a/neutron_router_gateway
+++ b/neutron_router_gateway
@@ -82,10 +82,12 @@ EXAMPLES = '''
_os_keystone = None
def _get_ksclient(module, kwargs):
try:
- kclient = ksclient.Client(username=kwargs.get('login_username'),
- password=kwargs.get('login_password'),
- tenant_name=kwargs.get('login_tenant_name'),
- auth_url=kwargs.get('auth_url'))
+ kclient = ksclient.Client(
+ username=module.params.get('login_username'),
+ password=module.params.get('login_password'),
+ tenant_name=module.params.get('login_tenant_name'),
+ auth_url=module.params.get('auth_url'),
+ region_name=module.params.get('region_name'))
except Exception as e:
module.fail_json(msg = "Error authenticating to the keystone: %s " % e.message)
global _os_keystone
diff --git a/neutron_router_interface b/neutron_router_interface
index 1d6648a..a3060ff 100644
--- a/neutron_router_interface
+++ b/neutron_router_interface
@@ -93,16 +93,18 @@ _os_tenant_id = None
def _get_ksclient(module, kwargs):
try:
- kclient = ksclient.Client(username=kwargs.get('login_username'),
- password=kwargs.get('login_password'),
- tenant_name=kwargs.get('login_tenant_name'),
- auth_url=kwargs.get('auth_url'))
+ kclient = ksclient.Client(
+ username=module.params.get('login_username'),
+ password=module.params.get('login_password'),
+ tenant_name=module.params.get('login_tenant_name'),
+ auth_url=module.params.get('auth_url'),
+ region_name=module.params.get('region_name'))
except Exception as e:
module.fail_json(msg = "Error authenticating to the keystone: %s " % e.message)
global _os_keystone
_os_keystone = kclient
return kclient
-
+
def _get_endpoint(module, ksclient):
try:
@@ -142,7 +144,6 @@ def _set_tenant_id(module):
if not _os_tenant_id:
module.fail_json(msg = "The tenant id cannot be found, please check the paramters")
-
def _get_router_id(module, neutron):
kwargs = {
'name': module.params['router_name'],
@@ -169,7 +170,7 @@ def _get_subnet_id(module, neutron):
if not subnets['subnets']:
return None
return subnets['subnets'][0]['id']
-
+
def _get_port_id(neutron, module, router_id, subnet_id):
kwargs = {
'tenant_id': _os_tenant_id,
@@ -196,7 +197,7 @@ def _add_interface_router(neutron, module, router_id, subnet_id):
except Exception as e:
module.fail_json(msg = "Error in adding interface to router: %s" % e.message)
return True
-
+
def _remove_interface_router(neutron, module, router_id, subnet_id):
kwargs = {
'subnet_id': subnet_id
@@ -206,7 +207,7 @@ def _remove_interface_router(neutron, module, router_id, subnet_id):
except Exception as e:
module.fail_json(msg="Error in removing interface from router: %s" % e.message)
return True
-
+
def main():
module = AnsibleModule(
argument_spec = dict(
@@ -221,7 +222,7 @@ def main():
state = dict(default='present', choices=['absent', 'present']),
),
)
-
+
neutron = _get_neutron_client(module, module.params)
_set_tenant_id(module)
@@ -232,7 +233,7 @@ def main():
subnet_id = _get_subnet_id(module, neutron)
if not subnet_id:
module.fail_json(msg="failed to get the subnet id, please check the subnet name")
-
+
if module.params['state'] == 'present':
port_id = _get_port_id(neutron, module, router_id, subnet_id)
if not port_id:
@@ -246,7 +247,7 @@ def main():
module.exit_json(changed = False, result = "Success")
_remove_interface_router(neutron, module, router_id, subnet_id)
module.exit_json(changed=True, result="Deleted")
-
+
# this is magic, see lib/ansible/module.params['common.py
from ansible.module_utils.basic import *
main()