Thanks Vladimir,

When I take out the trailing comma on line 7 I get a different error:

$ ./dynamic1.sh
{
  "all": {
      "hosts": {
"ip-172-31-39-30.eu-west-1.compute.internal": null,
"ip-172-31-44-224.eu-west-1.compute.internal": null,
"ip-172-31-42-6.eu-west-1.compute.internal": null,
"ip-172-31-32-68.eu-west-1.compute.internal": null
    }
  }
}
$ ansible -i ./dynamic1.sh all -m ping -u ubuntu
[WARNING]:  * Failed to parse /home/ubuntu/dynamic1.sh with script plugin: 
You defined a group 'all' with bad data for the host list:  {u'hosts': 
{u'ip-172-31-32-68
.eu-west-1.compute.internal': None, 
u'ip-172-31-39-30.eu-west-1.compute.internal': None, 
u'ip-172-31-42-6.eu-west-1.compute.internal': None, u'ip-172-31-44-224.eu-
west-1.compute.internal': None}}
[WARNING]:  * Failed to parse /home/ubuntu/dynamic1.sh with ini plugin: 
/home/ubuntu/dynamic1.sh:3: Expected key=value host variable assignment, 
got: {
[WARNING]: Unable to parse /home/ubuntu/dynamic1.sh as an inventory source
[WARNING]: No inventory was parsed, only implicit localhost is available
{ | UNREACHABLE! => {
    "changed": false,
    "msg": "Failed to connect to the host via ssh: ssh: Could not resolve 
hostname {: Temporary failure in name resolution",
    "unreachable": true
}


Ansible still doesn't accept the dynamic script's output. Ansible cli will 
accept the file output being used with or without the last "," so it's odd 
for me. I'm supplying the list of hosts in a format that Ansible will run 
against based on the file (output of the script), but ansible won't take 
the same output from the script.



On Tuesday, 3 November 2020 at 09:37:11 UTC [email protected] wrote:

> On Tue, 3 Nov 2020 01:07:29 -0800 (PST)
> "[email protected]" <[email protected]> wrote:
>
> > {
> > "all": {
> > "hosts": {
> > "ip-172-31-39-30.eu-west-1.compute.internal": null,
> > "ip-172-31-44-224.eu-west-1.compute.internal": null,
> > "ip-172-31-42-6.eu-west-1.compute.internal": null,
> > "ip-172-31-32-68.eu-west-1.compute.internal": null,
> > }
> > }
> > }
> > ...
> > Expecting property name enclosed in double quotes: line 8 column 5 (char 
> > 242)
> > [WARNING]: * Failed to parse /home/ubuntu/dynamic1.sh with ini plugin: 
> > /home/ubuntu/dynamic1.sh:2: Expected key=value host variable assignment, 
> > got: {
>
> It's wrong JSON syntax. Remove the comma at the end of line 7.
>
> -- 
> Vladimir Botka
>

-- 
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 view this discussion on the web visit 
https://groups.google.com/d/msgid/ansible-project/3eabca68-7bce-43eb-ac7e-0fd7d1a13e1cn%40googlegroups.com.

Reply via email to