diff --git a/roles/slurm-from-source/defaults/main.yml b/roles/slurm-from-source/defaults/main.yml
index dc0836cd6b6ca61a8223423f7d4f8072e185abdd..362d9cf4ae92e58c49950d6a09dcaaf9df92cba6 100644
--- a/roles/slurm-from-source/defaults/main.yml
+++ b/roles/slurm-from-source/defaults/main.yml
@@ -1,6 +1,4 @@
 ---
-munge_dir: /opt/munge
-slurm_dir: /opt/slurm
 slurm_use_vpn: False 
 slurmctlddebug: {level: 9, log: '/var/log/slurm/slurmctld.log'}
 slurmddebug: {level: 9, log: '/var/log/slurm/slurmd.log'}
diff --git a/roles/slurm-from-source/tasks/installMungeFromSource.yml b/roles/slurm-from-source/tasks/installMungeFromSource.yml
index 62a716e3eda3d4f1ae5f56d66a468ab12d19a726..11d376a5e6c11db63673c9b52b37959292b580b7 100644
--- a/roles/slurm-from-source/tasks/installMungeFromSource.yml
+++ b/roles/slurm-from-source/tasks/installMungeFromSource.yml
@@ -4,25 +4,24 @@
     chdir: /tmp
     creates: /tmp/munge-{{ munge_version }}.tar.bz2
 
-- name: remove old
-  shell: rm -rf /tmp/munge-{{ munge_version }} && rm -rf /tmp/slurm-{{ slurm_version }}
-  sudo: true
-
 - name: untar munge
   shell: tar jxf munge-{{ munge_version }}.tar.bz2
   args:
     chdir: /tmp
+    creates: /tmp/munge-{{ munge_version }}
 
 - name: build munge
   shell: ./configure --prefix={{ munge_dir }} && make
   args:
     chdir: /tmp/munge-{{ munge_version }}
+    creates: /tmp/munge-{{ munge_version }}/src/munge/munge
 
 - name: install munge
   shell: make install
   sudo: true
   args:
     chdir: /tmp/munge-{{ munge_version }}
+    creates: "{{ munge_dir }}/bin/munge"
 
 - name: copy init script
   template: dest=/etc/init.d/munge src=munge.initd.j2 mode=755
diff --git a/roles/slurm-from-source/tasks/installSlurmFromSource.yml b/roles/slurm-from-source/tasks/installSlurmFromSource.yml
index 945bf80409b908e1ec337f24e71ff5cbeb493330..1041a22c5e7f2b414205cef19e5745778387054f 100644
--- a/roles/slurm-from-source/tasks/installSlurmFromSource.yml
+++ b/roles/slurm-from-source/tasks/installSlurmFromSource.yml
@@ -13,12 +13,14 @@
   shell: ./configure --prefix={{ slurm_dir }} --with-munge={{ munge_dir }} && make
   args:
     chdir: /tmp/slurm-{{ slurm_version }}
+    creates: /tmp/slurm-{{ slurm_version }}/src/srun/srun
 
 - name: install slurm
   shell: make install
   sudo: true
   args:
     chdir: /tmp/slurm-{{ slurm_version }}
+    creates: "{{ slurm_dir }}/bin/srun"
 
 - name: copy init script
   template: dest=/etc/init.d/slurm src=slurm.initd.j2  mode=755
diff --git a/roles/slurm-from-source/tasks/main.yml b/roles/slurm-from-source/tasks/main.yml
index 1fa1d007c4b9177cbdce067781edae6ce3a70f2c..b7891e8cf6dab708a85e5f6c3a5c3d452ef8e7d9 100644
--- a/roles/slurm-from-source/tasks/main.yml
+++ b/roles/slurm-from-source/tasks/main.yml
@@ -54,6 +54,10 @@
     - make
     - perl
     - libdbi-perl
+    - mysql-server
+    - mysql-client
+    - python-mysqldb
+    - libmysqlclient-dev
   when: ansible_os_family == "Debian"
 
 - include: installMungeFromSource.yml
diff --git a/roles/slurmdb/tasks/main.yml b/roles/slurmdb/tasks/main.yml
index 14fbda28113a39d049684311656b7aa0fdca9790..f238b6091a6a84435f87008a16d500c7dfa90599 100644
--- a/roles/slurmdb/tasks/main.yml
+++ b/roles/slurmdb/tasks/main.yml
@@ -7,10 +7,26 @@
     - mysql-server
     - mysql-devel
     - MySQL-python
+  when: ansible_os_family == "RedHat"
+
+- name: install deps in control node
+  apt: name={{ item }} state=installed
+  sudo: true
+  with_items:
+    - mysql-client
+    - mysql-server
+    - python-mysqldb
+  when: ansible_os_family == "Debian"
 
 - name: "Start the Server"
   service: "name=mysqld enabled=yes state=started"
   sudo: true
+  when: ansible_os_family == "RedHat"
+
+- name: "Start the Server"
+  service: "name=mysql enabled=yes state=started"
+  sudo: true
+  when: ansible_os_family == "Debian"
 
 - name: install mysql local root password 
   mysql_user: check_implicit_admin=True login_user=root login_password={{ sqlrootPasswd }} name=root password={{ sqlrootPasswd }} state=present