A new issue has cropped up for me with v1.6.8 when running a command 
through the shell module that has an equal sign in the command:

- name: register the zone a nat instance
  shell: 'aws --region {{ aws_region }} ec2 describe-instances --filters 
"Name=tag:Name, Values=NAT Instance A" "Name=instance-state-code, Values=16" 
--query "Reservations[*].Instances[*].InstanceId" | jq --raw-output ".[][]"'
  changed_when: false
  register: zone_a_nat_instance


...and the error I'm getting is:

TASK: [aws | register the zone a nat instance] ********************************
fatal: [localhost] => a duplicate parameter was found in the argument string 
(Name)

FATAL: all hosts have already failed -- aborting


Although there are technically two instances of 'Name=' in my command, it's 
not an actual Ansible module parameter, but part of the shell command I'd 
like to run. This task worked previously and no matter how I quote the 
above task (no surrounding quotes, single quotes, double quotes, -shell: > 
with a newline then the command, etc.), it throws the same error.

I did find this GitHub issue regarding the same error, but it seems like 
there are a number of issues going on in that thread: 
https://github.com/ansible/ansible/issues/8233#issuecomment-49924707

Any quick fixes? Is this an unintended consequence of the security fix?

-- 
Aaron Bull Schaefer

-- 
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/d66b21ea-0570-4a37-a0d6-af8a3824e344%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to