Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Ansible: copy file if not exists

Tags:

ansible

I've seen the question asked in a round about sort of way but not conclusively answered. What I want to do is straight forward. I want to copy a file index.php to the remote host at /var/www/index.php but only if it doesn't already exist.

I've tried using creates and *only_if* but I don't think these are intended for the purpose I want here. Can anyone supply some examples of how I would go about this?

like image 297
Dubby Avatar asked Feb 08 '14 12:02

Dubby


1 Answers

Assuming index.php exists in the role's files subdirectory:

- copy: src=index.php dest=/var/www/index.php force=no 

The decisive property is force. As the documentation explains, the default is yes, which will replace the remote file when contents are different than the source. If no, the file will only be transferred if the destination does not exist.

like image 181
Fernando Correia Avatar answered Sep 22 '22 20:09

Fernando Correia