From 598e2735ad5fdcf27d20a516802f9e3899fcdfda Mon Sep 17 00:00:00 2001
From: Simon Michnowicz <simon.michnow@monash.edu>
Date: Thu, 26 Oct 2023 15:17:24 +1100
Subject: [PATCH] modified to support Rocky for OOD node

---
 .../tasks/installSlurmFromSource.yml          | 25 ++++++++++++++++++-
 1 file changed, 24 insertions(+), 1 deletion(-)

diff --git a/roles/slurm-common/tasks/installSlurmFromSource.yml b/roles/slurm-common/tasks/installSlurmFromSource.yml
index ab32c088..ace663af 100644
--- a/roles/slurm-common/tasks/installSlurmFromSource.yml
+++ b/roles/slurm-common/tasks/installSlurmFromSource.yml
@@ -109,8 +109,28 @@
   when:
     - ansible_os_family == 'Debian'
 
-- name: configure slurm
+- name: install pmix for Rocky
+  yum:
+    name: "{{ item }}"
+  loop:
+    - pmix
+    - pmix-devel
+    - json-c
+    - json-c-devel
+    - libyaml
+    - libyaml-devel
+  become: true
+  when: ( ansible_distribution == "Rocky" )
+
+- name: configure slurm when NOT Rocky
   command: "{{ slurm_src_dir }}/configure --prefix={{ slurm_dir }} --with-munge={{ munge_dir }} --enable-pam --with-pmix={{ pmix_dir }} --with-ucx={{ ucx_dir }}"
+  args:
+    creates: "{{ slurm_dir }}/bin/srun"
+    chdir: "{{ slurm_src_dir }}"
+  when: ( ansible_distribution != "Rocky" )
+
+- name: configure slurm when Rocky
+  command: "{{ slurm_src_dir }}/configure --prefix={{ slurm_dir }} --with-munge={{ munge_dir }} --enable-pam --with-pmix --with-ucx={{ ucx_dir }} --with-json --with-yaml --with-hwloc --without-rsmi"
   args:
     creates: "{{ slurm_dir }}/bin/srun"
     chdir: "{{ slurm_src_dir }}"
@@ -118,6 +138,8 @@
   #      LD_LIBRARY_PATH: /lustre/usr_local/hpcx/2.7.0-redhat7.7/ucx/lib
   when:
     - force_slurm_recompile is defined or not stat_srun.stat.exists
+    -  ( ansible_distribution == "Rocky" )
+  become: true
 
 - name: build slurm
   command: make
@@ -125,6 +147,7 @@
     creates: "{{ slurm_dir }}/bin/srun"
     chdir: "{{ slurm_src_dir }}"
   when: force_slurm_recompile is defined or not stat_srun.stat.exists
+  become: true
 
 - name: install slurm
   shell: make install
-- 
GitLab