Fedora QA Wiki发布验证事件Fedora消息传递使用者
relvalconsumer的Python项目详细描述
relvalconsumer是用于创建Fedora的Fedora消息传递使用者 发布验证测试事件。每次出现构图时,它都会运行 各种检查以决定是否应为 作曲。它为每晚的作曲和“候选人”都创造了活动 作曲。
它应该为下一个版本创建第一个晚上 释放出去。从那时起直到发布,它将创建新的 每晚定期举办活动。它永远不会减少每晚的活动 在当前事件发生三天后。三到十四天 在当前事件之后,如果某些包 已更改(这些在代码中定义)。十四天后 将在每晚出现合成时创建事件。会的 一旦所有候选组合出现,就为它们创建事件。
它不应该为生皮的给定释放创建事件 在发布分支之后编写,因为在这一点上wikitcms将 决定生皮作曲的任何概念性事件 在当前稳定版本之后释放two,此脚本将 仅为当前稳定后的版本one创建事件 释放。
注意,在生产模式中,消费者被配置为创建事件 在生产wiki中,向test@mail发送公告电子邮件 列表。所以,真的,只有一个人会有这种感觉 生产模式,可能是我。请不要把它放进去 生产模式除非你接管我的工作什么的。
只要同时安装了relval,relvalconsumer也将运行 每当新创建的事件创建 事件。
安装
安装所需的外部python库,然后使用setuptools 安装,例如:
python3 setup.py install
您通常还需要执行以下操作:
dnf install fedora-messaging python3-hawkey
配置
设置为侦听真实合成的示例配置文件 生产Fedora消息总线上的事件提供为 relvalconsumer.toml。要使用它,您至少必须更改队列 名称从00000000-0000-0000-0000-000000000000到唯一的 私有字符串;官方建议使用生成的uuid 由Uuidgen。然后将文件放入/etc/fedora-messaging。
然后,您可以将消费者作为系统服务启用并启动:
sudo systemctl enable fm-consumer@relvalconsumer sudo systemctl start fm-consumer@relvalconsumer
测试和生产模式
配置设置relval_prod决定使用者 在“生产”或“测试”模式下运行。这是消费者设定的 配置文件的consumer_config节。在测试模式下:
- 消费者在staging wiki(而不是production wiki)上创建事件
- 通知电子邮件将被记录而不是邮寄出去
在这种模式下,和消费者玩是相当安全的。你 需要本地Fedora消息代理实例才能触发 不过,消费者可以随意选择。根据你的设置,你可以 还需要将routing_keys从.prod.更改为.dev.或 类似的。
对于“生产”:
- 消费者在生产wiki上创建事件
- 消费者向公共邮件列表发送电子邮件通知
请不要启用生产使用者,除非您 当然,你的工作就是创建官方活动。
许可证
relvalconsumer在 GPL,版本3或更高版本。见 COPYING和hearelvalconsumer.py本身的顺序。
贡献
可以在中提交问题和请求 Pagure。拉动请求 必须注销(使用-sgit参数)。通过签署您的 拉式请求您同意Developer’s Certificate of Origin:
Developer's Certificate of Origin 1.1 By making a contribution to this project, I certify that: (a) The contribution was created in whole or in part by me and I have the right to submit it under the open source license indicated in the file; or (b) The contribution is based upon previous work that, to the best of my knowledge, is covered under an appropriate open source license and I have the right under that license to submit that work with modifications, whether created in whole or in part by me, under the same open source license (unless I am permitted to submit under a different license), as indicated in the file; or (c) The contribution was provided directly to me by some other person who certified (a), (b) or (c) and I have not modified it. (d) I understand and agree that this project and the contribution are public and that a record of the contribution (including all personal information I submit with it, including my sign-off) is maintained indefinitely and may be redistributed consistent with this project or the open source license(s) involved.