From 56575ff08292c08b7b3f949f3c6e97cba5e548e7 Mon Sep 17 00:00:00 2001
From: Chris Hines <chris.hines@monash.edu>
Date: Fri, 24 Jul 2015 09:12:23 +0000
Subject: [PATCH] rearrange slurm roles a bit

---
 .../tasks/main.yml                            |   0
 .../defaults/main.yml                         |   0
 .../handlers/main.yml                         |   0
 .../tasks/installCgroup.yml                   |   0
 .../tasks/installMungeFromSource.yml          |   0
 .../tasks/installNhc.yml                      |   0
 .../tasks/installSlurmFromSource.yml          |   0
 .../tasks/main.yml                            |   0
 .../templates/cgroup.conf.j2                  |   0
 .../templates/cgroup_allowed_devices.conf.j2  |   0
 .../templates/gres.conf.j2                    |   0
 .../templates/gres_sub.conf.j2                |   0
 .../templates/job_submit.lua.j2               |   0
 .../templates/munge.initd.j2                  |   0
 .../templates/munge_key.j2                    |   0
 .../templates/nhc.sysconfig.j2                |   0
 .../templates/nhc_cron.j2                     |   0
 .../templates/nhclog.j2                       |   0
 .../templates/slurm-vpn.conf.j2               |   0
 .../templates/slurm.conf.j2                   |   0
 .../templates/slurm.initd.j2                  |   0
 .../templates/slurm_setup.sh.j2               |   0
 roles/{slurmdb => slurm-sql}/tasks/main.yml   |  32 +---
 roles/slurm/defaults/main.yml                 |  12 --
 roles/slurm/handlers/main.yml                 |  18 ---
 roles/slurm/tasks/main.yml                    | 100 -------------
 roles/slurm/templates/munge_key.j2            |   1 -
 roles/slurm/templates/slurm-vpn.conf.j2       | 109 --------------
 roles/slurm/templates/slurm.conf.j2           | 141 ------------------
 .../handlers/main.yml                         |   0
 roles/slurmdb-config/tasks/main.yml           |  37 +++++
 .../templates/slurmdbd.conf.j2                |   0
 .../templates/slurmdbd.initd.j2               |   0
 33 files changed, 38 insertions(+), 412 deletions(-)
 rename roles/{slurm-build => slurm-build-rpms}/tasks/main.yml (100%)
 rename roles/{slurm-from-source => slurm-common}/defaults/main.yml (100%)
 rename roles/{slurm-from-source => slurm-common}/handlers/main.yml (100%)
 rename roles/{slurm-from-source => slurm-common}/tasks/installCgroup.yml (100%)
 rename roles/{slurm-from-source => slurm-common}/tasks/installMungeFromSource.yml (100%)
 rename roles/{slurm-from-source => slurm-common}/tasks/installNhc.yml (100%)
 rename roles/{slurm-from-source => slurm-common}/tasks/installSlurmFromSource.yml (100%)
 rename roles/{slurm-from-source => slurm-common}/tasks/main.yml (100%)
 rename roles/{slurm-from-source => slurm-common}/templates/cgroup.conf.j2 (100%)
 rename roles/{slurm-from-source => slurm-common}/templates/cgroup_allowed_devices.conf.j2 (100%)
 rename roles/{slurm-from-source => slurm-common}/templates/gres.conf.j2 (100%)
 rename roles/{slurm-from-source => slurm-common}/templates/gres_sub.conf.j2 (100%)
 rename roles/{slurm-from-source => slurm-common}/templates/job_submit.lua.j2 (100%)
 rename roles/{slurm-from-source => slurm-common}/templates/munge.initd.j2 (100%)
 rename roles/{slurm-from-source => slurm-common}/templates/munge_key.j2 (100%)
 rename roles/{slurm-from-source => slurm-common}/templates/nhc.sysconfig.j2 (100%)
 rename roles/{slurm-from-source => slurm-common}/templates/nhc_cron.j2 (100%)
 rename roles/{slurm-from-source => slurm-common}/templates/nhclog.j2 (100%)
 rename roles/{slurm-from-source => slurm-common}/templates/slurm-vpn.conf.j2 (100%)
 rename roles/{slurm-from-source => slurm-common}/templates/slurm.conf.j2 (100%)
 rename roles/{slurm-from-source => slurm-common}/templates/slurm.initd.j2 (100%)
 rename roles/{slurm-from-source => slurm-common}/templates/slurm_setup.sh.j2 (100%)
 rename roles/{slurmdb => slurm-sql}/tasks/main.yml (64%)
 delete mode 100644 roles/slurm/defaults/main.yml
 delete mode 100644 roles/slurm/handlers/main.yml
 delete mode 100644 roles/slurm/tasks/main.yml
 delete mode 100644 roles/slurm/templates/munge_key.j2
 delete mode 100644 roles/slurm/templates/slurm-vpn.conf.j2
 delete mode 100644 roles/slurm/templates/slurm.conf.j2
 rename roles/{slurmdb => slurmdb-config}/handlers/main.yml (100%)
 create mode 100644 roles/slurmdb-config/tasks/main.yml
 rename roles/{slurmdb => slurmdb-config}/templates/slurmdbd.conf.j2 (100%)
 rename roles/{slurmdb => slurmdb-config}/templates/slurmdbd.initd.j2 (100%)

diff --git a/roles/slurm-build/tasks/main.yml b/roles/slurm-build-rpms/tasks/main.yml
similarity index 100%
rename from roles/slurm-build/tasks/main.yml
rename to roles/slurm-build-rpms/tasks/main.yml
diff --git a/roles/slurm-from-source/defaults/main.yml b/roles/slurm-common/defaults/main.yml
similarity index 100%
rename from roles/slurm-from-source/defaults/main.yml
rename to roles/slurm-common/defaults/main.yml
diff --git a/roles/slurm-from-source/handlers/main.yml b/roles/slurm-common/handlers/main.yml
similarity index 100%
rename from roles/slurm-from-source/handlers/main.yml
rename to roles/slurm-common/handlers/main.yml
diff --git a/roles/slurm-from-source/tasks/installCgroup.yml b/roles/slurm-common/tasks/installCgroup.yml
similarity index 100%
rename from roles/slurm-from-source/tasks/installCgroup.yml
rename to roles/slurm-common/tasks/installCgroup.yml
diff --git a/roles/slurm-from-source/tasks/installMungeFromSource.yml b/roles/slurm-common/tasks/installMungeFromSource.yml
similarity index 100%
rename from roles/slurm-from-source/tasks/installMungeFromSource.yml
rename to roles/slurm-common/tasks/installMungeFromSource.yml
diff --git a/roles/slurm-from-source/tasks/installNhc.yml b/roles/slurm-common/tasks/installNhc.yml
similarity index 100%
rename from roles/slurm-from-source/tasks/installNhc.yml
rename to roles/slurm-common/tasks/installNhc.yml
diff --git a/roles/slurm-from-source/tasks/installSlurmFromSource.yml b/roles/slurm-common/tasks/installSlurmFromSource.yml
similarity index 100%
rename from roles/slurm-from-source/tasks/installSlurmFromSource.yml
rename to roles/slurm-common/tasks/installSlurmFromSource.yml
diff --git a/roles/slurm-from-source/tasks/main.yml b/roles/slurm-common/tasks/main.yml
similarity index 100%
rename from roles/slurm-from-source/tasks/main.yml
rename to roles/slurm-common/tasks/main.yml
diff --git a/roles/slurm-from-source/templates/cgroup.conf.j2 b/roles/slurm-common/templates/cgroup.conf.j2
similarity index 100%
rename from roles/slurm-from-source/templates/cgroup.conf.j2
rename to roles/slurm-common/templates/cgroup.conf.j2
diff --git a/roles/slurm-from-source/templates/cgroup_allowed_devices.conf.j2 b/roles/slurm-common/templates/cgroup_allowed_devices.conf.j2
similarity index 100%
rename from roles/slurm-from-source/templates/cgroup_allowed_devices.conf.j2
rename to roles/slurm-common/templates/cgroup_allowed_devices.conf.j2
diff --git a/roles/slurm-from-source/templates/gres.conf.j2 b/roles/slurm-common/templates/gres.conf.j2
similarity index 100%
rename from roles/slurm-from-source/templates/gres.conf.j2
rename to roles/slurm-common/templates/gres.conf.j2
diff --git a/roles/slurm-from-source/templates/gres_sub.conf.j2 b/roles/slurm-common/templates/gres_sub.conf.j2
similarity index 100%
rename from roles/slurm-from-source/templates/gres_sub.conf.j2
rename to roles/slurm-common/templates/gres_sub.conf.j2
diff --git a/roles/slurm-from-source/templates/job_submit.lua.j2 b/roles/slurm-common/templates/job_submit.lua.j2
similarity index 100%
rename from roles/slurm-from-source/templates/job_submit.lua.j2
rename to roles/slurm-common/templates/job_submit.lua.j2
diff --git a/roles/slurm-from-source/templates/munge.initd.j2 b/roles/slurm-common/templates/munge.initd.j2
similarity index 100%
rename from roles/slurm-from-source/templates/munge.initd.j2
rename to roles/slurm-common/templates/munge.initd.j2
diff --git a/roles/slurm-from-source/templates/munge_key.j2 b/roles/slurm-common/templates/munge_key.j2
similarity index 100%
rename from roles/slurm-from-source/templates/munge_key.j2
rename to roles/slurm-common/templates/munge_key.j2
diff --git a/roles/slurm-from-source/templates/nhc.sysconfig.j2 b/roles/slurm-common/templates/nhc.sysconfig.j2
similarity index 100%
rename from roles/slurm-from-source/templates/nhc.sysconfig.j2
rename to roles/slurm-common/templates/nhc.sysconfig.j2
diff --git a/roles/slurm-from-source/templates/nhc_cron.j2 b/roles/slurm-common/templates/nhc_cron.j2
similarity index 100%
rename from roles/slurm-from-source/templates/nhc_cron.j2
rename to roles/slurm-common/templates/nhc_cron.j2
diff --git a/roles/slurm-from-source/templates/nhclog.j2 b/roles/slurm-common/templates/nhclog.j2
similarity index 100%
rename from roles/slurm-from-source/templates/nhclog.j2
rename to roles/slurm-common/templates/nhclog.j2
diff --git a/roles/slurm-from-source/templates/slurm-vpn.conf.j2 b/roles/slurm-common/templates/slurm-vpn.conf.j2
similarity index 100%
rename from roles/slurm-from-source/templates/slurm-vpn.conf.j2
rename to roles/slurm-common/templates/slurm-vpn.conf.j2
diff --git a/roles/slurm-from-source/templates/slurm.conf.j2 b/roles/slurm-common/templates/slurm.conf.j2
similarity index 100%
rename from roles/slurm-from-source/templates/slurm.conf.j2
rename to roles/slurm-common/templates/slurm.conf.j2
diff --git a/roles/slurm-from-source/templates/slurm.initd.j2 b/roles/slurm-common/templates/slurm.initd.j2
similarity index 100%
rename from roles/slurm-from-source/templates/slurm.initd.j2
rename to roles/slurm-common/templates/slurm.initd.j2
diff --git a/roles/slurm-from-source/templates/slurm_setup.sh.j2 b/roles/slurm-common/templates/slurm_setup.sh.j2
similarity index 100%
rename from roles/slurm-from-source/templates/slurm_setup.sh.j2
rename to roles/slurm-common/templates/slurm_setup.sh.j2
diff --git a/roles/slurmdb/tasks/main.yml b/roles/slurm-sql/tasks/main.yml
similarity index 64%
rename from roles/slurmdb/tasks/main.yml
rename to roles/slurm-sql/tasks/main.yml
index f238b60..954d595 100644
--- a/roles/slurmdb/tasks/main.yml
+++ b/roles/slurm-sql/tasks/main.yml
@@ -1,21 +1,16 @@
----
+
 - name: install deps in control node
   yum: name={{ item }} state=installed
   sudo: true
   with_items:
-    - mysql
     - 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"
@@ -32,21 +27,6 @@
   mysql_user: check_implicit_admin=True login_user=root login_password={{ sqlrootPasswd }} name=root password={{ sqlrootPasswd }} state=present
   sudo: true
 
-- name: install slurmdbd init
-  template: src=slurmdbd.initd.j2 dest=/etc/init.d/slurmdbd mode=755
-  sudo: true
-
-- name: install slurmdb.conf init
-  template: src=slurmdbd.conf.j2 dest={{ slurm_dir }}/etc/slurmdbd.conf
-  sudo: true
-  when: slurm_dir is defined
-
-
-- name: install slurmdbd.conf
-  template: src=slurmdbd.conf.j2 dest=/etc/slurm/slurmdbd.conf
-  sudo: true
-  when: slurm_dir is not defined
-
 - name: configure database slurmdb localhost
   mysql_user: login_user=root login_password="{{ sqlrootPasswd }}" name=slurmdb password="{{ slurmdb_passwd }}" host=localhost priv=*.*:ALL,GRANT state=present
   sudo: true
@@ -54,13 +34,3 @@
 - name: configure database slurmdb domain 
   mysql_user: login_user=root login_password="{{ sqlrootPasswd }}" name=slurmdb password="{{ slurmdb_passwd }}" host="{{ ansible_hostname }}"."{{ ansible_domain }}" priv=*.*:ALL,GRANT state=present
   sudo: true
-
-- name: sanity check slrumdbd service
-  service: "name=slurmdbd enabled=yes state=started"
-  sudo: true
-
-- name: sanity check slurm service
-  service: "name=slurm enabled=yes state=started"
-  sudo: true
-
-
diff --git a/roles/slurm/defaults/main.yml b/roles/slurm/defaults/main.yml
deleted file mode 100644
index 362d9cf..0000000
--- a/roles/slurm/defaults/main.yml
+++ /dev/null
@@ -1,12 +0,0 @@
----
-slurm_use_vpn: False 
-slurmctlddebug: {level: 9, log: '/var/log/slurm/slurmctld.log'}
-slurmddebug: {level: 9, log: '/var/log/slurm/slurmd.log'}
-slurmschedlog: {level: 9, log: '/var/log/slurm/slurmsched.log'}
-slurmdbdlog: {level: 9, log: '/var/log/slurm/slurmdbd.log'}
-slurmfairshare: {def: false, val: 10000}
-slurmdatadir: "/var/spool/slurm"
-slurmselecttype: "select/linear"
-slurmfastschedule: "1"
-slurmschedulertype: "sched/backfill"
-
diff --git a/roles/slurm/handlers/main.yml b/roles/slurm/handlers/main.yml
deleted file mode 100644
index 57f0cb1..0000000
--- a/roles/slurm/handlers/main.yml
+++ /dev/null
@@ -1,18 +0,0 @@
----
-  - name: restart munge
-    service: name=munge state=restarted
-    sudo: true
-
-  - name: restart slurm
-    service: name=slurm state=restarted
-    sudo: true
-
-  - name: restart slurmdbd
-    service: name=slurmdbd state=restarted
-    sudo: true
-
-  - name: scontrol reconfigure
-    shell: sleep 10 ; scontrol reconfigure
-    sudo: true
-    delegate_to: "{{ slurmctrl }}"
-    run_once: true
diff --git a/roles/slurm/tasks/main.yml b/roles/slurm/tasks/main.yml
deleted file mode 100644
index b34568d..0000000
--- a/roles/slurm/tasks/main.yml
+++ /dev/null
@@ -1,100 +0,0 @@
----
-
-- name: create slurm group
-  group: name=slurm system=yes gid=497
-  sudo: true
-
-- name: create slurm user
-  user: name=slurm group=slurm system=yes createhome=no uid=497
-  sudo: true
-
-- name: make sure slurm conf dir exists
-  file: dest=/etc/slurm state=directory
-  sudo: true
-
-- name: create data directory
-  file: path="{{ slurmdatadir }}" state=directory owner=slurm group=slurm mode=755 
-  sudo: true
-
-- name: create log directory
-  shell: mkdir -p {{ slurmddebug.log | dirname }}; chown slurm:slurm {{ slurmddebug.log | dirname }} 
-  args:
-    creates: "{{ slurmddebug.log | dirname }}"
-  sudo: true
-  when: slurmddebug is defined and slurmddebug.log
-
-- name: copy rpms
-  copy: src=/tmp/rpmbuild dest=/tmp
-  sudo: true
-
-- name: install munge rpms
-  shell: "rpm --install /tmp/rpmbuild/RPMS/x86_64/munge*{{ munge_version }}*rpm"
-  sudo: true
-  ignore_errors: true
-  when: ansible_os_family == "RedHat"
-
-- name: install deps
-  apt: name={{ item }} state=installed update_cache=yes
-  sudo: true
-  with_items:
-    - gcc
-    - wget
-    - libssl-dev
-    - libpam0g-dev
-    - libbz2-dev
-    - make
-    - alien
-  when: ansible_os_family == "Debian"
-
-- include: installMungeFromSource.yml
-  when: ansible_os_family == "Debian"
-
-- name: install munge key
-  template: src=munge_key.j2 dest=/etc/munge/munge.key owner=munge mode=600
-  sudo: true
-  notify: restart munge
-
-- name: install perl
-  yum: name={{ item }} state=latest
-  with_items:
-    - perl
-    - perl-DBI
-  sudo: true
-  when: ansible_os_family == "RedHat"
-
-- name: install perl
-  apt: name={{ item }} state=latest
-  with_items:
-    - perl
-    - libdbi-perl
-  sudo: true
-  when: ansible_os_family == "Debian"
-
-
-- include: installSlurmFromSource.yml
-  when: ansible_os_family == "Debian"
-
-- name: install slurm rpms
-  shell: "rpm --install /tmp/rpmbuild/RPMS/x86_64/slurm*{{ slurm_version }}*rpm"
-  sudo: true
-  ignore_errors: true
-  when: ansible_os_family == "RedHat"
-
-- name: install slurm.conf
-  template: src=slurm.conf.j2 dest=/etc/slurm/slurm.conf
-  sudo: true
-  when: slurm_use_vpn==False
-
-- name: install slurm.conf
-  template: src=slurm-vpn.conf.j2 dest=/etc/slurm/slurm.conf
-  sudo: true
-  when: slurm_use_vpn==True
-
-
-- name: start munge
-  service: name=munge state=started
-  sudo: true
-
-- name: start slurm
-  service: name=slurm state=started
-  sudo: true
diff --git a/roles/slurm/templates/munge_key.j2 b/roles/slurm/templates/munge_key.j2
deleted file mode 100644
index 83d3483..0000000
--- a/roles/slurm/templates/munge_key.j2
+++ /dev/null
@@ -1 +0,0 @@
-{{ mungekey }}
diff --git a/roles/slurm/templates/slurm-vpn.conf.j2 b/roles/slurm/templates/slurm-vpn.conf.j2
deleted file mode 100644
index 671840e..0000000
--- a/roles/slurm/templates/slurm-vpn.conf.j2
+++ /dev/null
@@ -1,109 +0,0 @@
-#
-# Example slurm.conf file. Please run configurator.html
-# (in doc/html) to build a configuration file customized
-# for your environment.
-#
-#
-# slurm.conf file generated by configurator.html.
-#
-# See the slurm.conf man page for more information.
-#
-ClusterName=CIAB
-ControlMachine={{ slurmctrl }}
-ControlAddr={{ slurmctrl }}-vpn
-#BackupController=
-#BackupAddr=
-#
-SlurmUser=slurm
-#SlurmdUser=root
-SlurmctldPort=6817
-SlurmdPort=6818
-AuthType=auth/munge
-#JobCredentialPrivateKey=
-#JobCredentialPublicCertificate=
-StateSaveLocation=/tmp
-SlurmdSpoolDir=/tmp/slurmd
-SwitchType=switch/none
-MpiDefault=none
-SlurmctldPidFile=/var/run/slurmctld.pid
-SlurmdPidFile=/var/run/slurmd.pid
-ProctrackType=proctrack/pgid
-#PluginDir=
-CacheGroups=0
-#FirstJobId=
-ReturnToService=0
-#MaxJobCount=
-#PlugStackConfig=
-#PropagatePrioProcess=
-#PropagateResourceLimits=
-#PropagateResourceLimitsExcept=
-#Prolog=
-#Epilog=
-#SrunProlog=
-#SrunEpilog=
-#TaskProlog=
-#TaskEpilog=
-#TaskPlugin=
-#TrackWCKey=no
-#TreeWidth=50
-#TmpFS=
-#UsePAM=
-#
-# TIMERS
-SlurmctldTimeout=300
-SlurmdTimeout=300
-InactiveLimit=0
-MinJobAge=300
-KillWait=30
-Waittime=0
-#
-# SCHEDULING
-SchedulerType=sched/backfill
-#SchedulerAuth=
-#SchedulerPort=
-#SchedulerRootFilter=
-SelectType=select/linear
-FastSchedule=1
-#PriorityType=priority/multifactor
-#PriorityDecayHalfLife=14-0
-#PriorityUsageResetPeriod=14-0
-#PriorityWeightFairshare=100000
-#PriorityWeightAge=1000
-#PriorityWeightPartition=10000
-#PriorityWeightJobSize=1000
-#PriorityMaxAge=1-0
-#
-# LOGGING
-SlurmctldDebug=3
-#SlurmctldLogFile=
-SlurmdDebug=3
-#SlurmdLogFile=
-JobCompType=jobcomp/none
-#JobCompLoc=
-#
-# ACCOUNTING
-#JobAcctGatherType=jobacct_gather/linux
-#JobAcctGatherFrequency=30
-#
-#AccountingStorageType=accounting_storage/slurmdbd
-#AccountingStorageHost=
-#AccountingStorageLoc=
-#AccountingStoragePass=
-#AccountingStorageUser=
-#
-MpiParams=ports=12000-12999
-# COMPUTE NODES
-{% set nodelist = [] %}
-{% for queue in slurmqueues %}
-{% for node in groups[queue.group] %}
-{% if nodelist.append(node) %}
-{% endif %}
-{% endfor %}
-{% endfor %}
-{% for node in nodelist|unique %}
-NodeName={{ node }} NodeAddr={{ node }}-vpn Procs={{ hostvars[node]['ansible_processor_cores'] }} State=UNKNOWN
-{% endfor %}
-
-{% for queue in slurmqueues %}
-PartitionName={{ queue.name }} {% if queue.default %}Default=yes{% endif %} Nodes={{ groups[queue.group]|join(',') }}
-{% endfor %}
diff --git a/roles/slurm/templates/slurm.conf.j2 b/roles/slurm/templates/slurm.conf.j2
deleted file mode 100644
index b8d0753..0000000
--- a/roles/slurm/templates/slurm.conf.j2
+++ /dev/null
@@ -1,141 +0,0 @@
-#
-# Example slurm.conf file. Please run configurator.html
-# (in doc/html) to build a configuration file customized
-# for your environment.
-#
-#
-# slurm.conf file generated by configurator.html.
-#
-# See the slurm.conf man page for more information.
-#
-ClusterName={{ clustername }}
-ControlMachine={{ slurmctrl }}
-#ControlAddr=
-#BackupController=
-#BackupAddr=
-#
-SlurmUser=slurm
-SlurmdUser=root
-SlurmctldPort=6817
-SlurmdPort=6818
-AuthType=auth/munge
-#JobCredentialPrivateKey=
-#JobCredentialPublicCertificate=
-StateSaveLocation={{ slurmdatadir }}
-SlurmdSpoolDir={{ slurmdatadir }} 
-SwitchType=switch/none
-MpiDefault=none
-SlurmctldPidFile=/var/run/slurmctld.pid
-SlurmdPidFile=/var/run/slurmd.pid
-ProctrackType=proctrack/pgid
-#PluginDir=
-CacheGroups=0
-#FirstJobId=
-ReturnToService=0
-#MaxJobCount=
-#PlugStackConfig=
-#PropagatePrioProcess=
-#PropagateResourceLimits=
-#PropagateResourceLimitsExcept=
-#Prolog=
-#Epilog=
-#SrunProlog=
-#SrunEpilog=
-#TaskProlog=
-#TaskEpilog=
-#TaskPlugin=
-#TrackWCKey=no
-#TreeWidth=50
-#TmpFS=
-#UsePAM=
-#
-# TIMERS
-SlurmctldTimeout=300
-SlurmdTimeout=300
-InactiveLimit=0
-MinJobAge=300
-KillWait=30
-Waittime=0
-#
-# SCHEDULING
-SchedulerType={{ slurmschedulertype }}
-#SchedulerAuth=
-#SchedulerPort=
-#SchedulerRootFilter=
-SelectType={{ slurmselecttype }}
-FastSchedule={{ slurmfastschedule }}
-#PriorityType=priority/multifactor
-#PriorityDecayHalfLife=14-0
-#PriorityUsageResetPeriod=14-0
-#PriorityWeightFairshare=100000
-#PriorityWeightAge=1000
-#PriorityWeightPartition=10000
-#PriorityWeightJobSize=1000
-#PriorityMaxAge=1-0
-#
-# LOGGING
-{% if slurmctlddebug %}
-SlurmctldDebug={{ slurmctlddebug.level }}
-SlurmctldLogFile={{ slurmctlddebug.log }}
-{% else %}
-#SlurmctldDebug=
-#SlurmctldLogFile=
-{% endif %}
-{% if slurmddebug %}
-SlurmdDebug={{ slurmddebug.level }}
-SlurmdLogFile={{ slurmddebug.log }}
-{% else %}
-#SlurmdDebug=
-#SlurmdLogFile=
-{% endif %}
-{% if slurmschedlog %}
-SlurmSchedlogLevel={{ slurmschedlog.level }}
-SlurmSchedLogFile={{ slurmschedlog.log }}
-{% else %}
-#SlurmSchedlogLevel=
-#SlurmSchedLogFile=
-{% endif %}
-JobCompType=jobcomp/none
-#JobCompLoc=
-#
-{% if slurmjob %}
-Prolog={{ slurmjob.prolog }}
-Epilog={{ slurmjob.epilog }}
-{% endif %}
-#
-# ACCOUNTING
-#JobAcctGatherType=jobacct_gather/linux
-#JobAcctGatherFrequency=30
-#
-AccountingStorageType=accounting_storage/slurmdbd
-AccountingStorageHost={{ slurmctrl }}
-#AccountingStorageEnforce=limits,safe
-#AccountingStorageLoc=
-#AccountingStoragePass=
-#AccountingStorageUser=
-#
-#GRES
-#GresTypes=gpu
-
-# Fair share
-{% if slurmfairshare.def %}
-PriorityWeightFairshare={{ slurmfairshare.val }}
-{% endif %}
-
-DisableRootJobs=YES
-MpiParams=ports=12000-12999
-# COMPUTE NODES
-{% set nodelist = [] %}
-{% for queue in slurmqueues %}
-{% for node in groups[queue.group] %}
-{% if nodelist.append(node) %}
-{% endif %}
-{% endfor %}
-{% endfor %}
-{% for node in nodelist|unique %}
-NodeName={{ node }} Procs={{ hostvars[node]['ansible_processor_vcpus'] }} 
-{% endfor %}
-
-{% for queue in slurmqueues %}
-PartitionName={{ queue.name }} {% if queue.default %}Default=yes{% endif %} Nodes={{ groups[queue.group]|join(',') }}
-{% endfor %}
diff --git a/roles/slurmdb/handlers/main.yml b/roles/slurmdb-config/handlers/main.yml
similarity index 100%
rename from roles/slurmdb/handlers/main.yml
rename to roles/slurmdb-config/handlers/main.yml
diff --git a/roles/slurmdb-config/tasks/main.yml b/roles/slurmdb-config/tasks/main.yml
new file mode 100644
index 0000000..8d9fbd0
--- /dev/null
+++ b/roles/slurmdb-config/tasks/main.yml
@@ -0,0 +1,37 @@
+---
+- name: install deps in control node
+  yum: name={{ item }} state=installed
+  sudo: true
+  with_items:
+    - mysql
+    - 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
+    - python-mysqldb
+  when: ansible_os_family == "Debian"
+
+- name: install slurmdbd init
+  template: src=slurmdbd.initd.j2 dest=/etc/init.d/slurmdbd mode=755
+  sudo: true
+
+- name: install slurmdb.conf init
+  template: src=slurmdbd.conf.j2 dest={{ slurm_dir }}/etc/slurmdbd.conf
+  sudo: true
+  when: slurm_dir is defined
+
+
+- name: install slurmdbd.conf
+  template: src=slurmdbd.conf.j2 dest=/etc/slurm/slurmdbd.conf
+  sudo: true
+  when: slurm_dir is not defined
+
+- name: sanity check slurmdbd service
+  service: "name=slurmdbd enabled=yes state=started"
+  sudo: true
+
diff --git a/roles/slurmdb/templates/slurmdbd.conf.j2 b/roles/slurmdb-config/templates/slurmdbd.conf.j2
similarity index 100%
rename from roles/slurmdb/templates/slurmdbd.conf.j2
rename to roles/slurmdb-config/templates/slurmdbd.conf.j2
diff --git a/roles/slurmdb/templates/slurmdbd.initd.j2 b/roles/slurmdb-config/templates/slurmdbd.initd.j2
similarity index 100%
rename from roles/slurmdb/templates/slurmdbd.initd.j2
rename to roles/slurmdb-config/templates/slurmdbd.initd.j2
-- 
GitLab