From e5e17ea7fda7b55892966896def9eda64eee4b18 Mon Sep 17 00:00:00 2001
From: Chris Hines <chris.hines@monash.edu>
Date: Tue, 2 Aug 2016 06:40:55 +0000
Subject: [PATCH] add role enable_modules (and remove enable_lmod) use
 enable_modules to select either lmod or modulecmd being source from
 /etc/profile.d on Login and Compute nodes

---
 roles/enable_modules/tasks/main.yml  | 80 +++++++++++++++++-----------
 roles/enable_modules/vars/Debian.yml |  2 -
 roles/enable_modules/vars/RedHat.yml |  2 -
 roles/enable_modules/vars/main.yml   |  3 +-
 4 files changed, 50 insertions(+), 37 deletions(-)
 delete mode 100644 roles/enable_modules/vars/Debian.yml
 delete mode 100644 roles/enable_modules/vars/RedHat.yml

diff --git a/roles/enable_modules/tasks/main.yml b/roles/enable_modules/tasks/main.yml
index 4676f706..f6e4b9c1 100644
--- a/roles/enable_modules/tasks/main.yml
+++ b/roles/enable_modules/tasks/main.yml
@@ -1,33 +1,49 @@
 ---
-- include_vars: "{{ ansible_os_family }}.yml"
-
-- name: install lua
-  yum: name={{ item }} state=installed
-  with_items:
-    - lua
-    - lua-filesystem
-    - lua-posix
-  sudo: true
-  when: ansible_os_family == 'RedHat'
-
-- name: install lua
-  apt: name={{ item }} state=installed
-  with_items:
-    - lua5.2
-    - lua5.2
-    - lua-filesystem
-    - lua-bitop
-    - lua-posix
-    - liblua5.2-0
-    - liblua5.2-dev
-    - tcl
-  sudo: true
-  when: ansible_os_family == 'Debian'
-
-- name: link bash
-  file: src={{ soft_dir }}/lmod/lmod/init/bash dest=/etc/profile.d/lmod.sh state=link
-  sudo: true
-
-- name: link csh
-  file: src={{ soft_dir }}/lmod/lmod/init/cshrc dest=/etc/profile.d/lmod.csh state=link
-  sudo: true
+
+- name: template lmod bash
+  template: src=lmod.sh.j2 dest=/etc/profile.d/lmod.sh 
+  become: true
+  become_user: root
+  when: default_modules == "lmod"
+
+- name: template lmod csh
+  template: src=lmod.csh.j2 dest=/etc/profile.d/lmod.csh
+  become: true
+  become_user: root
+  when: default_modules == "lmod"
+
+- name: remove modulecmd bash
+  file: path=/etc/profile.d/modulecmd.sh state=absent
+  become: true
+  become_user: root
+  when: default_modules == "lmod"
+
+- name: remove modulcmd csh
+  file: path=/etc/profile.d/modulecmd.csh state=absent
+  become: true
+  become_user: root
+  when: default_modules == "lmod"
+
+- name: template modulecmd bash
+  template: src=modulecmd.sh.j2 dest=/etc/profile.d/modulecmd.sh
+  become: true
+  become_user: root
+  when: default_modules == "modulecmd"
+
+- name: template modulecmd csh
+  template: src=modulecmd.csh.j2 dest=/etc/profile.d/modulecmd.csh
+  become: true
+  become_user: root
+  when: default_modules == "modulecmd"
+
+- name: remove lmod bash
+  file: path=/etc/profile.d/lmod.sh state=absent
+  become: true
+  become_user: root
+  when: default_modules == "modulecmd"
+
+- name: remove modulcmd csh
+  file: path=/etc/profile.d/lmod.csh state=absent
+  become: true
+  become_user: root
+  when: default_modules == "modulecmd"
diff --git a/roles/enable_modules/vars/Debian.yml b/roles/enable_modules/vars/Debian.yml
deleted file mode 100644
index f1a8d144..00000000
--- a/roles/enable_modules/vars/Debian.yml
+++ /dev/null
@@ -1,2 +0,0 @@
----
-lua_include: /usr/include/lua5.2
diff --git a/roles/enable_modules/vars/RedHat.yml b/roles/enable_modules/vars/RedHat.yml
deleted file mode 100644
index 533e08b0..00000000
--- a/roles/enable_modules/vars/RedHat.yml
+++ /dev/null
@@ -1,2 +0,0 @@
----
-lua_include: /usr/local
diff --git a/roles/enable_modules/vars/main.yml b/roles/enable_modules/vars/main.yml
index b6b95b3c..de6283ef 100644
--- a/roles/enable_modules/vars/main.yml
+++ b/roles/enable_modules/vars/main.yml
@@ -1,4 +1,5 @@
 ---
 source_dir: /tmp
-soft_dir: /opt/lmod/
+lmoddir: /opt/lmod
+modulecmddir: /usr/share
 lmod_version: 5.8.6
-- 
GitLab