Hi everyone,

I have opened this 'thread' to show an error than I am getting with ansible 
ecs_* modules ( Amazon Elastic Container Service ). First, my server 
details:

CentOS 7.2.1511
Python 2.7.5
ansible 2.1.0.0

I begin to take this error executing ECS task definition through module 
ecs_taskdefinition:

An exception occurred during task execution. To see the full traceback, use 
-vvv. The error was: ValueError: No JSON object could be decoded
fatal: [localhost]: FAILED! => {"changed": false, "failed": true, 
"module_stderr": "Traceback (most recent call last):\n  File 
\"/tmp/ansible_NPl9xZ/ansible_module_ecs_taskdefinition.py\", line 221, in 
<module>\n    main()\n  File 
\"/tmp/ansible_NPl9xZ/ansible_module_ecs_taskdefinition.py\", line 181, in 
main\n    existing = task_mgr.describe_task(task_to_describe)\n  File 
\"/tmp/ansible_NPl9xZ/ansible_module_ecs_taskdefinition.py\", line 127, in 
describe_task\n    response = 
self.ecs.describe_task_definition(taskDefinition=task_name)\n  File 
\"/usr/lib/python2.7/site-packages/botocore/client.py\", line 278, in 
_api_call\n    return self._make_api_call(operation_name, kwargs)\n  File 
\"/usr/lib/python2.7/site-packages/botocore/client.py\", line 561, in 
_make_api_call\n    operation_model, request_dict)\n  File 
\"/usr/lib/python2.7/site-packages/botocore/endpoint.py\", line 117, in 
make_request\n    return self._send_request(request_dict, 
operation_model)\n  File 
\"/usr/lib/python2.7/site-packages/botocore/endpoint.py\", line 144, in 
_send_request\n    request, operation_model, attempts)\n  File 
\"/usr/lib/python2.7/site-packages/botocore/endpoint.py\", line 203, in 
_get_response\n    response_dict, operation_model.output_shape)\n  File 
\"/usr/lib/python2.7/site-packages/botocore/parsers.py\", line 209, in 
parse\n    parsed = self._do_error_parse(response, shape)\n  File 
\"/usr/lib/python2.7/site-packages/botocore/parsers.py\", line 542, in 
_do_error_parse\n    body = self._parse_body_as_json(response['body'])\n  
File \"/usr/lib/python2.7/site-packages/botocore/parsers.py\", line 574, in 
_parse_body_as_json\n    original_parsed = json.loads(body)\n  File 
\"/usr/lib64/python2.7/json/__init__.py\", line 338, in loads\n    return 
_default_decoder.decode(s)\n  File 
\"/usr/lib64/python2.7/json/decoder.py\", line 365, in decode\n    obj, end 
= self.raw_decode(s, idx=_w(s, 0).end())\n  File 
\"/usr/lib64/python2.7/json/decoder.py\", line 383, in raw_decode\n    
raise ValueError(\"No JSON object could be decoded\")\nValueError: No JSON 
object could be decoded\n", "module_stdout": "", "msg": "MODULE FAILURE", 
"parsed": false}

This was a VMWare virtualized server with CentOS 7, as I tryed same script 
in a VPS server with same CentOS 7 version, and the script executed OK. 
Later I tried several Linux distros, such as Ubuntu 14, Ubuntu 16 and Arch, 
getting same error.

Doing some debugging, I saw the script crashed here:

subprocess.py(1461):                 for fd, mode in ready:
subprocess.py(1453):             while fd2file:
subprocess.py(1454):                 try:
subprocess.py(1455):                     ready = poller.poll()
subprocess.py(1461):                 for fdTraceback (most recent call 
last):
  File "/tmp/ansible_Z6VzDk/ansible_module_ecs_taskdefinition.py", line 
221, in <module>
    main()
  File "/tmp/ansible_Z6VzDk/ansible_module_ecs_taskdefinition.py", line 
181, in main
    existing = task_mgr.describe_task(task_to_describe)
  File "/tmp/ansible_Z6VzDk/ansible_module_ecs_taskdefinition.py", line 
127, in describe_task
    response = self.ecs.describe_task_definition(taskDefinition=task_name)
  File "/usr/lib/python2.7/site-packages/botocore/client.py", line 278, in 
_api_call
    return self._make_api_call(operation_name, kwargs)
  File "/usr/lib/python2.7/site-packages/botocore/client.py", line 561, in 
_make_api_call
    operation_model, request_dict)
  File "/usr/lib/python2.7/site-packages/botocore/endpoint.py", line 117, 
in make_request
    return self._send_request(request_dict, operation_model)
  File "/usr/lib/python2.7/site-packages/botocore/endpoint.py", line 144, 
in _send_request
    request, operation_model, attempts)
  File "/usr/lib/python2.7/site-packages/botocore/endpoint.py", line 203, 
in _get_response
    response_dict, operation_model.output_shape)
  File "/usr/lib/python2.7/site-packages/botocore/parsers.py", line 209, in 
parse
    parsed = self._do_error_parse(response, shape)
  File "/usr/lib/python2.7/site-packages/botocore/parsers.py", line 542, in 
_do_error_parse
    body = self._parse_body_as_json(response['body'])
  File "/usr/lib/python2.7/site-packages/botocore/parsers.py", line 574, in 
_parse_body_as_json
    original_parsed = json.loads(body)
  File "/usr/lib64/python2.7/json/__init__.py", line 338, in loads
    return _default_decoder.decode(s)
  File "/usr/lib64/python2.7/json/decoder.py", line 365, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "/usr/lib64/python2.7/json/decoder.py", line 383, in raw_decode
    raise ValueError("No JSON object could be decoded")
ValueError: No JSON object could be decoded
, mode in ready:
subprocess.py(1462):                     if mode & select.POLLOUT:

Later, I saw that crashing system was using 'subprocess.py' coming with 
default python, while working system had this instead:

/usr/lib/python2.7/site-packages/kitchen/pycompat24/subprocess.py
/usr/lib/python2.7/site-packages/kitchen/pycompat24/subprocess.pyc
/usr/lib/python2.7/site-packages/kitchen/pycompat24/subprocess.pyo
/usr/lib/python2.7/site-packages/kitchen/pycompat27/subprocess/_subprocess.py
/usr/lib/python2.7/site-packages/kitchen/pycompat27/subprocess/_subprocess.pyc
/usr/lib/python2.7/site-packages/kitchen/pycompat27/subprocess/_subprocess.pyo

I tried installing a new Centos 7 machine, and configuring python to work 
with the libraries above, but it doesn't take effect.

Now I have no more ideas to make it work, ¿could anyone help me or is 
getting the same error?

Best regards
Luis Miguel

-- 
You received this message because you are subscribed to the Google Groups 
"Ansible Project" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/ansible-project/768239c3-cad8-4949-9689-40527fa3fb00%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to