environment_modules
Ansible Роль: Модули окружения
Компилирует и устанавливает модули окружения из исходного кода на дистрибутивах Linux, основанных на Debian и RedHat. Модули окружения используются для динамического изменения окружения пользователя через файлы модулей.
Установите эту роль, используя ansible-galaxy
:
ansible-galaxy install jkglasbrenner.environment_modules
Требования
Нет.
Переменные роли
Переменные и значения по умолчанию:
# основной сервер для загрузки miniconda
modules_mirror: "https://github.com/cea-hpc/modules/releases/download"
# версия модулей
modules_version: 4.2.1
# контрольные суммы модулей
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"
# информация о исходном коде модулей
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] }}"
# время ожидания при загрузке исходного кода
modules_timeout_seconds: 300
# команда make (используйте "make -j4" для параллельной компиляции, например)
modules_make_cmd: make
# где установить модули
modules_parent_dir: /usr/local
modules_etc_profile: /etc/profile.d
modules_dir: "{{ modules_parent_dir }}/Modules"
# расположение файлов инициализации
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"
# расположение файлов модулей
modules_modulefiles_dir: "{{ modules_dir }}/modulefiles"
modules_use_own_dir: privatemodules
# пример файлов модулей для удаления
modules_example_modulefiles_to_remove: []
Переменные, специфичные для дистрибутивов:
# дистрибутивы, основанные на Debian
modules_package_dependencies:
- autoconf
- automake
- autopoint
- bash
- build-essential
- coreutils
- dejagnu
- grep
- less
- sed
- tcl-dev
# дистрибутивы, основанные на RedHat: CentOS 7 и Fedora
modules_package_dependencies:
- "@Development tools"
- autoconf
- automake
- bash
- dejagnu
- gettext
- grep
- less
- procps-ng
- sed
- tcl-devel
# дистрибутивы, основанные на RedHat: CentOS 6
modules_package_dependencies:
- "@Development tools"
- autoconf
- automake
- bash
- dejagnu
- gettext
- grep
- less
- procps
- sed
- tcl-devel
Зависимости
Нет.
Пример 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' }}"
Лицензия
MIT
О проекте
Environment modules for dynamic modification of a user's environment via modulefiles.
Установить
ansible-galaxy install jkglasbrenner/ansible-role-environment-modules
Лицензия
mit
Загрузки
111
Владелец
Principal AI Engineer