Skip to content
30 changes: 19 additions & 11 deletions handlers/main.yml
Original file line number Diff line number Diff line change
@@ -1,16 +1,18 @@
---
- name: systemd reload
systemd:
daemon_reload: yes

- name: reload slurmd
- name: restart munge
service:
name: "{{ slurmd_service_name }}"
state: reloaded
when: "'slurmexechosts' in group_names or 'exec' in slurm_roles"
name: munge
state: restarted

- name: restart slurmd
- name: reload slurmdbd
service:
name: "{{ slurmd_service_name }}"
state: restarted
when: "'slurmexechosts' in group_names or 'exec' in slurm_roles"
name: "{{ slurmdbd_service_name }}"
state: reloaded
when: "'slurmdbdservers' in group_names or 'dbd' in slurm_roles"

- name: reload slurmctld
service:
Expand All @@ -24,8 +26,14 @@
state: restarted
when: "'slurmservers' in group_names or 'controller' in slurm_roles"

- name: reload slurmdbd
- name: reload slurmd
service:
name: "{{ slurmdbd_service_name }}"
name: "{{ slurmd_service_name }}"
state: reloaded
when: "'slurmdbdservers' in group_names or 'dbd' in slurm_roles"
when: "'slurmexechosts' in group_names or 'exec' in slurm_roles"

- name: restart slurmd
service:
name: "{{ slurmd_service_name }}"
state: restarted
when: "'slurmexechosts' in group_names or 'exec' in slurm_roles"
1 change: 1 addition & 0 deletions meta/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@ galaxy_info:
versions:
- jessie
- stretch
- buster
- name: Ubuntu
versions:
- xenial
Expand Down
1 change: 1 addition & 0 deletions tasks/munge.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@
group: munge
mode: 0400
when: slurm_munge_key is defined
notify: restart munge

- name: Ensure Munge is enabled and running
service:
Expand Down
29 changes: 29 additions & 0 deletions tasks/slurmctld.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,3 +24,32 @@
mode: 0755
state: directory
when: slurm_create_dirs and __slurm_config_merged.SlurmctldLogFile != omit

- name: 'Service slurmctld : Directory of Pidfile must exist and set slurm group permission'
lineinfile:
path: /lib/systemd/system/slurmctld.service
regexp: '{{ item.regexp }}'
line: "{{ item.line }}"
insertafter: '\[Service\]'
loop:
- line : 'RuntimeDirectory={{ __slurm_config_merged.SlurmctldPidFile.split("/")[-2] }}'
regexp : '^RuntimeDirectory'
- line : "Group={{ __slurm_group_name }}"
regexp : '^Group'
- line : 'RuntimeDirectoryMode=0770'
regexp : '^RuntimeDirectoryMode'
notify:
- systemd reload
- reload slurmdbd
when: ansible_distribution == 'Debian'

- name: Service slurmctld , option PIDFile
lineinfile:
path: /lib/systemd/system/slurmctld.service
regexp: 'PIDFile'
line: "PIDFile={{ __slurm_config_merged.SlurmctldPidFile }}"
insertafter: '\[Service\]'
when: __slurm_config_merged.SlurmctldPidFile is defined
notify:
- systemd reload
- reload slurmdbd
29 changes: 29 additions & 0 deletions tasks/slurmd.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,3 +38,32 @@
- name: cgroup.conf
config: slurm_cgroup_config
when: item.config in vars

- name: 'Service slurmd : Directory of Pidfile must exist and set slurm group permission'
lineinfile:
path: /lib/systemd/system/slurmd.service
regexp: '{{ item.regexp }}'
line: "{{ item.line }}"
insertafter: '\[Service\]'
loop:
- line : 'RuntimeDirectory={{ __slurm_config_merged.SlurmdPidFile.split("/")[-2] }}'
regexp : '^RuntimeDirectory'
- line : "Group={{ __slurm_group_name }}"
regexp : '^Group'
- line : 'RuntimeDirectoryMode=0770'
regexp : '^RuntimeDirectoryMode'
notify:
- systemd reload
- reload slurmdbd
when: ansible_distribution == 'Debian'

- name: Service slurmctld , option PIDFile
lineinfile:
path: /lib/systemd/system/slurmd.service
regexp: 'PIDFile'
line: "PIDFile={{ __slurm_config_merged.SlurmdPidFile }}"
insertafter: '\[Service\]'
when: __slurm_config_merged.SlurmdPidFile is defined
notify:
- systemd reload
- reload slurmdbd
34 changes: 33 additions & 1 deletion tasks/slurmdbd.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,13 @@
- name: Install slurmdbd.conf
template:
src: generic.conf.j2
dest: "{{ slurm_config_dir }}/slurmdbd.conf"
dest: "{{ slurm_config_dir }}/{{ item.name }}"
owner: "{{ __slurm_user_name }}"
group: root
mode: 0400
with_items:
- name: slurmdbd.conf
config: __slurmdbd_config_merged
notify:
- reload slurmdbd

Expand All @@ -23,3 +26,32 @@
mode: 0755
state: directory
when: slurm_create_dirs and __slurmdbd_config_merged.LogFile

- name: 'Service slurmdbd : Directory of Pidfile must exist and set slurm group permission'
lineinfile:
path: /lib/systemd/system/slurmdbd.service
regexp: '{{ item.regexp }}'
line: "{{ item.line }}"
insertafter: '\[Service\]'
loop:
- line : 'RuntimeDirectory={{ __slurmdbd_config_merged.PidFile.split("/")[-2] }}'
regexp : '^RuntimeDirectory'
- line : "Group={{ __slurm_group_name }}"
regexp : '^Group'
- line : 'RuntimeDirectoryMode=0770'
regexp : '^RuntimeDirectoryMode'
notify:
- systemd reload
- reload slurmdbd
when: ansible_distribution == 'Debian'

- name: Service slurmdbd , option PIDFile
lineinfile:
path: /lib/systemd/system/slurmdbd.service
regexp: 'PIDFile'
line: "PIDFile={{ __slurmdbd_config_merged.PidFile }}"
insertafter: '\[Service\]'
when: __slurmdbd_config_merged.PidFile is defined
notify:
- systemd reload
- reload slurmdbd