社群建设系统

CBS 是供特别兴趣小组成员用的社群建设系统。

快速入门

注册一个账号

  1. 访问 账号系统

  2. 选择 '新账号'
  3. 用你的信息填写完表格
  4. 在SIG小组内申请成为你所希望成为的成员
    • 每周一,在CBS 会议之前,管理员会和SIG成员一起敲定保荐申请

  5. 当被批准后,你需要安装客户端工具并生成你的SSL证书。更多信息参见 zh/HowTos/CentosPackager

  6. 执行cbs moshimoshi后你应该能在应答里看到你的用户名。

  7. 意外收获:Github 为 zsh 及 bash 用户提供(非官方的)自动填充功能(请留意 bash 的填充功能已获更新,zsh 的较旧。明白吗?)

获得帮助

如果你有关于CBS的问题,有许多方式可以获得帮助:

RPM 初班

SRPM=ksh-20120801-10.el6.4.src.rpm 
NAME=ksh
VERSION=20120801
RELEASE=10.el6.4
DISTTAG=el6

Koji 初班

Koji 有数个必须掌握的基本概念:

利用 CBS 进行建设

以下文档假设有一个名为 bananas 的特别兴趣小组。请用你的特别兴趣小组名称来取替,但我们已创建了 bananas 标签作为测试场地,让你可进行试验。

临时建设

Koji 提供一个选项让你可运用任何目标创建临时的组件。

    cbs build --scratch bananas6-el6 ksh-20120801-10.el6.4.src.rpm

标准建设

   cbs add-pkg --owner "username" bananas6-testing ksh
   cbs add-pkg --owner "username" bananas6-release ksh

这个动作必须为每个特别兴趣小组的每个组件进行一次。

   cbs build bananas6-el6 ksh-20120801-10.el6.4.src.rpm

将现有的建设加进一个标签内

有时,你想建设一个组件但收到如下的错误消息:

GenericError: Build already exists (id=1231, state=COMPLETE): {'name': '$pkgname'..... lot of details ....}

意思就是你已经将组件加进一个目的标签(利用 cbs add-pkg 指令,见上文),但当你尝试建设该组件时,koji 已用同一个 NVR 建设它,或许是在另一个标签下。 因此,koji 拒绝建设它,因为 koji 不会重新建设拥有同一 NVR 的组件。 简单的建决方法就是「标签」该建设,让它自动出现在你的标签库内。 假设该组件的名称是 yaml-cpp,而你已经建设了 yamp-cpp-0.5.1-6.el7(你可利用 koji 的寻找功能检查它是由谁创建,及拥有什么标签)。

cbs tag-build bananas7-testing yaml-cpp-0.5.1-6.el7

Kojira 将会重建软件库数据,并加入已建设的组件。

Git 建设

一个简单的例子:

 cbs add-pkg --owner "username" bananas7-testing tzdata
 cbs add-pkg --owner "username" bananas7-release tzdata
 cbs build bananas7-el7 "git+https://git.centos.org/git/rpms/tzdata.git?#e24d98"

常见错误信息

套件已获建立

GenericError: Build already exists

见上文有关「将现有的建设加进一个标签内」的段落。

已过期凭证

要是你看见这个错误信息:

"Error: [('SSL routines','SSL_shutdown', 'shutdown while in init')]

有可能你的 ~/.centos.cert x509 凭证已过期。你可以利用以下指令确定:

openssl x509 -in ~/.centos.cert -noout -text|grep "Not After"

如果它已过期,你只须(按照 https://wiki.centos.org/zh/HowTos/CentosPackager 内的第 2 步)利用 centos-cert 建立新的凭证便可以了。

采用已过时的 SSLv3

要是你看见这个错误信息:

Error: [('SSL routines', 'SSL3_READ_BYTES', 'sslv3 alert handshake failure'), ('SSL routines', 'SSL3_WRITE_BYTES', 'ssl handshake failure')]

那么你需要以手动方式修正你的 koji 实例,以 TLSv1 替代 SSLv3(已证实不安全)。

高级设置

应用多个 koji 实例

   koji -p cbs list-tags

已知问题

外部连结

官方文档:https://fedoraproject.org/wiki/Koji

Translation of revision 35

zh/HowTos/CommunityBuildSystem (last edited 2016-07-12 10:05:00 by TimothyLee)