summaryrefslogtreecommitdiff
path: root/lib/ansible/plugins/inventory/tower.py
diff options
context:
space:
mode:
authorAlanCoding <arominge@redhat.com>2019-09-11 20:10:48 -0400
committerToshio Kuratomi <a.badger@gmail.com>2019-09-16 12:11:41 -0700
commita8dddff5eccf9abb33574455cfb70cb83f807f79 (patch)
tree35b8f26d5b4b2448c18d0bf437ff4f29e36c27c7 /lib/ansible/plugins/inventory/tower.py
parentd4738596ce22fd089e244120f55f3d7c8d333d0f (diff)
downloadansible-a8dddff5eccf9abb33574455cfb70cb83f807f79.tar.gz
Use to_native for error messages, fix docs typo
Diffstat (limited to 'lib/ansible/plugins/inventory/tower.py')
-rw-r--r--lib/ansible/plugins/inventory/tower.py15
1 files changed, 8 insertions, 7 deletions
diff --git a/lib/ansible/plugins/inventory/tower.py b/lib/ansible/plugins/inventory/tower.py
index 780f407cea..f4f20fe509 100644
--- a/lib/ansible/plugins/inventory/tower.py
+++ b/lib/ansible/plugins/inventory/tower.py
@@ -103,7 +103,7 @@ import os
import json
from ansible.module_utils import six
from ansible.module_utils.urls import Request, urllib_error, ConnectionError, socket, httplib
-from ansible.module_utils._text import to_native
+from ansible.module_utils._text import to_text, to_native
from ansible.errors import AnsibleParserError, AnsibleOptionsError
from ansible.plugins.inventory import BaseInventoryPlugin
from ansible.config.manager import ensure_type
@@ -127,18 +127,18 @@ class InventoryModule(BaseInventoryPlugin):
try:
response = request_handler.get(tower_url)
except (ConnectionError, urllib_error.URLError, socket.error, httplib.HTTPException) as e:
- error_msg = 'Connection to remote host failed: {err}'.format(err=e)
+ n_error_msg = 'Connection to remote host failed: {err}'.format(err=to_native(e))
# If Tower gives a readable error message, display that message to the user.
if callable(getattr(e, 'read', None)):
- error_msg += ' with message: {err_msg}'.format(err_msg=e.read())
- raise AnsibleParserError(to_native(error_msg))
+ n_error_msg += ' with message: {err_msg}'.format(err_msg=to_native(e.read()))
+ raise AnsibleParserError(n_error_msg)
# Attempt to parse JSON.
try:
return json.loads(response.read())
except (ValueError, TypeError) as e:
# If the JSON parse fails, print the ValueError
- raise AnsibleParserError(to_native('Failed to parse json from host: {err}'.format(err=e)))
+ raise AnsibleParserError('Failed to parse json from host: {err}'.format(err=to_native(e)))
def verify_file(self, path):
if path.endswith('@tower_inventory'):
@@ -167,14 +167,15 @@ class InventoryModule(BaseInventoryPlugin):
# validate type of inventory_id because we allow two types as special case
inventory_id = self.get_option('inventory_id')
if isinstance(inventory_id, int):
- inventory_id = to_native(self.get_option('inventory_id'))
+ inventory_id = to_text(inventory_id, nonstring='simplerepr')
else:
try:
inventory_id = ensure_type(inventory_id, 'str')
except ValueError as e:
raise AnsibleOptionsError(
'Invalid type for configuration option inventory_id, '
- 'not integer, and cannot convert to string: %s' % to_native(e))
+ 'not integer, and cannot convert to string: {err}'.format(err=to_native(e))
+ )
inventory_id = inventory_id.replace('/', '')
inventory_url = '/api/v2/inventories/{inv_id}/script/?hostvars=1&towervars=1&all=1'.format(inv_id=inventory_id)
inventory_url = urljoin(tower_host, inventory_url)