跳转到主要内容

TBD

项目描述

# Devnest工具

用于管理devnest硬件“预留”的简单CLI。

此工具的主要用例是为调试和开发工作预留共享节点。

当前实现使用Jenkins API和存储在Jenkins内部的元数据来管理DevNest中硬件的生命周期。

一旦节点被预留,它将被下线,因此其他Jenkins用户无法使用它,直到预留到期并被清理。

### 使用方法

## 配置文件

默认情况下,devnest会查找~/.config/jenkins_jobs/jenkins_jobs.ini或/etc/jenkins_jobs/jenkins_jobs.ini(按此顺序)。

可以将用户、密码和URL等CLI参数替换为包含这些信息的配置文件,并使用–conf标志传递此文件的路径。

`[jenkins] user=JENKINS_USERNAME password=JENKINS_API_TOKEN url=https://JENKINS_URL`

JENKINS_API_TOKEN可以在Jenkins中找到,地址为

https://JENKINS_URL/user/JENKINS_USERNAME/configure

## 运行DevNest CLI

在虚拟环境中运行

`git clone https://github.com/rhos-infra/devnest.git virtualenv my-devnest-virtenv source my-devnest-virtenv/bin/activate pushd devnest pip install . devnest --help`

## 示例命令

在“共享”服务器池中基于正则表达式列出 `devnest --conf config.ini list -g shared "*my_node_0?"`

在“共享”服务器池中列出所有 `devnest --conf config.ini list -g shared`

从“共享”池中预留节点4小时(正则表达式必须匹配1个节点) `devnest --conf config.ini reserve -g shared -t 4 *my_node_03`

释放预留 `devnest --conf config.ini release *my_node_03`

CHANGES

0.0.2

  • 在设置后离线从属机

  • 在设置后离线从属机

  • 增加对从Jenkins主CLI命令中“断开连接”的支持 - 代码格式修正

  • 增加对从Jenkins主CLI命令中“断开连接”的支持

0.0.1.dev49

  • 将IP地址添加到列表列

  • 添加转储配置选项

  • 添加目录选项以一次性更新多个从属机

  • 确保强制预留仅适用于未预留的节点

  • 添加无特定节点强制预留的功能

  • 在预留时将主机添加到JSON输出

  • Pep8简单修正

  • 如果没有指定正则表达式来匹配主机,则预留组内第一个可用的主机

  • 将JSON输出添加到管理命令

  • 少量tox修正

  • 添加python3兼容性

  • 允许扩展已预留的节点

  • 添加强制预留当前运行CI作业节点的选项

  • 为非空闲状态的节点添加新状态

  • 允许从环境变量中加载参数

  • 使用CrumbRequester代替Requester

  • 在上线前确保节点临时离线

  • 在标记为在线前确保节点临时离线

  • 添加基于状态的列表节点选项

  • 将devnest从私有仓库移动到rhos-infra仓库后更新链接

  • 修复代码格式

  • 修复包含错误引号的JSON解析

  • 添加基于XML文件设置从属机的功能

  • 修复函数参数名称

  • 添加AUTHORS文件

  • 添加设置重置挂起状态的选项

  • 增强列中的组为逗号分隔列表

  • 更新选项以更友好地使用

  • 启用打包

  • 用户可以选择解析类型输出

  • 配置文件的默认位置

  • 将Jenkins重命名为DevNest

  • 添加额外的元数据以方便登录到机器

  • 将jenkinsnodecli重命名为devnest

  • 添加vCPU功能

  • 引入节点功能

  • 更改输出中的列名

  • 更改节点状态的术语

  • 添加指定预留节点的所有者的选项

  • 修复节点与描述不同步的问题

  • 添加管理节点组/标签的选项

  • 将CLI参数和支持函数更改为对标准用户更严格,例如,一个用户不能释放另一个用户的箱子

  • 添加信息以提高用户体验

  • 修复对Jenkins.node的不正确调用(性能)

  • 固定函数 get_reservation_endtime_epoch

  • 添加了无参数指定时的错误处理

  • Jenkins Node CLI 的初始提交

项目详情


下载文件

下载适合您平台文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。

源代码分发

devnest-0.0.2.tar.gz (26.2 kB 查看哈希值)

上传时间 源代码

构建分发

devnest-0.0.2-py2.py3-none-any.whl (27.2 kB 查看哈希值)

上传时间 Python 2 Python 3

支持