Does the file module handle wildcards?

4,435 views
Skip to first unread message

Willard Dennis

unread,
Jul 29, 2015, 2:12:35 PM7/29/15
to Ansible Project
Hi all,

Trying to write a task that ensures no files matching a wildcard are present in a given directory (and if so, delete them.)

I've tried the following, both of which do not work:

- name: Ensure that any default 'Wired connection' entry is deleted
  file
: path=/etc/NetworkManager/system-connections/Wired* state=absent


- name: Ensure that any default 'Wired connection' entry is deleted
  file
: path=/etc/NetworkManager/system-connections/{{ item }} state=absent
  with_fileglob
: Wired*


The first does nothing (always reports 'ok'), but the second appears to fail altogether, without an error:

TASK: [laptop_netcfg | Ensure there is an NM connection entry for DHCP LAN] ***
ok
: [dhcp-client]

TASK
: [laptop_netcfg | Ensure that any default 'Wired connection' entry is deleted] ***

PLAY
[next_play] *****************************************************************
skipping
: no hosts matched

Notice no task status code under the task... I take it "with_fileglob" is deprecated or something? (picked it up off an old M.DeHaan post off this mailing list...)

Anyways, how would I go about doing something like this?

Thanks,
Will

Craig Moynes

unread,
Jul 29, 2015, 3:00:05 PM7/29/15
to Ansible Project, willard...@gmail.com
Could you use the find module to get the list of matching files?  It is only available in v2.0, I have previously used the command module to execute a find on a remote system to get a list of files, then used the file module to check the state.

Willard Dennis

unread,
Jul 29, 2015, 9:13:29 PM7/29/15
to Craig Moynes, Ansible Project
Thanks for the tip, but not running 2.0 yet... No way to do this on 1.9?

Brian Coca

unread,
Jul 29, 2015, 9:17:40 PM7/29/15
to Ansible Project, Craig Moynes
if no find module just use:
shell: find ...
> --
> 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/CAFJCWMT28umDG1K8v3y3jindsnk%3DjEx_9q2guZC7WU-36nUYsQ%40mail.gmail.com.
>
> For more options, visit https://groups.google.com/d/optout.



--
Brian Coca

Craig Moynes

unread,
Jul 30, 2015, 7:06:00 AM7/30/15
to Willard Dennis, Ansible Project
Sorry if I wasn't clear. I am running 1.9.2 and I use command module to execute a find on a remote system to get a list of files, then used the file module to check the state.

Is that clearer?
Reply all
Reply to author
Forward
0 new messages