Hi,

> Luckily I found a code that caused this 
> behaviour:
> https://github.com/ansible/ansible/blob/devel/lib/ansible/modules/cloud/docker/docker_login.py#L318.
> The "password" is of type "string". Then I changed "type='str'" to
> "type='json'" in my local file and everything worked!

that's not what "caused" this. The problem is that Ansible interprets
your JSON file as a dictionary, parses it and passes it on as a
dictionary. What you've done is telling the docker_login module to no
longer convert it back to a string, but to keep it as a dictionary.
This will be passed on to the docker daemon as a dictionary (since
docker-py says it wants the password to be a string, but won't check
it). I don't know what the docker daemon will do with it. But this
rather looks like accidental behavior than what is intended.

So your question should be: how do I pass the contents of a JSON file
into the string parameter of a module without Ansible "destroying" it
(by interpreting it as a dictionary)? That's a question better for the
ansible-project google groups / mailing list.

Best regards,
Felix Fontein


> I don't know if I am doing something wrong or it is a real bug and I
> should create an issue on github. Could someone please help me?
> 

-- 
You received this message because you are subscribed to the Google Groups 
"Ansible Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to ansible-devel+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/ansible-devel/20191026103626.4b8da7b0%40rovaniemi.

Reply via email to