diff --git a/tasks/file.yml b/tasks/file.yml
index 6d71f463f2a4fedf2a0727a19db85eaf7b553500..d550f312a4bc588c167007621306df72af0fc0c4 100644
--- a/tasks/file.yml
+++ b/tasks/file.yml
@@ -15,6 +15,7 @@
   when:
     - not file.content
     - not file.template
+    - not file.src
   file:
     path: "{{ file.path }}"
     group: "{{ file.group }}"
@@ -31,3 +32,13 @@
     owner: "{{ file.owner }}"
     mode: "{{ file.mode }}"
     content: "{{ file.content }}"
+
+- name: create file/folder
+  when:
+    - file.src
+  copy:
+    dest: "{{ file.path }}"
+    group: "{{ file.group }}"
+    owner: "{{ file.owner }}"
+    mode: "{{ file.mode }}"
+    src: "{{ file.src }}"
\ No newline at end of file