From 2831f162ec915baea291fb45073ab218d987e7f7 Mon Sep 17 00:00:00 2001
From: CVL-GitHub <jupiter.hu@monash.edu>
Date: Tue, 17 Feb 2015 05:44:44 +0000
Subject: [PATCH] Add slurm

---
 roles/slurmdb/handlers/main.yml          |  8 +++++
 roles/slurmdb/tasks/main.yml             | 13 +++++++
 roles/slurmdb/templates/slurmdb.sh.j2    |  4 +++
 roles/slurmdb/templates/slurmdbd.conf.j2 | 44 ++++++++++++++++++++++++
 4 files changed, 69 insertions(+)
 create mode 100644 roles/slurmdb/handlers/main.yml
 create mode 100644 roles/slurmdb/tasks/main.yml
 create mode 100644 roles/slurmdb/templates/slurmdb.sh.j2
 create mode 100644 roles/slurmdb/templates/slurmdbd.conf.j2

diff --git a/roles/slurmdb/handlers/main.yml b/roles/slurmdb/handlers/main.yml
new file mode 100644
index 0000000..cbbaae7
--- /dev/null
+++ b/roles/slurmdb/handlers/main.yml
@@ -0,0 +1,8 @@
+---
+  - name: restart slurmdbd
+    service: name={{ item }} state=restarted
+    with_items:
+      - slurmdbd
+      - slurm
+    sudo: true
+
diff --git a/roles/slurmdb/tasks/main.yml b/roles/slurmdb/tasks/main.yml
new file mode 100644
index 0000000..07d6bbe
--- /dev/null
+++ b/roles/slurmdb/tasks/main.yml
@@ -0,0 +1,13 @@
+---
+- name: create slurmdb user
+  user: name=slurmdb group=slurmdb system=yes createhome=no
+  sudo: true
+
+- name: install slurmdbd.conf
+  template: src=slurmdbd.conf.j2 dest=/etc/slurm/slurmdbd.conf
+  sudo: true
+
+- name: slurm db template 
+  template: src=slurmdb.sh.j2 dest=/etc/slurm/slurmdb.sh
+  sudo: true
+  notify: restart slurmdbd
diff --git a/roles/slurmdb/templates/slurmdb.sh.j2 b/roles/slurmdb/templates/slurmdb.sh.j2
new file mode 100644
index 0000000..1ce3a15
--- /dev/null
+++ b/roles/slurmdb/templates/slurmdb.sh.j2
@@ -0,0 +1,4 @@
+#!/bin/sh
+
+grant all privileges on slurm_acct_db.* to 'slurmdb'@\'{{ slurmctrl }}.{{ domain }}\' identified by \'{{ slurmDbPassword }}' with grant option;
+
diff --git a/roles/slurmdb/templates/slurmdbd.conf.j2 b/roles/slurmdb/templates/slurmdbd.conf.j2
new file mode 100644
index 0000000..fbc4a56
--- /dev/null
+++ b/roles/slurmdb/templates/slurmdbd.conf.j2
@@ -0,0 +1,44 @@
+#
+# Example slurmdbd.conf file.
+#
+# See the slurmdbd.conf man page for more information.
+#
+# Archive info
+#ArchiveJobs=yes
+#ArchiveDir="/tmp"
+#ArchiveSteps=yes
+#ArchiveScript=
+#JobPurge=12
+#StepPurge=1
+#
+# Authentication info
+AuthType=auth/munge
+#AuthInfo=/var/run/munge/munge.socket.2
+#
+# slurmDBD info
+DbdAddr={{ slurmctrlip }}
+DbdHost={{ slurmctrl }}
+#DbdPort=7031
+SlurmUser=slurm
+#MessageTimeout=300
+#DefaultQOS=normal,standby
+{% if slurmschedlog and slurmschedlogfile %}
+DebugLevel={{ slurmschedlog }}
+LogFile={{ slurmschedlogfile }}
+{% else %}
+#DebugLevel=
+#LogFile=
+{% endif %}
+PidFile=/var/run/slurmdbd.pid
+#PluginDir=/usr/lib/slurm
+#PrivateData=accounts,users,usage,jobs
+#TrackWCKey=yes
+#
+# Database info
+StorageType=accounting_storage/mysql
+StorageHost={{ slurmctrl }}
+#StoragePort=1234
+StoragePass=password
+StorageUser=slurmdb
+StorageLoc=slurm_acct_db
+
-- 
GitLab