跳转到主要内容

chacra服务的客户端工具

项目描述

chacractl

chacractl是与chacra服务(http://github.com/ceph/chacra)交互的客户端接口。

配置

客户端在$HOME/.chacractl位置写入配置文件,包含一些必要信息

# This file was automatically generated by the chacractl CLI
# make sure to update it with the correct user and key to talk to the API

url = "http://example/"
user = "admin"
key = "secret"
ssl_verify = True

这些值需要修改,以便CLI可以与远程API交互。

二进制文件

CLI允许与二进制文件进行一些交互,具体需求可能因操作而异。例如,尝试上传二进制文件时,工具可以接受标准输入(stdin)或实际的文件输入。

创建

对于上传单个二进制文件,最好将完整路径作为binary子命令的最后一个参数传递。

chacractl binary create project/ref/distro/distro-version/arch /path/to/binary.rpm

但是为了方便,如果发送多个文件,也可以从stdin接收它们,通常是通过find命令的输出,该命令可以用grep或类似工具过滤。

下面是一个类似命令的示例,用于像ceph-deploy这样的项目。

find ~/repos | grep ceph-deploy | grep rpm | grep noarch | grep el6
| chacractl binary create ceph-deploy/master/centos/6/noarch

如果已存在二进制文件且需要重新上传,则必须使用--force标志。在这种情况下,请求将是一个PUT请求,并且资源将在API中被覆盖。

存在

检查指定的URL端点是否存在。此子命令需要完整的URL部分(与其他子命令不同,它们需要从项目名称开始的URL部分)。

chacractl exists repos/ceph-deploy/master/centos/7

如果未找到端点,则将返回非零退出状态。

仓库

仓库可以更新或完全重新创建。当API发生变化而仓库创建没有被触发时,这很有用。

重新创建

recreate调用将完全删除磁盘上的仓库,并指示API排队创建仓库。这些操作不是立即发生的:仓库的删除将在请求处理完成后立即发生,而仓库创建将在队列完成工作(可能是在配置的超时后)时完成。

一个简单的调用如下

chacractl repo recreate ceph/infernalis/debian/jessie

注意需要完整的分发版本路径。

更新

类似于recreate,但它不会在排队请求之前从磁盘上删除实际仓库。当客户端添加了二进制文件并希望确保它被添加到仓库中时,这很有用。

chacractl repo update ceph/infernalis/debian/jessie

设置-raw

仓库的类型是从它们包含的二进制文件推断出来的;如果上传了rpm,则仓库将创建为rpm仓库;如果是debs,则结果将是Debian仓库。'Raw'仓库是用于不需要进一步处理为仓库的二进制文件的简单容器,例如.zip文件或其他将被简单下载的二进制产品。对于此类仓库,请使用set-raw来设置仓库类型,以便不请求异步仓库构建。

chacractl repo set-raw ceph/infernalis/windows/1809

项目详情


下载文件

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

源分发

chacractl-0.0.24.tar.gz (13.4 kB 查看哈希值)

上传时间

构建分发

chacractl-0.0.24-py3-none-any.whl (16.6 kB 查看哈希值)

上传时间 Python 3

由以下支持