恒美微站 Logo 恒美微站
  • 首页
  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心
  • 联系我们

如何为 Ansible PR 编写合规的 changelog 片段?命名规则、sections 校验与格式约定

  • 首页
  • 资讯中心
  • /
  • 如何为 Ansible PR 编写合规的 changelog 片段?命名规则、sections 校验与格式约定

相关资讯

TVBoxOSC教程:如何在旧电视盒上10分钟搭好家庭视频中心 2026/9/9 22:29:44
影像金字塔构建实战:重采样算法选型与C++实现 2026/9/9 22:24:43
ansible-test 的 Docker 容器怎么选?default、base 与发行版容器的适用区别 2026/9/9 22:24:43

最新资讯

如何快速上手 Audacity:免费音频剪辑与录音的完整指南
HarmonyOS录音转文字全流程实战:AVRecorder封装与语音识别链路详解
梅特卡夫定律的双刃剑:连接数平方膨胀如何摧毁分布式系统扩展性
Mask R-CNN实战:从mask_rcnn_ballon.zip到实例分割训练与推理
用DQN训练愤怒的小鸟:强化学习实战全流程解析
DeepTutor 上手实录:从装好到跑通第一条带引文的解答

今日推荐

基于MongoDB的图书管理系统:数据建模与Spring Boot+Vue实战
Claude Code安装配置全攻略:从零开始用上终端AI编程助手
tmux 会话管理与终端复用:AI 编程工作流的调度中枢实战

本周热门

超人会飞不算本事:系统稳定依赖清晰规则与边界设计
超人VS蜘蛛侠:拆解超级IP的影响力与传播方法论
基于CNN的调制信号识别:MATLAB实现时频图分类实战

本月精选

自研推理加速器Redwood:两周内实现PyTorch模型高效部署的实战教程
V4L2摄像头采集实战:从camera_client.rar到出图全流程解析
从“谁发明了钢琴键”到知识问答智能体:RAG与记忆工程实践

如何为 Ansible PR 编写合规的 changelog 片段?命名规则、sections 校验与格式约定

发布时间:2026/9/9 22:29:44
如何为 Ansible PR 编写合规的 changelog 片段?命名规则、sections 校验与格式约定 如何为 Ansible PR 编写合规的 changelog 片段命名规则、sections 校验与格式约定【免费下载链接】ansibleAnsible is a radically simple IT automation platform that makes your applications and systems easier to deploy and maintain. Automate everything from code deployment to network configuration to cloud management, in a language that approaches plain English, using SSH, with no agents to install on remote systems. https://docs.ansible.com.项目地址: https://gitcode.com/GitHub_Trending/ans/ansible向 Ansible 提交 PR 时除了代码改动本身还必须在changelogs/fragments/目录下新增一个 changelog 片段fragment文件。发布流程会从该目录的片段生成版本对应的CHANGELOG-vX.Y.rst而devel分支上只有片段、没有生成好的 changelog见 changelogs/README.md。本文说明如何命名和编写片段使其满足changelogs/config.yaml的 sections 约束并通过ansible-test sanity的 changelog 检查。何时必须新增片段context/documentation-standards.md 给出的 changelog 要求是改动需要在changelogs/fragments/中以 YAML 文件形式记录每个 PR 创建一个新的片段文件绝不复用已有片段以避免合并冲突片段结构遵循 changelogs/config.yaml 中sections键定义的分区提交前核对片段使用的 section 是否合法。context/contributing.md 同时要求所有 PR 都面向devel分支提交片段应随 PR 一起进入devel。文件命名规则命名约定来自 context/documentation-standards.md有关联 issue 时{issue_number}-{short-description}.yml例如86319-ssh_askpass_prompt.yml没有 issue 时{component}-{description}.yml例如 alpine_user_mod.yml。sanity 检查器实际接受的扩展名是.yml和.yaml两种见 changelog.py 中allowed_extensions (.yml, .yaml)仓库中也存在v2.22.0-initial-commit.yaml这样的.yaml片段。另外检查器禁止片段文件为点文件仅有.keep和.gitkeep例外所以在changelogs/fragments/下不要放入其他隐藏文件。使用合法的 sectionscontext/documentation-standards.md 要求先核对片段使用的 section 是否来自changelogs/config.yaml。当前该文件changelogs/config.yaml中sections键定义的合法取值及其展示名称为section 键展示名称major_changesMajor Changesminor_changesMinor Changesbreaking_changesBreaking Changes / Porting Guidedeprecated_featuresDeprecated Featuresremoved_featuresRemoved Features (previously deprecated)security_fixesSecurity FixesbugfixesBugfixesknown_issuesKnown Issues片段就是一个以这些键为顶层键的 YAML 文件值是该 section 下的条目列表。配置中keep_fragments: true意味着发布后片段会被保留notesdir: fragments指定了片段目录。条目格式约定条目格式来自 context/documentation-standards.md- {component} - {description} ({optional URL to GH issue})即以组件名开头破折号后是改动描述括号内是可选的 GitHub issue URL。条目内容支持 Sphinx 标记代码引用使用双反引号code。context/coding-style.md 还要求 docstring、注释和 changelog 片段尽量一行一句话避免超长行。仓库中现成的片段示例可以直接参照。带 issue URL 的 bugfix77691-git-track-submodules-branch.ymlbugfixes: - git - use the branch configured in .gitmodules or the remote HEAD instead of hardcoding master when track_submodulesyes (https://github.com/ansible/ansible/issues/77691).minor change 条目86319-ssh_askpass_prompt.ymlminor_changes: - ssh connection plugin - inspect SSH_ASKPASS_PROMPT in SSH_ASKPASS script for reliability (https://github.com/ansible/ansible/issues/86319)不带 issue URL 的条目sort_obfuscation.ymlbugfixes: - module_utils sanitize_keys and remove_value functions now sort their input to ensure matching subsets are always obscured.按自己的改动选择对应 section套用以上结构即可完成片段。用 ansible-test sanity 验证context/running-tests.md 说明 sanity 测试不需要--docker且应对整个变更集而不只是正在编辑的文件跑 sanity。与 changelog 相关的命令# 对单个片段路径运行 sanity路径相对仓库根目录 ansible-test sanity -v changelogs/fragments/86319-ssh_askpass_prompt.yml # 只运行名为 changelog 的 sanity 测试 ansible-test sanity -v --test changelog # 查看全部 sanity 结果 ansible-test sanity -vchangelog 检查的行为见 changelog.py只拦截changelogs/config.yaml和changelogs/fragments/下的文件定义于 changelog.json 的prefixes校验扩展名只能是.yml或.yaml点文件直接报错确认changelogs/config.yaml存在缺失时输出config file does not exist对上述片段执行python -m antsibull_changelog lint由 antsibull-changelog 工具检查片段内容与 sections 的匹配性。检查通过即无对应报错输出出现类似file must not be a dotfile、extension must be one of: .yml, .yaml的提示时说明文件命名不合规而 lint 阶段的报错则指向片段内容如使用了config.yaml中不存在的 section 键。限制与说明devel分支不生成 changelog只有片段CHANGELOG-vX.Y.rst是在发布流程中从片段生成的changelogs/README.md。片段文件不要复用或改名已有片段一个 PR 对应一个新文件这是为了避免合并冲突context/documentation-standards.md。配置中release_tag_re、prelude_section_name: release_summary等键面向 changelog 生成流程编写片段时无需修改config.yaml本身只需让自己的 section 键与其中的sections列表一致。【免费下载链接】ansibleAnsible is a radically simple IT automation platform that makes your applications and systems easier to deploy and maintain. Automate everything from code deployment to network configuration to cloud management, in a language that approaches plain English, using SSH, with no agents to install on remote systems. https://docs.ansible.com.项目地址: https://gitcode.com/GitHub_Trending/ans/ansible创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

关于恒美微站

恒美微站专注于为个体商户、工作室提供极简自助建站服务,让每个人都能轻松拥有专业网站。

快速链接

  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心

服务项目

  • 可视化建站
  • 拖拽编辑
  • 主题定制
  • SEO 优化
  • 网站托管

联系方式

  • 📍 地址:北京市朝阳区建国路 88 号
  • 📞 电话:400-888-8888
  • ✉️ 邮箱:info@hmyw.cn
  • 🕐 时间:周一至周日 9:00-18:00

© 2024 恒美微站 hmyw.cn 版权所有 | 京 ICP 备 12345678 号