Skip to main content

Group Center Tools

Project description

group-center-client

Python 3.8+ PyPI GitHub Repo Stars License

Group Center(https://github.com/a645162/group-center) Client for Python

GitHub

PyPI

Struct

  • Python Package For Group Center Client
    • Group Center Auth(Machine)
    • Remote Config
    • Send Json Array Dict To Group Center
    • Send Message Directly To Group Center
  • User Tools(Python Package)
    • (Python)Push Message To nvi-notify finally push to group-center
    • (Terminal)Push Message To nvi-notify finally push to group-center
  • Machine Tools(Command Line Tools)
    • User Manage Tool
    • SSH Helper
  • User Tools(Command Line Tools)
    • pykill - Python进程终止工具
    • dummy_gpu - 虚拟GPU工具

Command Line Tools

用户管理工具 (user_manager)

user_manager [options]
Options:
  --host GROUP_CENTER_URL          Group Center服务地址
  --center-name MACHINE_NAME       机器短名称
  --center-password MACHINE_PASS   机器密码
  --create-users                  创建用户
  --remove-users                  删除用户
  --user-password PASSWORD        用户密码
  --user-group GROUP_NAME         用户组名
  --year YEAR                     按年份筛选用户

SSH管理工具 (ssh_helper)

ssh_helper [options]
Options:
  --host GROUP_CENTER_URL          Group Center服务地址
  --center-name MACHINE_NAME       机器短名称
  --center-password MACHINE_PASS   机器密码
  --backup (-b)                   备份模式
  --restore (-r)                  恢复模式
  --all (-a)                      所有用户模式(需root权限)

交互模式:
  1 - 备份当前用户SSH配置
  2 - 恢复当前用户SSH配置
  3 - 仅恢复authorized_keys
  4 - 仅恢复密钥对
  5 - 备份所有用户(root)
  6 - 恢复所有用户(root)
  c - 生成新SSH密钥

用户消息工具 (user_message)

user_message "消息内容" [options]
Options:
  -n, --user-name USERNAME  指定用户名
  -s, --screen             包含screen会话名称

Python进程管理工具 (pykill)

Command Line Tools

用户管理工具 (user_manager)

user_manager [options]
Options:
  --host GROUP_CENTER_URL          Group Center服务地址
  --center-name MACHINE_NAME       机器短名称
  --center-password MACHINE_PASS   机器密码
  --create-users                  创建用户
  --remove-users                  删除用户
  --user-password PASSWORD        用户密码
  --user-group GROUP_NAME         用户组名
  --year YEAR                     按年份筛选用户

SSH管理工具 (ssh_helper)

ssh_helper [options]
Options:
  --host GROUP_CENTER_URL          Group Center服务地址
  --center-name MACHINE_NAME       机器短名称
  --center-password MACHINE_PASS   机器密码
  --backup (-b)                   备份模式
  --restore (-r)                  恢复模式
  --all (-a)                      所有用户模式(需root权限)

交互模式:
  1 - 备份当前用户SSH配置
  2 - 恢复当前用户SSH配置
  3 - 仅恢复authorized_keys
  4 - 仅恢复密钥对
  5 - 备份所有用户(root)
  6 - 恢复所有用户(root)
  c - 生成新SSH密钥

用户消息工具 (user_message)

user_message "消息内容" [options]
Options:
  -n, --user-name USERNAME  指定用户名
  -s, --screen             包含screen会话名称

Python进程管理工具 (pykill)

该工具能够根据进程树,寻找最上层的Python进程,并终止该进程及其所有子进程。

传递用户名则搜索该用户下的所有Python进程。

pykill --pid PID           终止指定PID的Python进程及其父进程链中的Python进程
pykill --user USERNAME     终止指定用户的所有Python进程

虚拟GPU任务工具 (dummy_gpu)

使用PyTorch,虚拟出一个GPU任务,占据显存(调试使用)

dummy_gpu --size SIZE_MB   占用指定大小的GPU显存(单位MB)

其他工具

  • group_center_windows_terminal - Windows终端集成
  • torch_ddp_port - Torch DDP端口工具
  • debugpy_port - DebugPy端口工具
  • rtsp_viewer - RTSP查看器CLI
  • python_cleanup - Python清理工具
pykill --pid PID           终止指定PID的Python进程及其父进程链中的Python进程
pykill --user USERNAME     终止指定用户的所有Python进程

虚拟GPU任务工具 (dummy_gpu)

使用PyTorch,虚拟出一个GPU任务,占据显存(调试使用)

dummy_gpu --size SIZE_MB   占用指定大小的GPU显存(单位MB)

其他工具

  • group_center_windows_terminal - Windows终端集成
  • torch_ddp_port - Torch DDP端口工具
  • debugpy_port - DebugPy端口工具
  • rtsp_viewer - RTSP查看器CLI
  • python_cleanup - Python清理工具

Install

pip install li-group-center -i https://pypi.python.org/simple
pip install li-group-center==2.4.3 -i https://pypi.python.org/simple

Upgrade

pip install --upgrade li-group-center -i https://pypi.python.org/simple

Feature(User)

Machine User Message

Use Environment variable NVI_NOTIFY_IGNORE_USER_MSG=1 to ignore all!

Terminal Command

  • -n,--user-name to set username.
  • -s,--screen to contain screen session name.
user_message "Test Message~"

Python Version

User use their own account to push message to Group Center.

from group_center.tools.user_tools import *

# Enable Group Center
group_center_set_is_valid()

# Auto Get Current User Name 
push_message("Test Message~")

User uses a public account to push a message to Group Center.

from group_center.tools.user_tools import *

# Enable Group Center
group_center_set_is_valid()

# Set Global Username
group_center_set_user_name("konghaomin")

push_message("Test Message~")

# Or Specify Username on Push Message(Not Recommend)
push_message("Test Message~", "konghaomin")

Use argparser to set group-center is enable or not

import argparse

from group_center.tools.user_tools import *

parser = argparse.ArgumentParser(description="Example of Group Center")

parser.add_argument(
    "-g",
    "--group-center",
    help="Enable Group Center",
    action="store_true",
)

opt = parser.parse_args()

if opt.groupcenter:
    group_center_set_is_valid()

Feature(Machine)

Generate User Account

Group Center

  • GROUP_CENTER_URL
  • GROUP_CENTER_MACHINE_NAME
  • GROUP_CENTER_MACHINE_NAME_SHORT
  • GROUP_CENTER_MACHINE_PASSWORD

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

li_group_center-2.5.1.tar.gz (103.8 kB view details)

Uploaded Source

File details

Details for the file li_group_center-2.5.1.tar.gz.

File metadata

  • Download URL: li_group_center-2.5.1.tar.gz
  • Upload date:
  • Size: 103.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for li_group_center-2.5.1.tar.gz
Algorithm Hash digest
SHA256 46adba4188a0b7b74c1158e1dc4b2fde3ab8402f414f763fba749e1efbfa3cc5
MD5 ff9971149a19b9f29450c8f3e8f6a796
BLAKE2b-256 ab133e1325bf8e4c91f08d26e3277ff62bbcbfcf23ecaf494b22d5ad349a0808

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page