[root@head ~]# cat /usr/lib/systemd/system/lico.service
[Unit]
Description=lenovo hpc/ai project
After=rabbitmq-server.service mariadb.service confluent.service influxdb.service
[Service]
EnvironmentFile=-/etc/sysconfig/lico
ExecStartPre=/usr/bin/lico start --prepare-only
ExecStart=/usr/bin/lico start -n --start-only
Restart=on-failure
LimitNOFILE=10000
[Install]
WantedBy=multi-user.target
[root@head ~]# ls -la /usr/bin/lico
-rwx------. 1 lico lico 399 Aug 1 11:18 /usr/bin/lico
[root@head ~]# cat /usr/bin/lico
#!/usr/bin/python3.6
# EASY-INSTALL-ENTRY-SCRIPT: 'lico-core-base==6.0.0','console_scripts','lico'
__requires__ = 'lico-core-base==6.0.0'
import re
import sys
from pkg_resources import load_entry_point
if __name__ == '__main__':
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
sys.exit(
load_entry_point('lico-core-base==6.0.0', 'console_scripts', 'lico')()
)
[root@head ~]#
[root@head ~]# systemctl status lico
● lico.service - lenovo hpc/ai project
Loaded: loaded (/usr/lib/systemd/system/lico.service; enabled; vendor preset: disabled)
Active: active (running) since Wed 2021-01-27 21:20:53 CST; 20h ago
Process: 64198 ExecStartPre=/usr/bin/lico start --prepare-only (code=exited, status=0/SUCCESS)
Main PID: 64261 (lico)
Tasks: 223 (limit: 49780)
Memory: 1.6G
CGroup: /system.slice/lico.service
├─64261 /usr/bin/python3.6 /usr/bin/lico start -n --start-only
├─64293 /usr/bin/python3.6 /usr/bin/lico worker --log-level INFO --autoscale 30,10
├─64294 /usr/bin/python3.6 /usr/bin/gunicorn --paste /etc/lico/lico.paste.ini -w 10 --threads 20 --bind :18080 --log-config /etc/lico/lico.logging.d/lico-base.ini --timeout 3600 --keep-alive 65 --capture-output --preload
├─64358 /usr/bin/python3.6 /usr/bin/gunicorn --paste /etc/lico/lico.paste.ini -w 10 --threads 20 --bind :18080 --log-config /etc/lico/lico.logging.d/lico-base.ini --timeout 3600 --keep-alive 65 --capture-output --preload
├─64359 /usr/bin/python3.6 /usr/bin/gunicorn --paste /etc/lico/lico.paste.ini -w 10 --threads 20 --bind :18080 --log-config /etc/lico/lico.logging.d/lico-base.ini --timeout 3600 --keep-alive 65 --capture-output --preload
├─64363 /usr/bin/python3.6 /usr/bin/gunicorn --paste /etc/lico/lico.paste.ini -w 10 --threads 20 --bind :18080 --log-config /etc/lico/lico.logging.d/lico-base.ini --timeout 3600 --keep-alive 65 --capture-output --preload
├─64364 /usr/bin/python3.6 /usr/bin/gunicorn --paste /etc/lico/lico.paste.ini -w 10 --threads 20 --bind :18080 --log-config /etc/lico/lico.logging.d/lico-base.ini --timeout 3600 --keep-alive 65 --capture-output --preload
├─64366 /usr/bin/python3.6 /usr/bin/gunicorn --paste /etc/lico/lico.paste.ini -w 10 --threads 20 --bind :18080 --log-config /etc/lico/lico.logging.d/lico-base.ini --timeout 3600 --keep-alive 65 --capture-output --preload
├─64367 /usr/bin/python3.6 /usr/bin/gunicorn --paste /etc/lico/lico.paste.ini -w 10 --threads 20 --bind :18080 --log-config /etc/lico/lico.logging.d/lico-base.ini --timeout 3600 --keep-alive 65 --capture-output --preload
├─64368 /usr/bin/python3.6 /usr/bin/gunicorn --paste /etc/lico/lico.paste.ini -w 10 --threads 20 --bind :18080 --log-config /etc/lico/lico.logging.d/lico-base.ini --timeout 3600 --keep-alive 65 --capture-output --preload
├─64369 /usr/bin/python3.6 /usr/bin/gunicorn --paste /etc/lico/lico.paste.ini -w 10 --threads 20 --bind :18080 --log-config /etc/lico/lico.logging.d/lico-base.ini --timeout 3600 --keep-alive 65 --capture-output --preload
├─64372 /usr/bin/python3.6 /usr/bin/gunicorn --paste /etc/lico/lico.paste.ini -w 10 --threads 20 --bind :18080 --log-config /etc/lico/lico.logging.d/lico-base.ini --timeout 3600 --keep-alive 65 --capture-output --preload
├─64373 /usr/bin/python3.6 /usr/bin/gunicorn --paste /etc/lico/lico.paste.ini -w 10 --threads 20 --bind :18080 --log-config /etc/lico/lico.logging.d/lico-base.ini --timeout 3600 --keep-alive 65 --capture-output --preload
├─64398 /usr/bin/python3.6 /usr/bin/lico worker --log-level INFO --autoscale 30,10
├─64399 /usr/bin/python3.6 /usr/bin/lico worker --log-level INFO --autoscale 30,10
├─64400 /usr/bin/python3.6 /usr/bin/lico worker --log-level INFO --autoscale 30,10
├─64401 /usr/bin/python3.6 /usr/bin/lico worker --log-level INFO --autoscale 30,10
├─64402 /usr/bin/python3.6 /usr/bin/lico worker --log-level INFO --autoscale 30,10
├─64403 /usr/bin/python3.6 /usr/bin/lico worker --log-level INFO --autoscale 30,10
├─64404 /usr/bin/python3.6 /usr/bin/lico worker --log-level INFO --autoscale 30,10
├─64405 /usr/bin/python3.6 /usr/bin/lico worker --log-level INFO --autoscale 30,10
├─64406 /usr/bin/python3.6 /usr/bin/lico worker --log-level INFO --autoscale 30,10
└─64407 /usr/bin/python3.6 /usr/bin/lico worker --log-level INFO --autoscale 30,10
lico start -n --start-only
lenovo_git\lico-core\lico.core.base.main start -n --start-only
[root@head components]# /usr/bin/lico version
lico-core-base 6.0.0
lico-core-accounting 1.0.0 (active)
lico-core-aistudio 1.0.0 (active)
lico-core-alert 1.0.0 (active)
lico-core-cluster 1.0.0 (active)
lico-core-container 1.0.0 (active)
lico-core-devtools 1.0.0 (active)
lico-core-job 1.0.0 (active)
lico-core-license 1.0.0 (active)
lico-core-monitor 1.0.0 (active)
lico-core-publish 1.0.0 (active)
lico-core-scheduler 1.0.0 (active)
lico-core-support 1.0.0 (active)
lico-core-template 1.0.0 (active)
lico-core-tensorboard 1.0.0 (active)
lico-core-user 1.0.0 (active)
lico-core-workflow 1.0.0 (active)
[root@head ~]# /usr/bin/lico start --prepare-only;/usr/bin/lico start -n --start-only
## /opt/lico/components/lico_core_base-6.0.0-py3.6.egg/lico/core/base/main.py ##
## settings_module: ## /usr/lib/python3.6/site-packages/django/conf/__init__.py lico.core.base.settings
## setting.installed_apps: ['django.contrib.auth', 'django.contrib.contenttypes', 'rest_framework', 'lico.core.base', 'lico.core.accounting', 'lico.core.aistudio', 'lico.core.alert', 'lico.core.cluster', 'lico.core.container.singularity', 'lico.core.devtools', 'lico.core.job', 'lico.core.license', 'lico.core.monitor', 'lico.core.monitor_host', 'lico.core.publish', 'lico.core.scheduler', 'lico.core.support', 'lico.core.template', 'lico.core.tensorboard', 'lico.core.user', 'lico.core.workflow']
## /usr/lib/python3.6/site-packages/django/core/management/__init__.py ## subcommand: start ## self.argv: ['/usr/bin/lico', 'start', '--prepare-only']
## app_name: lico.core.base
## baseCommand: <class 'django.core.management.base.BaseCommand'>
## /usr/lib/python3.6/site-packages/django/core/management/base.py [] {'verbosity': 1, 'settings': None, 'pythonpath': None, 'traceback': False, 'no_color': False, 'force_color': False, 'nodaemon': False, 'prepare_only': True, 'start_only': False}
## /opt/lico/components/lico_core_base-6.0.0-py3.6.egg/lico/core/base/main.py ##
## settings_module: ## /usr/lib/python3.6/site-packages/django/conf/__init__.py lico.core.base.settings
## setting.installed_apps: ['django.contrib.auth', 'django.contrib.contenttypes', 'rest_framework', 'lico.core.base', 'lico.core.accounting', 'lico.core.aistudio', 'lico.core.alert', 'lico.core.cluster', 'lico.core.container.singularity', 'lico.core.devtools', 'lico.core.job', 'lico.core.license', 'lico.core.monitor', 'lico.core.monitor_host', 'lico.core.publish', 'lico.core.scheduler', 'lico.core.support', 'lico.core.template', 'lico.core.tensorboard', 'lico.core.user', 'lico.core.workflow']
## /usr/lib/python3.6/site-packages/django/core/management/__init__.py ## subcommand: start ## self.argv: ['/usr/bin/lico', 'start', '-n', '--start-only']
## app_name: lico.core.base
## baseCommand: <class 'django.core.management.base.BaseCommand'>
## /usr/lib/python3.6/site-packages/django/core/management/base.py [] {'verbosity': 1, 'settings': None, 'pythonpath': None, 'traceback': False, 'no_color': False, 'force_color': False, 'nodaemon': True, 'prepare_only': False, 'start_only': True}
2021-02-02 06:40:48,170 CRIT Supervisor is running as root. Privileges were not dropped because no user is specified in the config file. If you intend to run as root, you can set user=root in the config file to avoid this message.
2021-02-02 06:40:48,170 INFO Included extra file "/etc/lico/lico.supervisor.d/lico-core-base.ini" during parsing
[root@head lico]# vim /usr/lib/python3.6/site-packages/django/core/management/__init__.py
import os
print("## ",os.path.realpath(__file__),"## subcommand: ",subcommand," ## self.argv: ",self.argv)
self.fetch_command(subcommand).run_from_argv(self.argv)
[root@head lico]# vim /usr/lib/python3.6/site-packages/django/core/management/base.py
import os
print("## ",os.path.realpath(__file__),[*args],{**cmd_options})
self.execute(*args, **cmd_options)
python的包导入问题(一)from . import 的使用
必备知识:from . import,“.” 代表使用相对路径导入,即从当前项目中寻找需要导入的包或函数
[]python的包导入问题(一)from . import 的使用
lenovo_git\lico-core\lico-core-base\setup.cfg
[options.entry_points]
console_scripts =
lico = lico.core.base.main:main [executable]
paste.app_factory =
main = lico.core.base.wsgi:make_application
项目的多个 sub_app 以 lico.core.application 为 group 的多个entry_points, 如下示例
[options.entry_points]
lico.core.application =
job = lico.core.job.main:Application
Python打包:setuptools与setup.py/.cfg入门简介
使用setup.cfg而不是setup.py的理由是,前者是声明式的配置文件,后者是实际的python代码,可能不安全。setuptools的文档中推荐从setup.py迁移到setup.cfg,其实未来应该会使用pyproject.toml
Configuring setup() using setup.cfg files——official website
Python打包:setuptools与setup.py/.cfg入门简介
.
├── hello
│ ├── hello_impl.py
│ ├── __init__.py
│ └── __main__.py
├── LICENSE
├── Readme.md
├── setup.cfg
└── setup.py
各个文件的内容:
# setup.py;会自动读取setup.cfg中的设置
import setuptools
setuptools.setup() # 也可有参调用,则会覆盖.cfg的对应条目
# setup.cfg;所有条目见 https://setuptools.readthedocs.io/en/latest/userguide/declarative_config.html
[metadata]
name = hellokpg
version = 1.0
author = xxx
long_description = file: Readme.md # 从文件中读取
license = MIT
url = https://github.com/user/repo
classifiers = # PyPI的分类,类似于标签,所有条目见 https://pypi.org/pypi?%3Aaction=list_classifiers
Development Status :: 3 - Alpha
Programming Language :: Python :: 3
[options]
packages = find: # 自动搜索存在__init__.py的文件夹作为包
install_requires = # 依赖,pip安装时靠的就是这个而不是requirements.txt
requests
[options.entry_points]
console_scripts =
pyhello = hello.__main__:main
# hello_impl.py
def say(to):
print('hello', to)
# __init__.py
from .hello_impl import say
# __main__.py
from . import say
import sys
def main():
say(sys.argv[1])
if __name__ == '__main__':
main()
load_entry_point 使调用简单
## 设置 setup.py
setup(
name='mypackage',
entry_points={
'mypackage.api.v1':[
'databases=mypackage.api.v1.databases:main',
],
)
## 使用
from pkg_resources import load_entry_point
load_entry_point('mypackage', 'mypackage.api.v1', 'database')()
def load_entry_point(dist, group, name):
"""Return `name` entry point of `group` for `dist` or raise ImportError"""
return get_distribution(dist).load_entry_point(group, name)
setup(name='pycase',
version=VERSION,
classifiers=[],
keywords='pycase',
packages=find_packages(),
include_package_data=True,
zip_safe=True,
install_requires=[],
entry_points={
'console_scripts': [
'pycase = pycase.case:main'
]
}
)
"""
### shell 使用
$ python pycase/case.py studeng_model
StudengModel
基于前面配置好的 setup.py 将项目打包安装
python setup.py install
5、命令行工具
$ pycase studeng_model
StudengModel
pycase = pycase.case:main
相当于
pycase == pycase/case.py.main
其中,main 是定义好的main() 方法
"""
entry_point+click:快速生成python命令行接口
slurm 除了 要配置 slurm 的配置文件之外, 还需要 /etc/hosts 文件。
python env
下面就是 我启动之后 成功了的示例
(env36) [root@localhost lico-core-test]# lico shell
Warning: Password database not exists.
Python 3.6.8 (default, Aug 24 2020, 17:57:11)
[GCC 8.3.1 20191121 (Red Hat 8.3.1-5)] on linux
Type "help", "copyright", "credits" or "license" for more information.
(InteractiveConsole)
>>> import requests
>>> url="http://127.0.0.1:18080/lico-core-test/"
>>> r=requests.get(url)
>>> r.text
'<h1>Not Found</h1><p>The requested resource was not found on this server.</p
>>> client_loop: send disconnect: Connection reset by peer
端口 18080,18081,18085
[root@head nginx]# ps -ef | grep lico | grep "bind"
root 41182 1 0 Jan27 ? 00:02:09 /usr/bin/python3.6 /usr/bin/gunicorn-3.6 --paste /etc/lico/file-manager.ini --bind :18085 --log-config /etc/lico/lico.logging.d/file-manager.ini -w 5 --threads 10 --timeout 3600 --keep-alive 65 --capture-output
root 41238 1 0 Jan27 ? 00:01:49 /usr/bin/python3.6 /usr/bin/gunicorn-3.6 --paste /etc/lico/confluent-proxy.ini --bind :18081 --log-config /etc/lico/lico.logging.d/confluent-proxy.ini --workers 1 --threads 50 --timeout 3600 --worker-class gevent --keep-alive 65 --log-level info --access-logfile - --error-logfile - --capture-output
root 41239 41182 0 Jan27 ? 00:02:14 /usr/bin/python3.6 /usr/bin/gunicorn-3.6 --paste /etc/lico/file-manager.ini --bind :18085 --log-config /etc/lico/lico.logging.d/file-manager.ini -w 5 --threads 10 --timeout 3600 --keep-alive 65 --capture-output
root 41243 41182 0 Jan27 ? 00:02:18 /usr/bin/python3.6 /usr/bin/gunicorn-3.6 --paste /etc/lico/file-manager.ini --bind :18085 --log-config /etc/lico/lico.logging.d/file-manager.ini -w 5 --threads 10 --timeout 3600 --keep-alive 65 --capture-output
root 41248 41182 0 Jan27 ? 00:02:15 /usr/bin/python3.6 /usr/bin/gunicorn-3.6 --paste /etc/lico/file-manager.ini --bind :18085 --log-config /etc/lico/lico.logging.d/file-manager.ini -w 5 --threads 10 --timeout 3600 --keep-alive 65 --capture-output
root 41249 41182 0 Jan27 ? 00:02:12 /usr/bin/python3.6 /usr/bin/gunicorn-3.6 --paste /etc/lico/file-manager.ini --bind :18085 --log-config /etc/lico/lico.logging.d/file-manager.ini -w 5 --threads 10 --timeout 3600 --keep-alive 65 --capture-output
root 41250 41182 0 Jan27 ? 00:02:10 /usr/bin/python3.6 /usr/bin/gunicorn-3.6 --paste /etc/lico/file-manager.ini --bind :18085 --log-config /etc/lico/lico.logging.d/file-manager.ini -w 5 --threads 10 --timeout 3600 --keep-alive 65 --capture-output
root 41261 41238 0 Jan27 ? 00:02:24 /usr/bin/python3.6 /usr/bin/gunicorn-3.6 --paste /etc/lico/confluent-proxy.ini --bind :18081 --log-config /etc/lico/lico.logging.d/confluent-proxy.ini --workers 1 --threads 50 --timeout 3600 --worker-class gevent --keep-alive 65 --log-level info --access-logfile - --error-logfile - --capture-output
root 442650 442605 0 Feb01 ? 00:00:23 /usr/bin/python3.6 /usr/bin/gunicorn --paste /etc/lico/lico.paste.ini -w 10 --threads 20 --bind :18080 --log-config /etc/lico/lico.logging.d/lico-base.ini --timeout 3600 --keep-alive 65 --capture-output --preload
root 442657 442650 0 Feb01 ? 00:01:53 /usr/bin/python3.6 /usr/bin/gunicorn --paste /etc/lico/lico.paste.ini -w 10 --threads 20 --bind :18080 --log-config /etc/lico/lico.logging.d/lico-base.ini --timeout 3600 --keep-alive 65 --capture-output --preload
root 442661 442650 0 Feb01 ? 00:01:52 /usr/bin/python3.6 /usr/bin/gunicorn --paste /etc/lico/lico.paste.ini -w 10 --threads 20 --bind :18080 --log-config /etc/lico/lico.logging.d/lico-base.ini --timeout 3600 --keep-alive 65 --capture-output --preload
root 442662 442650 0 Feb01 ? 00:01:50 /usr/bin/python3.6 /usr/bin/gunicorn --paste /etc/lico/lico.paste.ini -w 10 --threads 20 --bind :18080 --log-config /etc/lico/lico.logging.d/lico-base.ini --timeout 3600 --keep-alive 65 --capture-output --preload
root 442663 442650 0 Feb01 ? 00:01:48 /usr/bin/python3.6 /usr/bin/gunicorn --paste /etc/lico/lico.paste.ini -w 10 --threads 20 --bind :18080 --log-config /etc/lico/lico.logging.d/lico-base.ini --timeout 3600 --keep-alive 65 --capture-output --preload
root 442664 442650 0 Feb01 ? 00:01:43 /usr/bin/python3.6 /usr/bin/gunicorn --paste /etc/lico/lico.paste.ini -w 10 --threads 20 --bind :18080 --log-config /etc/lico/lico.logging.d/lico-base.ini --timeout 3600 --keep-alive 65 --capture-output --preload
root 442665 442650 0 Feb01 ? 00:01:50 /usr/bin/python3.6 /usr/bin/gunicorn --paste /etc/lico/lico.paste.ini -w 10 --threads 20 --bind :18080 --log-config /etc/lico/lico.logging.d/lico-base.ini --timeout 3600 --keep-alive 65 --capture-output --preload
root 442666 442650 0 Feb01 ? 00:01:55 /usr/bin/python3.6 /usr/bin/gunicorn --paste /etc/lico/lico.paste.ini -w 10 --threads 20 --bind :18080 --log-config /etc/lico/lico.logging.d/lico-base.ini --timeout 3600 --keep-alive 65 --capture-output --preload
root 442667 442650 0 Feb01 ? 00:01:59 /usr/bin/python3.6 /usr/bin/gunicorn --paste /etc/lico/lico.paste.ini -w 10 --threads 20 --bind :18080 --log-config /etc/lico/lico.logging.d/lico-base.ini --timeout 3600 --keep-alive 65 --capture-output --preload
root 442668 442650 0 Feb01 ? 00:02:09 /usr/bin/python3.6 /usr/bin/gunicorn --paste /etc/lico/lico.paste.ini -w 10 --threads 20 --bind :18080 --log-config /etc/lico/lico.logging.d/lico-base.ini --timeout 3600 --keep-alive 65 --capture-output --preload
root 442672 442650 0 Feb01 ? 00:02:27 /usr/bin/python3.6 /usr/bin/gunicorn --paste /etc/lico/lico.paste.ini -w 10 --threads 20 --bind :18080 --log-config /etc/lico/lico.logging.d/lico-base.ini --timeout 3600 --keep-alive 65 --capture-output --preload
[root@head nginx]# ls
[root@head httpd]# cat /usr/bin/gunicorn
#!/usr/bin/python3.6
# EASY-INSTALL-ENTRY-SCRIPT: 'gunicorn==20.0.4','console_scripts','gunicorn'
__requires__ = 'gunicorn==20.0.4'
import re
import sys
from pkg_resources import load_entry_point
if __name__ == '__main__':
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
sys.exit(
load_entry_point('gunicorn==20.0.4', 'console_scripts', 'gunicorn')()
)
[root@head httpd]#
start_lico 后的 os.environ
{' UCX_BIN ' : ' /opt/ohpc/pub/mpi/ucx-ohpc/1.8.0/bin '
' LD_LIBRARY_PATH ' : ' /opt/ohpc/pub/mpi/libfabric/1.10.1/lib:/opt/ohpc/pub/mpi/ucx-ohpc/1.8.0/lib:/opt/ohpc/pub/mpi/openmpi4-gnu9/4.0.3/lib:/opt/ohpc/pub/compiler/gcc/9.2.0/lib64 '
' LS_COLORS ' : ' rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=01;05;37;41:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=01;36:*.au=01;36:*.flac=01;36:*.m4a=01;36:*.mid=01;36:*.midi=01;36:*.mka=01;36:*.mp3=01;36:*.mpc=01;36:*.ogg=01;36:*.ra=01;36:*.wav=01;36:*.oga=01;36:*.opus=01;36:*.spx=01;36:*.xspf=01;36: '
' LIBFABRIC_DIR ' : ' /opt/ohpc/pub/mpi/libfabric/1.10.1 '
' __LMOD_REF_COUNT_PATH ' : ' /opt/ohpc/pub/libs/singularity/3.4.2/bin: 1;/opt/ohpc/pub/mpi/libfabric/1.10.1/bin: 1;/opt/ohpc/pub/mpi/ucx-ohpc/1.8.0/bin: 1;/opt/ohpc/pub/mpi/openmpi4-gnu9/4.0.3/bin: 1;/opt/ohpc/pub/compiler/gcc/9.2.0/bin: 1;/opt/ohpc/pub/utils/prun/2.0: 1;/opt/ohpc/pub/bin: 1;/usr/local/sbin: 1;/usr/local/bin: 1;/usr/sbin: 1;/usr/bin: 1 '
' _ModuleTable002_ ' : ' YnJpYy8xLjEwLjEiLFsibG9hZE9yZGVyIl09NCxwcm9wVD17fSxbInJlZl9jb3VudCJdPTEsWyJzdGFja0RlcHRoIl09MixbInN0YXR1cyJdPSJhY3RpdmUiLFsidXNlck5hbWUiXT0ibGliZmFicmljIix9LG9ocGM9e1siZm4iXT0iL29wdC9vaHBjL3B1Yi9tb2R1bGVmaWxlcy9vaHBjIixbImZ1bGxOYW1lIl09Im9ocGMiLFsibG9hZE9yZGVyIl09Nyxwcm9wVD17fSxbInN0YWNrRGVwdGgiXT0wLFsic3RhdHVzIl09ImFjdGl2ZSIsWyJ1c2VyTmFtZSJdPSJvaHBjIix9LG9wZW5tcGk0PXtbImZuIl09Ii9vcHQvb2hwYy9wdWIvbW9kdWxlZGVwcy9nbnU5L29wZW5tcGk0LzQuMC4zIixbImZ1bGxOYW1lIl09Im9wZW5tcGk0LzQuMC4zIixbImxvYWRPcmRlciJdPTUscHJvcFQ9 '
' SSH_CONNECTION ' : ' 10.106.234.48 51751 172.20.10.33 22 '
' INCLUDE ' : ' /opt/ohpc/pub/compiler/gcc/9.2.0/include '
' UCX_LIB ' : ' /opt/ohpc/pub/mpi/ucx-ohpc/1.8.0/lib '
' LMOD_FAMILY_MPI_VERSION ' : ' 4.0.3 '
' LANG ' : ' en_US.UTF-8 '
' HISTCONTROL ' : ' ignoredups '
' LMOD_FAMILY_COMPILER_VERSION ' : ' 9.2.0 '
' HOSTNAME ' : ' head '
' OLDPWD ' : ' // '
' PERL_BADLANG ' : ' 0 '
' UCX_WARN_UNUSED_ENV_VARS ' : ' N '
' __LMOD_REF_COUNT__LMFILES_ ' : ' /opt/ohpc/pub/modulefiles/prun/2.0: 1;/opt/ohpc/pub/modulefiles/gnu9/9.2.0: 1;/opt/ohpc/pub/modulefiles/ucx/1.8.0: 1;/opt/ohpc/pub/modulefiles/libfabric/1.10.1: 1;/opt/ohpc/pub/moduledeps/gnu9/openmpi4/4.0.3: 1;/opt/ohpc/pub/modulefiles/singularity/3.4.2: 1;/opt/ohpc/pub/modulefiles/ohpc: 1 '
' __LMOD_REF_COUNT_INCLUDE ' : ' /opt/ohpc/pub/compiler/gcc/9.2.0/include: 1 '
' __LMOD_REF_COUNT_LD_LIBRARY_PATH ' : ' /opt/ohpc/pub/mpi/libfabric/1.10.1/lib: 1;/opt/ohpc/pub/mpi/ucx-ohpc/1.8.0/lib: 1;/opt/ohpc/pub/mpi/openmpi4-gnu9/4.0.3/lib: 1;/opt/ohpc/pub/compiler/gcc/9.2.0/lib64: 1 '
' __LMOD_REF_COUNT_PKG_CONFIG_PATH ' : ' /opt/ohpc/pub/mpi/libfabric/1.10.1/lib/pkgconfig: 1;/opt/ohpc/pub/mpi/ucx-ohpc/1.8.0/lib/pkgconfig: 1;/opt/ohpc/pub/mpi/openmpi4-gnu9/4.0.3/lib/pkgconfig: 1 '
' XCATROOT ' : ' /opt/xcat '
' _ModuleTable004_ ' : ' LFsidXNlck5hbWUiXT0ic2luZ3VsYXJpdHkiLH0sdWN4PXtbImZuIl09Ii9vcHQvb2hwYy9wdWIvbW9kdWxlZmlsZXMvdWN4LzEuOC4wIixbImZ1bGxOYW1lIl09InVjeC8xLjguMCIsWyJsb2FkT3JkZXIiXT0zLHByb3BUPXt9LFsicmVmX2NvdW50Il09MSxbInN0YWNrRGVwdGgiXT0yLFsic3RhdHVzIl09ImFjdGl2ZSIsWyJ1c2VyTmFtZSJdPSJ1Y3giLH0sfSxtcGF0aEE9eyIvb3B0L29ocGMvcHViL21vZHVsZWRlcHMvZ251OS1vcGVubXBpNCIsIi9vcHQvb2hwYy9wdWIvbW9kdWxlZGVwcy9nbnU5IiwiL29wdC9vaHBjL2FkbWluL21vZHVsZWZpbGVzIiwiL29wdC9vaHBjL3B1Yi9tb2R1bGVmaWxlcyIsfSxbInN5c3RlbUJhc2VNUEFUSCJdPSIvb3B0L29ocGMvYWRtaW4v '
' UCX_DIR ' : ' /opt/ohpc/pub/mpi/ucx-ohpc/1.8.0 '
' XDG_SESSION_ID ' : ' 68 '
' USER ' : ' root '
' SELINUX_ROLE_REQUESTED ' : ' '
' __LMOD_REF_COUNT_MODULEPATH ' : ' /opt/ohpc/pub/moduledeps/gnu9-openmpi4: 1;/opt/ohpc/pub/moduledeps/gnu9: 1;/opt/ohpc/admin/modulefiles: 1;/opt/ohpc/pub/modulefiles: 1 '
' __LMOD_REF_COUNT_LOADEDMODULES ' : ' prun/2.0: 1;gnu9/9.2.0: 1;ucx/1.8.0: 1;libfabric/1.10.1: 1;openmpi4/4.0.3: 1;singularity/3.4.2: 1;ohpc: 1 '
' UCX_INC ' : ' /opt/ohpc/pub/mpi/ucx-ohpc/1.8.0/include '
' LIBFABRIC_BIN ' : ' /opt/ohpc/pub/mpi/libfabric/1.10.1/bin '
' PWD ' : ' /root '
' HOME ' : ' /root '
' LMOD_COLORIZE ' : ' no '
' SINGULARITY_BIN ' : ' /opt/ohpc/pub/libs/singularity/3.4.2/bin '
' SSH_CLIENT ' : ' 10.106.234.48 51751 22 '
' LMOD_VERSION ' : ' 8.2.10 '
' LMOD_SETTARG_CMD ' : ' : '
' SELINUX_LEVEL_REQUESTED ' : ' '
' BASH_ENV ' : ' /opt/ohpc/admin/lmod/lmod/init/bash '
' LIBFABRIC_INC ' : ' /opt/ohpc/pub/mpi/libfabric/1.10.1/include '
' _ModuleTable001_ ' : ' X01vZHVsZVRhYmxlXz17WyJNVHZlcnNpb24iXT0zLFsiY19yZWJ1aWxkVGltZSJdPWZhbHNlLFsiY19zaG9ydFRpbWUiXT1mYWxzZSxkZXB0aFQ9e30sZmFtaWx5PXtbIk1QSSJdPSJvcGVubXBpNCIsWyJjb21waWxlciJdPSJnbnU5Iix9LG1UPXtnbnU5PXtbImZuIl09Ii9vcHQvb2hwYy9wdWIvbW9kdWxlZmlsZXMvZ251OS85LjIuMCIsWyJmdWxsTmFtZSJdPSJnbnU5LzkuMi4wIixbImxvYWRPcmRlciJdPTIscHJvcFQ9e30sWyJzdGFja0RlcHRoIl09MSxbInN0YXR1cyJdPSJhY3RpdmUiLFsidXNlck5hbWUiXT0iZ251OSIsfSxsaWJmYWJyaWM9e1siZm4iXT0iL29wdC9vaHBjL3B1Yi9tb2R1bGVmaWxlcy9saWJmYWJyaWMvMS4xMC4xIixbImZ1bGxOYW1lIl09ImxpYmZh '
' LOADEDMODULES ' : ' prun/2.0:gnu9/9.2.0:ucx/1.8.0:libfabric/1.10.1:openmpi4/4.0.3:singularity/3.4.2:ohpc '
' __LMOD_REF_COUNT_MANPATH ' : ' /opt/ohpc/pub/libs/singularity/3.4.2/share/man: 1;/opt/ohpc/pub/mpi/libfabric/1.10.1/share/man: 1;/opt/ohpc/pub/mpi/openmpi4-gnu9/4.0.3/share/man: 1;/opt/ohpc/pub/compiler/gcc/9.2.0/share/man: 1;/usr/local/share/man: 1;/usr/share/man/overrides: 1;/usr/share/man/en: 1;/usr/share/man: 1 '
' _ModuleTable003_ ' : ' e30sWyJzdGFja0RlcHRoIl09MSxbInN0YXR1cyJdPSJhY3RpdmUiLFsidXNlck5hbWUiXT0ib3Blbm1waTQiLH0scHJ1bj17WyJmbiJdPSIvb3B0L29ocGMvcHViL21vZHVsZWZpbGVzL3BydW4vMi4wIixbImZ1bGxOYW1lIl09InBydW4vMi4wIixbImxvYWRPcmRlciJdPTEscHJvcFQ9e30sWyJzdGFja0RlcHRoIl09MSxbInN0YXR1cyJdPSJhY3RpdmUiLFsidXNlck5hbWUiXT0icHJ1biIsfSxzaW5ndWxhcml0eT17WyJmbiJdPSIvb3B0L29ocGMvcHViL21vZHVsZWZpbGVzL3Npbmd1bGFyaXR5LzMuNC4yIixbImZ1bGxOYW1lIl09InNpbmd1bGFyaXR5LzMuNC4yIixbImxvYWRPcmRlciJdPTYscHJvcFQ9e30sWyJzdGFja0RlcHRoIl09MSxbInN0YXR1cyJdPSJhY3RpdmUi '
' LMOD_ROOT ' : ' /opt/ohpc/admin/lmod '
' SSH_TTY ' : ' /dev/pts/1 '
' MAIL ' : ' /var/spool/mail/root '
' TERM ' : ' xterm '
' SHELL ' : ' /bin/bash '
' _ModuleTable_Sz_ ' : ' 5 '
' LMOD_FAMILY_COMPILER ' : ' gnu9 '
' SELINUX_USE_CURRENT_RANGE ' : ' '
' SINGULARITY_DIR ' : ' /opt/ohpc/pub/libs/singularity/3.4.2 '
' SHLVL ' : ' 1 '
' MANPATH ' : ' /opt/xcat/share/man:/opt/ohpc/pub/libs/singularity/3.4.2/share/man:/opt/ohpc/pub/mpi/libfabric/1.10.1/share/man:/opt/ohpc/pub/mpi/openmpi4-gnu9/4.0.3/share/man:/opt/ohpc/pub/compiler/gcc/9.2.0/share/man:/usr/local/share/man:/usr/share/man/overrides:/usr/share/man/en:/usr/share/man '
' LMOD_PREPEND_BLOCK ' : ' normal '
' MODULEPATH ' : ' /opt/ohpc/pub/moduledeps/gnu9-openmpi4:/opt/ohpc/pub/moduledeps/gnu9:/opt/ohpc/admin/modulefiles:/opt/ohpc/pub/modulefiles '
' MPI_DIR ' : ' /opt/ohpc/pub/mpi/openmpi4-gnu9/4.0.3 '
' LOGNAME ' : ' root '
' DBUS_SESSION_BUS_ADDRESS ' : ' unix:path=/run/user/0/bus '
' XDG_RUNTIME_DIR ' : ' /run/user/0 '
' PATH ' : ' /opt/xcat/bin:/opt/xcat/sbin:/opt/xcat/share/xcat/tools:/opt/ohpc/pub/libs/singularity/3.4.2/bin:/opt/ohpc/pub/mpi/libfabric/1.10.1/bin:/opt/ohpc/pub/mpi/ucx-ohpc/1.8.0/bin:/opt/ohpc/pub/mpi/openmpi4-gnu9/4.0.3/bin:/opt/ohpc/pub/compiler/gcc/9.2.0/bin:/opt/ohpc/pub/utils/prun/2.0:/opt/ohpc/pub/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin '
' _LMFILES_ ' : ' /opt/ohpc/pub/modulefiles/prun/2.0:/opt/ohpc/pub/modulefiles/gnu9/9.2.0:/opt/ohpc/pub/modulefiles/ucx/1.8.0:/opt/ohpc/pub/modulefiles/libfabric/1.10.1:/opt/ohpc/pub/moduledeps/gnu9/openmpi4/4.0.3:/opt/ohpc/pub/modulefiles/singularity/3.4.2:/opt/ohpc/pub/modulefiles/ohpc '
' MODULESHOME ' : ' /opt/ohpc/admin/lmod/lmod '
' PKG_CONFIG_PATH ' : ' /opt/ohpc/pub/mpi/libfabric/1.10.1/lib/pkgconfig:/opt/ohpc/pub/mpi/ucx-ohpc/1.8.0/lib/pkgconfig:/opt/ohpc/pub/mpi/openmpi4-gnu9/4.0.3/lib/pkgconfig '
' LMOD_SETTARG_FULL_SUPPORT ' : ' no '
' HISTSIZE ' : ' 1000 '
' LMOD_PKG ' : ' /opt/ohpc/admin/lmod/lmod '
' _ModuleTable005_ ' : ' bW9kdWxlZmlsZXM6L29wdC9vaHBjL3B1Yi9tb2R1bGVmaWxlcyIsfQ== '
' LMOD_CMD ' : ' /opt/ohpc/admin/lmod/lmod/libexec/lmod '
' LIBFABRIC_LIB ' : ' /opt/ohpc/pub/mpi/libfabric/1.10.1/lib '
' LESSOPEN ' : ' ||/usr/bin/lesspipe.sh %s '
' LMOD_FULL_SETTARG_SUPPORT ' : ' no '
' LMOD_DIR ' : ' /opt/ohpc/admin/lmod/lmod/libexec '
' LMOD_FAMILY_MPI ' : ' openmpi4 '
' BASH_FUNC_module%% ' : ' () { eval $($LMOD_CMD bash $@) && eval $(${LMOD_SETTARG_CMD:-:
} -s sh)
} '
' BASH_FUNC_ml%% ' : ' () { eval $($LMOD_DIR/ml_cmd $@)
} '
' _ ' : ' /usr/bin/lico '
' LICO_CONFIG_FOLDER ' : ' /etc/lico '
' LICO_LOG_FOLDER ' : ' /var/log/lico '
' LICO_STATE_FOLDER ' : ' /var/lib/lico/core '
' LICO_RUN_FOLDER ' : ' /var/run/ '
' LICO_LOCAL_TIMEZONE_OFFSET ' : ' 480.0 '
' PYTHON_PREFIX ' : ' /usr '
' PYTHON_VERSION ' : ' 3.6 '
' DJANGO_SETTINGS_MODULE ' : ' lico.core.base.settings '
}