diff --git a/roles/modulefiles/tasks/main.yml b/roles/modulefiles/tasks/main.yml
index 9325b28977a7eb542e67f2a48642b44df7ad42a2..84ae26e4a27dc2ea7de433eb9c954099b4f77a75 100644
--- a/roles/modulefiles/tasks/main.yml
+++ b/roles/modulefiles/tasks/main.yml
@@ -1,4 +1,14 @@
 ---
+- name: install environment-modules
+  yum: name=environment-modules state=installed
+  sudo: true
+  when: ansible_os_family == 'RedHat'
+
+- name: install environment-modules
+  apt: name=environment-modules state=installed
+  sudo: true
+  when: ansible_os_family == 'Debian'
+
 - name: add /usr/local/Modules to the module file path
   lineinfile: 
   args:
diff --git a/roles/openLdapClient/tasks/installOpenLdap.yml b/roles/openLdapClient/tasks/installOpenLdap.yml
index 4e74367613e2c23c3eb8dac1039073a1fa1a71f3..31a12286fd7b829b272cb6a68812f15478274b75 100644
--- a/roles/openLdapClient/tasks/installOpenLdap.yml
+++ b/roles/openLdapClient/tasks/installOpenLdap.yml
@@ -1,6 +1,6 @@
 ---
 - name: "Install open ldap package yum"
-  yum: name={{ item }} update_cache=yes state=latest
+  yum: name={{ item }} state=latest
   with_items:
     - openldap
     - openldap-clients
diff --git a/roles/slurm-provision/templates/slurm_provision.sh.j2.v1 b/roles/slurm-provision/templates/slurm_provision.sh.j2.v1
deleted file mode 100644
index 2b8bf1f1c16509d40d208c1ba616c4400e13fc55..0000000000000000000000000000000000000000
--- a/roles/slurm-provision/templates/slurm_provision.sh.j2.v1
+++ /dev/null
@@ -1,34 +0,0 @@
-#!/bin/sh
-
-CVL_HOME="/cvl/home"
-user_list=($(getent passwd | cut -d ":" -f1))
-log_file="/root/slurm.log"
-
-for user in ${user_list[*]}; do
-    uid=$(id -u ${user})
-    gid=$(id -g ${user})
-    user_home=${CVL_HOME}/${user}
-    if [ ! -d ${user_home} ]; then
-        mkdir -p ${user_home}
-        cp -r /etc/skel/* ${user_home}
-        chown -R ${uid}:${gid} ${user_home}
-        chmod 700 ${user_home}
-
-        account={{ projectname }}
-        cluster={{ clustername }}
-        find=$(sacctmgr list cluster ${cluster} | grep ${cluster})
-        if [ -z "${find}" ]; then
-            su slurm -c "sacctmgr -i add cluster ${cluster}" || { echo "error to create cluster ${cluster}" >> ${log_file} && exit 1; }
-        fi
-        find=$(sacctmgr list account ${account} | grep ${account})
-        if [ -z "${find}" ]; then
-            su slurm -c "sacctmgr -i add account ${account} Description=CVL Organization=monash cluster=${cluster}" || { echo "error to create account ${account}" >> ${log_file} && exit 1; }
-        fi
-        find=$(sacctmgr list user ${username} | grep ${username})
-        if [ -z "${find}" ]; then
-            su slurm -c "sacctmgr -i add user ${username} account=${account} cluster=${cluster}" || { echo "error to create user ${username}" >> ${log_file} && exit 1; }
-        fi
-    fi
-done
-
-
diff --git a/roles/slurm-provision/vars/main.yml b/roles/slurm-provision/vars/main.yml
new file mode 100644
index 0000000000000000000000000000000000000000..2e084a92f49c7f6380db5cbc17aa8c2faff2f3cf
--- /dev/null
+++ b/roles/slurm-provision/vars/main.yml
@@ -0,0 +1,2 @@
+---
+  slurm_provision: /root/slurm_provision.sh
diff --git a/roles/syncExports/tasks/addExports.yml b/roles/syncExports/tasks/addExports.yml
index 0ea7e7c9a5b0a399a0a4d64c0d8188e9e71f3844..f91dd861f324e07105e2ad587c0ce2fe2ed8a526 100644
--- a/roles/syncExports/tasks/addExports.yml
+++ b/roles/syncExports/tasks/addExports.yml
@@ -1,4 +1,11 @@
 ---
+- name: "Create exports if necessary"
+  file: dest={{ item.src }} state=directory mode=755 owner=root group=root
+  sudo: true
+  delegate_to: "{{ nfs_server }}"
+  run_once: true
+  with_items: exportList
+
 - name: "Templating /etc/exports"
   template: src=exports.j2 dest=/etc/exports owner=root group=root mode=644
   delegate_to: "{{ nfs_server }}"