乐于分享
好东西不私藏

机器人系统——ROS2文档(进阶)—在 ROS 构建农场中测试您的代码

机器人系统——ROS2文档(进阶)—在 ROS 构建农场中测试您的代码

ROS 2 构建农场非常强大。除了创建二进制文件外,它还会在拉取请求(PR)合并之前,通过编译和运行您 ROS 包的所有测试来测试 PR。

有四个先决条件:

  • GitHub 用户 @ros-pull-request-builder 必须有权访问该仓库。
  • GitHub 仓库必须设置好 webhook。
  • 您的包必须在 rosdistro 中建立索引。
  • test_pull_requests 标志必须为 true。

GitHub 访问权限

您可以在 GitHub 组织级别或仅对单个 GitHub 仓库授予 PR Builder 访问权限。

GitHub 组织

  1. 打开 github.com/orgs/%YOUR_ORG%/people(将 %YOUR_ORG% 替换为相应的组织)
  2. 点击“Invite Member”并输入 ros-pull-request-builder

GitHub 仓库

  1. 打开 github.com/%YOUR_ORG%/%YOUR_REPO%/settings/access(将 %YOUR_ORG%/%YOUR_REPO% 替换为相应的组织/仓库)
  2. 点击“Add people”并输入 ros-pull-request-builder
  3. 为其角色选择 Admin 或 Write(参见下一节)

WebHook

如果您授予 ros-pull-request-builder 完整的管理员权限,它将自动设置钩子。

或者,您可以通过仅授予其 写入 权限来避免需要完整的管理员权限。

  1. 打开 github.com/%YOUR_ORG%/%YOUR_REPO%/settings/hooks/new
  2. 输入 https://build.ros2.org/ghprbhook/ 作为 Payload URL
  3. 勾选以下选项:
    • Let me select individual events(让我选择单个事件)
    • Issue comments(议题评论)
    • Pull requests(拉取请求)

test_pull_requests

对于您希望进行 PR 测试的每个 ROS 发行版,您必须在 rosdistro 的相应部分中启用 test_pull_requests 标志。

  • 选项 1 – 在运行 bloom 时,您可以选择开启 PR 测试。
  • 选项 2 – 您可以谨慎地手动编辑 rosdistro 仓库中的相应文件,并创建新的 PR。

请注意,在添加 PR 之后,通常要到夜间 Jenkins 重新配置时才会创建作业。

本文档完整翻译自 ROS 2 Lyrical 官方文档,仅用于学习交流。