From 8c187dcaa23aaf39da5bce32c47445d89e700670 Mon Sep 17 00:00:00 2001 From: Chris Hines <chris.hines@monash.edu> Date: Tue, 16 Aug 2016 13:53:27 +1000 Subject: [PATCH] factor out all the directory creation for slurm into its own yml file for readability Former-commit-id: be3c0c5305afcf4ac8a21ce7f13d1ba5a223c132 --- .../tasks/createSlurmDirectories.yml | 55 +++++++++++++++ roles/slurm-common/tasks/main.yml | 67 ++----------------- 2 files changed, 59 insertions(+), 63 deletions(-) create mode 100644 roles/slurm-common/tasks/createSlurmDirectories.yml diff --git a/roles/slurm-common/tasks/createSlurmDirectories.yml b/roles/slurm-common/tasks/createSlurmDirectories.yml new file mode 100644 index 00000000..c8024350 --- /dev/null +++ b/roles/slurm-common/tasks/createSlurmDirectories.yml @@ -0,0 +1,55 @@ +--- +- name: make sure slurm conf dir exists + file: dest={{ slurm_dir }}/etc state=directory + sudo: true + +- name: make sure slurm lock dir exists + file: dest=/var/lock/subsys state=directory owner=root group=root mode=755 + sudo: true + +- name: create data directory + file: path={{ slurmdatadir }} state=directory owner=slurm group=slurm mode=755 + sudo: true + when: slurmdatadir is defined + +- name: stat run directory + stat: path={{ slurmpiddir }} + become_user: root + become: True + register: runstat + when: slurmpiddir is defined + +- name: create run directory + file: path={{ slurmpiddir }} state=directory owner=slurm group=slurm mode=755 + sudo: true + when: slurmpiddir is defined and not runstat.stat.exists + +- name: create shared state directory + file: path={{slurmsharedstatedir }} state=directory owner=slurm group=slurm mode=750 + sudo: true + run_once: true + when: usesharedstatedir is defined and usesharedstatedir + +- name: symlink shared state dir + file: path={{ slurmstatedir }} src={{ slurmsharedstatedir }} state=link + sudo: true + when: usesharedstatedir is defined and usesharedstatedir + +- name: create state directory + file: path={{ slurmstatedir }} state=directory owner=slurm group=slurm mode=750 + sudo: true + when: slurmstatedir is defined and not usesharedstatedir + +- name: create log directory + file: path={{ slurmlogdir }} state=directory owner=slurm group=slurm mode=750 + sudo: true + when: slurmlogdir is defined + +- name: make sure slurm conf dir exists + file: dest={{ slurm_dir }}/etc state=directory + sudo: true + +- name: create greps directory + file: path={{ slurm_dir }}/etc/gres state=directory owner=slurm group=slurm mode=755 + sudo: true + diff --git a/roles/slurm-common/tasks/main.yml b/roles/slurm-common/tasks/main.yml index 9f15c287..255948e1 100644 --- a/roles/slurm-common/tasks/main.yml +++ b/roles/slurm-common/tasks/main.yml @@ -15,59 +15,7 @@ user: name=slurm group=slurm system=yes createhome=no uid=497 sudo: true -- name: make sure slurm conf dir exists - file: dest={{ slurm_dir }}/etc state=directory - sudo: true - -- name: make sure slurm lock dir exists - file: dest=/var/lock/subsys state=directory owner=root group=root mode=755 - sudo: true - -- name: create data directory - file: path={{ slurmdatadir }} state=directory owner=slurm group=slurm mode=755 - sudo: true - when: slurmdatadir is defined - -- name: stat run directory - stat: path={{ slurmpiddir }} - become_user: root - become: True - register: runstat - when: slurmpiddir is defined - -- name: create run directory - file: path={{ slurmpiddir }} state=directory owner=slurm group=slurm mode=755 - sudo: true - when: slurmpiddir is defined and not runstat.stat.exists - -- name: create shared state directory - file: path={{slurmsharedstatedir }} state=directory owner=slurm group=slurm mode=750 - sudo: true - run_once: true - when: usesharedstatedir is defined and usesharedstatedir - -- name: symlink shared state dir - file: path={{ slurmstatedir }} src={{ slurmsharedstatedir }} state=link - sudo: true - when: usesharedstatedir is defined and usesharedstatedir - -- name: create state directory - file: path={{ slurmstatedir }} state=directory owner=slurm group=slurm mode=750 - sudo: true - when: slurmstatedir is defined and not usesharedstatedir - -- name: create log directory - file: path={{ slurmlogdir }} state=directory owner=slurm group=slurm mode=750 - sudo: true - when: slurmlogdir is defined - -- name: make sure slurm conf dir exists - file: dest={{ slurm_dir }}/etc state=directory - sudo: true - -- name: create greps directory - file: path={{ slurm_dir }}/etc/gres state=directory owner=slurm group=slurm mode=755 - sudo: true +- include: createSlurmDirectories.yml - name: install deps yum: name={{ item }} state=present @@ -128,14 +76,7 @@ - include: installSlurmFromSource.yml -- name: make sure slurm conf dir exists - file: dest={{ slurm_dir }}/etc state=directory - sudo: true - -- name: create greps directory - file: path={{ slurm_dir }}/etc/gres state=directory owner=slurm group=slurm mode=755 - sudo: true - +- include: createSlurmDirectories.yml - name: check slurm generic resource shell: "{{ slurm_gres_check }}" @@ -144,13 +85,13 @@ when: slurm_gres_check is defined - name: Gres - Test for Nvidia devices - script: ./nvidia-probe.py + script: scripts/nvidia-probe.py register: probeOutput - set_fact: slurm_gres_list= "[ ]" - name: "set nvidiaprobe slurm_gres_list" - set_fact: slurm_gres_list={{ probeOutput.stdout | from_json }} + set_fact: "slurm_gres_list={{ probeOutput.stdout | from_json }}" when: probeOutput.stdout is defined and ( probeOutput.stdout|length !=0 ) - name: template gres.conf file -- GitLab