diff --git a/ansible/roles/manila/defaults/main.yml b/ansible/roles/manila/defaults/main.yml
index 0d4a5d876e863fec9af154ed75b904fe4082ae65..e8fd8934e4ae69f850c58dbf4c41087769430ea7 100644
--- a/ansible/roles/manila/defaults/main.yml
+++ b/ansible/roles/manila/defaults/main.yml
@@ -11,6 +11,7 @@ manila_services:
       - "{{ node_config_directory }}/manila-api/:{{ container_config_directory }}/:ro"
       - "/etc/localtime:/etc/localtime:ro"
       - "kolla_logs:/var/log/kolla/"
+      - "{{ kolla_dev_repos_directory ~ '/manila/manila:/var/lib/kolla/venv/lib/python2.7/site-packages/manila' if manila_dev_mode | bool else '' }}"
   manila-scheduler:
     container_name: "manila_scheduler"
     group: "manila-scheduler"
@@ -20,6 +21,7 @@ manila_services:
       - "{{ node_config_directory }}/manila-scheduler/:{{ container_config_directory }}/:ro"
       - "/etc/localtime:/etc/localtime:ro"
       - "kolla_logs:/var/log/kolla/"
+      - "{{ kolla_dev_repos_directory ~ '/manila/manila:/var/lib/kolla/venv/lib/python2.7/site-packages/manila' if manila_dev_mode | bool else '' }}"
   manila-share:
     container_name: "manila_share"
     group: "manila-share"
@@ -31,6 +33,7 @@ manila_services:
       - "/etc/localtime:/etc/localtime:ro"
       - "/run/:/run/:shared"
       - "kolla_logs:/var/log/kolla/"
+      - "{{ kolla_dev_repos_directory ~ '/manila/manila:/var/lib/kolla/venv/lib/python2.7/site-packages/manila' if manila_dev_mode | bool else '' }}"
   manila-data:
     container_name: "manila_data"
     group: "manila-data"
@@ -42,6 +45,7 @@ manila_services:
       - "/etc/localtime:/etc/localtime:ro"
       - "/run/:/run/:shared"
       - "kolla_logs:/var/log/kolla/"
+      - "{{ kolla_dev_repos_directory ~ '/manila/manila:/var/lib/kolla/venv/lib/python2.7/site-packages/manila' if manila_dev_mode | bool else '' }}"
 
 
 #####################
@@ -123,3 +127,11 @@ manila_backends:
       - "CIFS"
 
 manila_enabled_backends: "{{ manila_backends|selectattr('enabled', 'equalto', true)|list }}"
+
+
+####################
+# Kolla
+####################
+manila_git_repository: "{{ kolla_dev_repos_git }}/{{ project_name }}"
+manila_dev_repos_pull: "{{ kolla_dev_repos_pull }}"
+manila_dev_mode: "{{ kolla_dev_mode }}"
diff --git a/ansible/roles/manila/tasks/bootstrap_service.yml b/ansible/roles/manila/tasks/bootstrap_service.yml
index 5f798806732678b7b9ad52e009adbd4dc557ca47..29cac2ac12f6bc75b509ee8d14b4b492c50d2493 100644
--- a/ansible/roles/manila/tasks/bootstrap_service.yml
+++ b/ansible/roles/manila/tasks/bootstrap_service.yml
@@ -15,6 +15,6 @@
       BOOTSTRAP:
     name: "bootstrap_manila"
     restart_policy: "never"
-    volumes: "{{ manila_api.volumes }}"
+    volumes: "{{ manila_api.volumes|reject('equalto', '')|list }}"
   run_once: True
   delegate_to: "{{ groups[manila_api.group][0] }}"
diff --git a/ansible/roles/manila/tasks/clone.yml b/ansible/roles/manila/tasks/clone.yml
new file mode 100644
index 0000000000000000000000000000000000000000..9a9b43d232be3b59714febe0431937753ae7b177
--- /dev/null
+++ b/ansible/roles/manila/tasks/clone.yml
@@ -0,0 +1,6 @@
+---
+- name: Cloning manila source repository for development
+  git:
+    repo: "{{ manila_git_repository }}"
+    dest: "{{ kolla_dev_repos_directory }}/{{ project_name }}"
+    update: "{{ manila_dev_repos_pull }}"
diff --git a/ansible/roles/manila/tasks/deploy.yml b/ansible/roles/manila/tasks/deploy.yml
index 95cde2076d3a7164b9ec33aa4191acfdf68f7ba8..9b52ba0b97a1685863faff39fc5fc51fb1b71407 100644
--- a/ansible/roles/manila/tasks/deploy.yml
+++ b/ansible/roles/manila/tasks/deploy.yml
@@ -13,6 +13,9 @@
     - (enable_manila_backend_cephfs_native | bool) or (enable_manila_backend_cephfs_nfs | bool)
     - inventory_hostname in groups['manila-share']
 
+- include: clone.yml
+  when: manila_dev_mode | bool
+
 - include: register.yml
   when: inventory_hostname in groups['manila-api']