openSUSE:构建服务概念 按需下载
按需下载
按需下载(称为“DoD”)是一项便捷功能,可以更轻松地将现有存储库中的一组二进制软件包用作构建目标。
警告:设置完成后,现有的存储库必须完全静态。对 rpm 所做的更改将不会被 OBS 拾取。
OBS 中的按需下载功能
现在,用于从 Deb 或 Rpmmd 树中按需下载软件包基础和元数据的代码已合并到 OBS 中,以便更轻松地定位预先存在的发行版。 这可以显著减少二进制存储库服务器上的本地存储需求。 例如,openSUSE 11.0 每个架构需要大约 16 GB 的软件包空间,其中约 8 GB 在所有架构之间共享,约 8 GB 是每个架构所需的特定架构软件包。 安装 Debian:Etch 用于 i586、x86_64、ppc 和 arm 可能会导致需要 40 GB 的磁盘空间,而已经共享 noarch 软件包。
设置
必须在后端服务器上启用 DoD,并且必须在后端上按项目配置。
要启用它,请编辑 BSConfig.pm 文件
RPM
Deb
如果您正在使用按需下载功能,则无需从 DVD 镜像获取完整的软件包。 在 Deb 元数据格式的情况下(由下载指令中的 mtype 字段指示),您为每个架构获取一个 Packges 文件,并将其放置在 :full 目录中
..... # cd /srv/obs/build/Debian:Etch/standard/armv4l/:full # wget -c -q ftp://ftp.de.debian.org/debian/dists/etch/main/binary-arm/Packages.bz2 # bunzip2 Packages.bz2 .....
用于 arm、i586、ppc 和 x86_64 的 Debian:Etch 发行版的项目描述现在包含以下字段
.....
<download baseurl="http://ftp.de.debian.org/debian" metafile="Packages" mtype="debmd" arch="armv4l" />
<download baseurl="http://ftp.de.debian.org/debian" metafile="Packages" mtype="debmd" arch="i586" />
<download baseurl="http://ftp.de.debian.org/debian" metafile="Packages" mtype="debmd" arch="ppc" />
<download baseurl="http://ftp.de.debian.org/debian" metafile="Packages" mtype="debmd" arch="x86_64" />
<repository name="standard">
<arch>armv4l<arch>
<arch>i586<arch>
<arch>ppc<arch>
<arch>x86_64<arch>
</repository>
.....