Skip to content

Turtlebot CI job #32

@dhood

Description

@dhood

Here's what I have in mind for creating a CI job for the turtlebot demo. I am looking to get the direction approved before speaking with @nuclearsandwich about how to implement it.

As I imagine it, this will be a manually-triggered CI job while we're developing the demo and then can switch to a nightly once it's stable.

  1. Add the supplementary repos file as a jenkins parameter
    1. Modify the ci_job.xml template to include this parameter if something like supplementary_repos_file is set when evaluating the template.
  2. Add the ci_linux-turtlebot_demo job to the farm
    1. Add it to the create_jenkins_job.py script
    2. Set the default supplementary repos file to https://raw.githubusercontent.com/ros2/turtlebot2_demo/master/turtlebot2_demo.repos or something (using a similar strategy to 38f57f3#diff-10b89ee3f1ac5a693c0ff698ad83c16dR1)
  3. Pull the supplementary repos file into the source space
    1. Put a for-loop around this section that calls vcs
  4. For turtlebot demo dependencies available as binaries, only add them to the dockerfile if necessary
    1. Inject the installation of the dependencies into the dockerfile using sed as is done to modify the FROM command for arm jobs -- OR --
    2. Use the create_dockerfile method from ros_buildfarm to generate the Dockerfile from a template, only including turtlebot dependency snippet if appropriate
  5. Ask turtlebot demo developers to target PRs at the turtlebot2_demo.repos file, and PRs for additional binary dependencies at the turtlebot demo extra dependencies list on ros2/ci

I understand point 4 as just a "nice to have".

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions