summaryrefslogtreecommitdiff
path: root/lib/ansible/modules/database/vertica/vertica_user.py
diff options
context:
space:
mode:
Diffstat (limited to 'lib/ansible/modules/database/vertica/vertica_user.py')
-rw-r--r--lib/ansible/modules/database/vertica/vertica_user.py49
1 files changed, 17 insertions, 32 deletions
diff --git a/lib/ansible/modules/database/vertica/vertica_user.py b/lib/ansible/modules/database/vertica/vertica_user.py
index 27cb39428d..0d5f58b471 100644
--- a/lib/ansible/modules/database/vertica/vertica_user.py
+++ b/lib/ansible/modules/database/vertica/vertica_user.py
@@ -1,20 +1,11 @@
#!/usr/bin/python
# -*- coding: utf-8 -*-
+# Copyright: Ansible Project
+# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
+
+from __future__ import absolute_import, division, print_function
+__metaclass__ = type
-# This file is part of Ansible
-#
-# Ansible is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-#
-# Ansible is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with Ansible. If not, see <http://www.gnu.org/licenses/>.
ANSIBLE_METADATA = {'metadata_version': '1.0',
'status': ['preview'],
@@ -127,6 +118,7 @@ EXAMPLES = """
roles=schema_name_ro
state=present
"""
+import traceback
try:
import pyodbc
@@ -136,7 +128,6 @@ else:
pyodbc_found = True
from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.pycompat24 import get_exception
from ansible.module_utils._text import to_native
@@ -361,8 +352,7 @@ def main():
module.params['login_user'], module.params['login_password'], 'true')
db_conn = pyodbc.connect(dsn, autocommit=True)
cursor = db_conn.cursor()
- except Exception:
- e = get_exception()
+ except Exception as e:
module.fail_json(msg="Unable to connect to database: {0}.".format(e))
try:
@@ -373,28 +363,23 @@ def main():
elif state == 'absent':
try:
changed = absent(user_facts, cursor, user, roles)
- except pyodbc.Error:
- e = get_exception()
- module.fail_json(msg=str(e))
+ except pyodbc.Error as e:
+ module.fail_json(msg=to_native(e), exception=traceback.format_exc())
elif state in ['present', 'locked']:
try:
changed = present(user_facts, cursor, user, profile, resource_pool,
locked, password, expired, ldap, roles)
- except pyodbc.Error:
- e = get_exception()
- module.fail_json(msg=str(e))
- except NotSupportedError:
- e = get_exception()
- module.fail_json(msg=str(e), ansible_facts={'vertica_users': user_facts})
- except CannotDropError:
- e = get_exception()
- module.fail_json(msg=str(e), ansible_facts={'vertica_users': user_facts})
+ except pyodbc.Error as e:
+ module.fail_json(msg=to_native(e), exception=traceback.format_exc())
+ except NotSupportedError as e:
+ module.fail_json(msg=to_native(e), ansible_facts={'vertica_users': user_facts})
+ except CannotDropError as e:
+ module.fail_json(msg=to_native(e), ansible_facts={'vertica_users': user_facts})
except SystemExit:
# avoid catching this on python 2.4
raise
- except Exception:
- e = get_exception()
- module.fail_json(msg=to_native(e))
+ except Exception as e:
+ module.fail_json(msg=to_native(e), exception=traceback.format_exc())
module.exit_json(changed=changed, user=user, ansible_facts={'vertica_users': user_facts})