DCI下载器模块
项目描述
DCI下载器
dci-downloader
是一个有用的工具,可以下载Red Hat产品的最新版本。
TLDR
$ sudo dnf -y install https://packages.distributed-ci.io/dci-release.el8.noarch.rpm
$ sudo dnf -y install dci-downloader
$ source ~/dcirc.sh
$ dci-downloader RHEL-9.2 /tmp/repo
需求
Red Hat SSO
DCI连接到Red Hat SSO。您需要一个Red Hat账户。
Remoteci
Remoteci是一个运行RHEL的虚拟机或裸机服务器。您应该检查您的remoteci
- 正在运行最新的RHEL 8版本。
- 目标文件夹中应有足够的空闲空间。
- 应能够访问
https://api.distributed-ci.io
(443).https://repo.distributed-ci.io
(443).https://registry.distributed-ci.io
(443).
安装
dci-downloader
已打包并作为RPM文件提供。
$ sudo dnf -y install https://packages.distributed-ci.io/dci-release.el8.noarch.rpm
$ sudo dnf -y install dci-downloader
配置
Remoteci创建
DCI连接到Red Hat SSO。您需要使用您的redhat.com SSO账户登录https://www.distributed-ci.io
。您的用户账户将在您第一次连接时创建。
首次连接后,您可以创建一个remoteci。转到https://www.distributed-ci.io/remotecis并点击创建新的remoteci
按钮。一旦您的remoteci创建成功,您可以在身份验证
列中检索连接信息。将这些信息保存到~/dcirc.sh
文件中。
到此为止,您可以使用以下命令验证您的凭据
$ source ~/dcirc.sh
$ dcictl remoteci-list
如果您在列表中看到了您的remoteci,那么到目前为止一切运行良好。
主题访问
在使用dci-downloader之前,我们需要检查您有权访问的主题(产品版本)列表
$ source ~/dcirc.sh
$ dcictl topic-list
如果您没有看到任何主题,那么您应该联系Red Hat的EPM,他们将为您提供您需要的主题访问权限。
用法
您现在可以使用dci-downloader下载产品的最新版本。
RHEL示例
示例命令:将最新RHEL-9.2组件下载到/tmp/repo文件夹。
$ dci-downloader RHEL-9.2 /tmp/repo
RHOSP示例
$ dci-downloader OSP16.1 /tmp/repo
dci-downloader还允许将组件关联的容器镜像镜像到本地匿名注册表中。
$ dci-downloader OSP16.1 /tmp/repo --registry local_registry_host:5000
ℹ 注意:除了使用dci-openstack-agent之外,提供可工作的匿名注册表是用户的责任。如果需要,可以通过在容器中使用Docker Distribution注册表来简单设置一个。
$ podman run --rm -p 5000:5000 registry:2
ℹ 注意:目前dci-downloader不会在注册表上清理/清除/取消标记任何镜像,直到提供合适的解决方案之前,这项责任由用户承担。
选项
默认情况下,dci-downloader将下载x86_64架构的所有变体,不包括调试RPMs。
下载其他架构
要下载其他架构,您可以使用--arch
选项指定这些架构
下载RHEL-9.2主题的x86_64和ppc64le架构
$ dci-downloader RHEL-9.2 /tmp/repo --arch x86_64 --arch ppc64le
特定变体
要仅下载特定变体,您可以使用--variant
指定这些变体
仅下载AppStream和BaseOS变体
$ dci-downloader RHEL-9.2 /tmp/repo --variant AppStream --variant BaseOS
过滤器
默认情况下,dci-downloader下载与主题关联的最新组件。但如果你想过滤这些组件,你可以使用--filter <type>
或--filter <type>:<tag>
选项。
仅下载最新的RHEL-9.2 compose
$ dci-downloader RHEL-9.2 /tmp/repo --filter=compose
仅下载带有标签nightly
的最新RHEL-9.2 compose
$ dci-downloader RHEL-9.2 /tmp/repo --filter=compose:nightly
下载整个compose
要下载所有内容,您可以在命令中添加--all
标志
$ dci-downloader RHEL-9.2 /tmp/repo --all
调试RPMs
要下载调试RPMs,您可以在命令中添加--debug
标志
下载带有调试RPMs的RHEL-9.2 compose
$ dci-downloader RHEL-9.2 /tmp/repo --debug
仅下载指定的软件包
要下载命令行上指定的软件包,请使用--package-filter
标志
下载RHEL-8.8的ppc64le架构的所有内核和glibc软件包
$ dci-downloader RHEL-8.8 /tmp --variant BaseOS --arch ppc64le --package-filter=kernel --package-filter=glibc
设置文件
您可以使用设置文件将参数发送到参数化dci-downloader。
使用--settings
参数
$ dci-downloader --settings "/etc/dci-rhel-agent/settings.yml"
设置.yml文件中的所有设置将覆盖cli参数。
设置文件的示例
download_folder: /tmp/repo
topics:
- name: RHEL-9.2
filters:
- type: compose
tag: nightly
- name: RHEL-8.6
filters:
- type: compose
tag: milestone
archs:
- ppc64le
variants:
- AppStream
- name: BaseOS
with_debug: true
代理
如果您正在使用代理,只需添加指向您的代理的HTTP_PROXY
或HTTPS_PROXY
环境变量。
许可协议
Apache License, Version 2.0(见LICENSE文件)
帮助
如果某些功能没有按预期工作,请确保您安装了最新版本
$ dci-downloader --version
$ dci-downloader --help
要联系DCI,请参阅问题和帮助
项目详情
哈希值 for dci-downloader-3.2.0.post202409120927.tar.gz
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 3769f83da4be44a4929486e25c8116e04199fa8da66f570d61b285a4f06b17b6 |
|
MD5 | 076cfd7d88946905aae3f7e14bcab369 |
|
BLAKE2b-256 | f18ad7e27de3d13c3bda77ae878fa99fcc783ec19048524244ab9cd60386136c |
哈希值 for dci_downloader-3.2.0.post202409120927-py3-none-any.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | f0c767fce3f37c2567c703529b06cf68a617f27c8547c76c6d9d6b387c7f9009 |
|
MD5 | 779d436b0dff2778f9a4a7adf256d616 |
|
BLAKE2b-256 | 2d3b8fdfa7a19a8c2e813be776de3bf0a3f193e149c4f8ff763b743ec9a277f2 |