ansible_slurm/tasks/slurmd.yml

70 lines
1.9 KiB
YAML

---
- name: Install Slurm execution host packages
package:
name: "{{ __slurm_packages.slurmd }}"
state: "{{ 'latest' if slurm_upgrade else 'present' }}"
- name: Create slurm spool directory
file:
path: "{{ __slurm_config_merged.SlurmdSpoolDir }}"
owner: root
group: root
mode: 0755
state: directory
when: slurm_create_dirs
notify:
- reload slurmd
- name: Create slurm log directory
file:
path: "{{ __slurm_config_merged.SlurmdLogFile | dirname }}"
owner: "{{ __slurm_user_name }}"
group: "{{ __slurm_group_name }}"
mode: 0755
state: directory
when: slurm_create_dirs and __slurm_config_merged.SlurmdLogFile != omit
- name: Include config dir creation tasks
include_tasks: _inc_create_config_dir.yml
when: slurm_create_dirs
- name: Install extra execution host configs
template:
src: generic.conf.j2
dest: "{{ slurm_config_dir }}/{{ item.name }}"
backup: yes
with_items:
- 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