fetch module - hostname instead of ip in the filesystem tree?

121 views
Skip to first unread message

Michael Warkentin

unread,
Oct 21, 2014, 4:27:38 PM10/21/14
to ansible...@googlegroups.com
Hello, I was wondering if there's any way to use the hostname of a server rather than it's IP to generate the file system tree when using the fetch module?

Our ansible inventories are set up like so:

aqua-notif-wrkr-01 ansible_ssh_host=12.34.56.789


Would setting up /etc/hosts to map hostnames to IPs work, or are we stuck with this?

James Cammarata

unread,
Oct 23, 2014, 11:52:13 AM10/23/14
to ansible...@googlegroups.com
Hi Michael,

One way you can get around this is to use the inventory_hostname variable in the dest= along with flat=yes, as follows:

- hosts: all
  gather_facts: no
  tasks:
  - fetch: src=/etc/hosts dest="/tmp/{{inventory_hostname}}/" flat=yes

As long as the inventory_hostname is actually a hostname and not an IP, this should do what you need. Beyond that, you can open a feature request PR on ansible-modules-core to allow using the inventory hostname instead of the connection address, when available.

Hope that helps!

--
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 ansible-proje...@googlegroups.com.
To post to this group, send email to ansible...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ansible-project/ee6477b0-7b5d-4ae7-aa5b-33145f0e8e56%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Michael Warkentin

unread,
Oct 24, 2014, 9:19:11 AM10/24/14
to ansible...@googlegroups.com
Thanks James, I'll give that a try!

Sorry about the double-post as well - I didn't realize that the forum was moderated, so I thought there was a glitch when I submitted my first message.

Michael DeHaan

unread,
Oct 24, 2014, 9:42:51 AM10/24/14
to ansible...@googlegroups.com
"if there's any way to use the hostname of a server rather than it's IP to generate the file system tree when using the fetch module?"

Yeah, It should use the inventory name anyway.

I'd file a bug on this one at github.com/ansible/ansible -- it's a small bug, and the workaround above will do, but it shouldn't be using conn.host as the host path, but rather "inventory_hostname".



Michael Warkentin

unread,
Oct 24, 2014, 11:20:17 AM10/24/14
to ansible...@googlegroups.com
Hey Michael, thanks for the reply. I've opened ansible#9415 to track this.
Reply all
Reply to author
Forward
0 new messages