You're reading the documentation for an older, but still supported, version of ROS 2. For information on the latest version, please have a look at Humble.
Releasing a ROS 2 package with bloom
Table of Contents
Introduction
This page describes how to prepare a repository for release on the public ROS 2 buildfarm. After you’ve created a package, this is the next step towards getting your package in to the publicly-available Debian packages (i.e., you will be able to install the package via apt
). This page includes the ROS 2-specific instructions to execute before following the Bloom release tutorial on the ROS Wiki.
Required Tools
bloom
>= 0.10.7catkin_pkg
>= 0.4.23
Ensure that you have the latest version of bloom and catkin_pkg
See above version requirements.
Make sure you have the ros repositories in your sources (see instructions here).
Install the latest version of bloom and catkin_pkg:
sudo apt install python3-catkin-pkg python3-bloom
If you’re using a version of bloom older than 0.6.8 you’ll need to use the v3 index url for releasing.
export ROSDISTRO_INDEX_URL='https://raw.githubusercontent.com/ros/rosdistro/master/index.yaml'
Minor differences from ROS 1 Bloom
If you’ve bloomed packages before in ROS 1, the ROS 2 process should be familiar to you. The major difference is that release repositories for ROS 2 packages live in a dedicated GitHub organization: ROS 2 release repositories. The dedicated organization allows new automation supporting the Rolling distribution.
Release repositories hosted elsewhere are still supported for stable distributions if you are not planning to release the repository into Rolling. Since stable distributions created from Rolling will start with release repositories in the ros2-gbp organization it is recommend that you use the ros2-gbp release repositories for all ROS 2 distributions to avoid fragmenting the release information.
A ros2-gbp release repository may become a hard requirement for Rolling in the future and maintaining a single release repository for all ROS 2 distributions simplifies the maintenance of releases for both the Rolling distribution maintainers and package maintainers.
In order to request new release repositories or update maintainer access to existing release repositories in the ros2-gbp organization you can create an issue in the ros2-gbp-github-org management repository.
Procedure
Same as in ROS 1: Following this tutorial
If porting a ROS 1 package to ROS 2, it’s recommended to create a new -release
repository.
Build Status
Individual build details on the build farm Jenkins frontend.
The ROS 2 Package Status Pages (e.g. Foxy Default).