# Ansible module ecs\_taskdefinition - No JSON could be decoded

**URL:** <https://forum.ansible.com/t/ansible-module-ecs-taskdefinition-no-json-could-be-decoded/22219>\
**Category:** Ansible Project\
**Tags:** vmware, ubuntu\
**Created:** [August 5, 2016, 7:00am UTC](https://forum.ansible.com/t/ansible-module-ecs-taskdefinition-no-json-could-be-decoded/22219 "2016-08-05T07:00:26Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![Luismy\_Saez](https://avatars.discourse-cdn.com/v4/letter/l/f14d63/32.png) [@Luismy\_Saez](https://forum.ansible.com/u/Luismy_Saez)\
**Post date:** [August 5, 2016, 7:00am UTC](https://forum.ansible.com/t/ansible-module-ecs-taskdefinition-no-json-could-be-decoded/22219/1 "2016-08-05T07:00:26Z")

</div>

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 \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   
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
