Bamboo - Как я могу совместно использовать модули среды между задачами в работе, не загружая их для каждой задачи?
Мой план состоит из множества заданий и множества скриптовых заданий в каждом из этих заданий.
Большинство из этих задач скрипта основаны на тех же 5 или 6 модулях, которые я загружаю каждый раз, например:
"загрузка модуля python/argparse_py2.7/1.2.1 загрузка модуля python/python/2.7.13"
Вместо того, чтобы загружать эти модули среды для каждой задачи, есть ли способ загрузить их один раз, и все ли последующие задачи смогут получить к ним доступ?
1 ответ
Как только вы загружаете модуль из сценария или сеанса интерактивной оболочки, этот модуль остается загруженным до конца сценария или сеанса, и он также все еще загружается в контексте подпрограммы, запускаемой основным или вложенными оболочками, запускаемой основной сеанс.
Поэтому в контексте сценария, где вы запускаете много подзадач / сценариев, вы должны поместить module load
Команды в начале скрипта для получения этих модулей разрешают для остальной части выполнения или суб-выполнения.
Это также верно для сеанса интерактивной оболочки.
Кроме того, новые версии module
Команда предоставить способ save
контекст загруженного модуля и restore
позже (в скрипте или в других сеансах оболочки).
Вот небольшой пример использования коллекции модулей:
$ module purge
$ module load python/argparse_py2.7/1.2.1 python/python/2.7.13
$ module save pythonjobenv
$ module savelist
Named collection list:
1) pythonjobenv
$ module purge
$ module restore pythonjobenv
Restoring collection pythonjobenv
Loading module: python/argparse_py2.7/1.2.1 python/python/2.7.13