jkglasbrenner.environment_modules

Ansible Rôle : Modules d'Environnement

État de construction

Compile et installe les modules d'environnement à partir des sources sur les distributions Linux basées sur Debian et RedHat. Les modules d'environnement servent à modifier dynamiquement l'environnement d'un utilisateur via des fichiers de module.

Installez ce rôle en utilisant ansible-galaxy :

ansible-galaxy install jkglasbrenner.environment_modules

Exigences

Aucune.

Variables du Rôle

Variables et valeurs par défaut :

# serveur de téléchargement principal de miniconda
modules_mirror: "https://github.com/cea-hpc/modules/releases/download"

# version des modules
modules_version: 4.2.1

# checksums des modules
modules_checksums:
  modules-4.1.2.tar.gz: "sha256:d1f54f639d1946aa1d7ae8ae03752f8ac464a879c14bc35e63b6a87b8a0b7522"
  modules-4.1.3.tar.gz: "sha256:dab82c5bc20ccea284b042d6af4bd6eaba95f4eaadd495a75413115d33a3151f"
  modules-4.1.4.tar.gz: "sha256:c796ea6a03e22d63886ca9ec6b1bef821e8cb09f186bd007f63653e31e9cb595"
  modules-4.2.0.tar.gz: "sha256:d439dfa579a633108c4f06574ed9bc3b91b8610d2ce3a6eb803bf377d0284be7"
  modules-4.2.1.tar.gz: "sha256:c796ea6a03e22d63886ca9ec6b1bef821e8cb09f186bd007f63653e31e9cb595"

# informations sur le code source des modules
modules_name: "modules-{{ modules_version }}"
modules_src_tar_gz: "{{ modules_name }}.tar.gz"
modules_src_url: "{{ modules_mirror }}/v{{ modules_version }}/{{ modules_src_tar_gz }}"
modules_checksum: "{{ modules_checksums[modules_src_tar_gz] }}"

# lors du téléchargement du code source, cela peut prendre un certain temps
modules_timeout_seconds: 300

# commande make (utilisez "make -j4" pour activer la compilation en parallèle, par exemple)
modules_make_cmd: make

# où installer les modules
modules_parent_dir: /usr/local
modules_etc_profile: /etc/profile.d
modules_dir: "{{ modules_parent_dir }}/Modules"

# emplacements des fichiers d'initialisation
modules_init_profile: "{{ modules_dir }}/init/profile"
modules_init_bash: "{{ modules_dir }}/init/bash"
modules_init_modulerc: "{{ modules_dir }}/init/modulerc"
modules_init_use_own: "{{ modules_dir }}/init/use.own"

# emplacements des fichiers de modules
modules_modulefiles_dir: "{{ modules_dir }}/modulefiles"
modules_use_own_dir: privatemodules

# exemple de fichiers de modules à supprimer
modules_example_modulefiles_to_remove: []

Variables spécifiques aux distributions :

# distributions basées sur Debian
modules_package_dependencies:
  - autoconf
  - automake
  - autopoint
  - bash
  - build-essential
  - coreutils
  - dejagnu
  - grep
  - less
  - sed
  - tcl-dev

# distributions basées sur RedHat : CentOS 7 et Fedora
modules_package_dependencies:
  - "@Development tools"
  - autoconf
  - automake
  - bash
  - dejagnu
  - gettext
  - grep
  - less
  - procps-ng
  - sed
  - tcl-devel

# distributions basées sur RedHat : CentOS 6
modules_package_dependencies:
  - "@Development tools"
  - autoconf
  - automake
  - bash
  - dejagnu
  - gettext
  - grep
  - less
  - procps
  - sed
  - tcl-devel

Dépendances

Aucune.

Exemple de Playbook

- hosts: localhost
  roles:
    - role: jkglasbrenner.environment_modules
  vars:
    make: "make -j4"
    modules_use_own_dir: ".local/Modules"
    modules_example_modulefiles_to_remove:
      - dot
      - module-git
      - module-info
      - "{{ 'null' }}"

Licence

MIT

À propos du projet

Environment modules for dynamic modification of a user's environment via modulefiles.

Installer
ansible-galaxy install jkglasbrenner.environment_modules
Licence
mit
Téléchargements
121
Propriétaire
Principal AI Engineer