diff --git a/roles/slurm-start/tasks/main.yml b/roles/slurm-start/tasks/main.yml
index b8ba5de058b1ec562d125a11710acd78f89b68be..d9569c7d61fb959f557d4ea72998a00f2e653f8a 100644
--- a/roles/slurm-start/tasks/main.yml
+++ b/roles/slurm-start/tasks/main.yml
@@ -66,11 +66,22 @@
   when: start_slurmdbd is defined
 
 
-- name: "create cluster in slurm db"
-  shell:
-    cmd: ./sacctmgr show assoc format=Cluster -Pn | grep -q {{ clustername }} && ./sacctmgr -i create cluster {{ clustername }}
-    chdir: "{{ slurm_dir }}/bin/"
+#- name: "create cluster in slurm db"
+#  shell:
+#    cmd: ./sacctmgr show assoc format=Cluster -Pn | grep -q {{ clustername }} && ./sacctmgr -i create cluster {{ clustername }}
+#    chdir: "{{ slurm_dir }}/bin/"
+#  become: true
+
+- name: "see if cluster exists"
+  command: "{{ slurm_dir }}/bin/sacctmgr show assoc format=Cluster -Pn"
+  always_run: yes
   become: true
+  register: sacctmgr_clusterlist
+  
+- name: "create cluster in slurm db"
+  command: "{{ slurm_dir }}/bin/acctmgr -i create cluster {{ clustername }}"
+  become: true  
+  when: sacctmgr_clusterlist.stdout.find({{ clustername }})==-1
 
 - name: start slurmctl
   service: name=slurmctld state=restarted enabled=no