[ROS summary] Release ROS2 package to ROS version

foreword

In the previous summary, I described how to publish ROS1 packages to ROS versions (Indigo, jade, kinetic, lunar, etc.). In this section, I described how to send ROS2 packages to the ROS community, such as publishing to ROS2 version. (ardent).

This page describes how to prepare a repository for release on the public ROS 2 buildfarm. After you've created a package, this is what brings your package into the publicly available Debian packages (ie: you'll be able to install the package via apt-get. This page contains ROS 2 specific instructions, which replace the Part 2 of the Bloom Publishing Tutorial on the Wiki .

Note: The release process for earlier ROS 2 versions relied mostly on git-bloom-releasesubcommands bloom-releaserather than the full open version workflow, so there could be issues.

 Compared with ROS1 bloom is different

If you published a ROS package using bloom before ROS1, the prerequisites for ROS2 are similar to ROS1. However, ROS 2 does not yet have tools to automate tagging and versioning for you (no equivalent to catkin_create_changelog).

request tool

For Ardent in ROS2:

  • bloom >= 0.6.2
  • catkin_pkg >= 0.4.0

Process

Step 1: changelog (optional)

Create/update CHANGELOG.rst, using the new format coming soon. Note that changelog is strictly optional, but it is highly recommended.

Be aware that errors in your changelog format may cause problems with your package release. Commit and commit the changes to the changelog.

Step 2: Mark the package version number

package.xmlUpdate the version of the package in . The version number must be higher than the previous version. For your first version, we recommend 0.0.1 or 1.0.0. Commit and push this change.

Note that you cannot use a version number that was previously used (see below). Some packages are released to ROS 1 and ROS 2, but due to this requirement, a different version control series must be used. ROS packages generally do not follow strict semantic versioning , so don't worry too much. If you want to see what others have already done, use the 0.xx or 1.xx series from the ROS 1 release and the 1.xx or 2.xx series from the ROS 2 release.

Step 3: Tag Your Bag

Create a tag that matches the version number you just entered into your package.xml, when you commit, you will encounter the version number. Now you know the reason you can't reuse version numbers - git only allows one tag with a given name in a repository.

Step 4: Make sure your bloom and catkin_pkg are up to date

To view the above version requirements, run the following command to track the current version:

sudo apt-get install python-catkin-pkg python-bloom

Step 5: Set ROS 2 environment variables

ROS 2 uses a brand new repository, all indexes for this version are kept at https://github.com/ros2/rosdistro , forked this repository. You can configure bloom by setting the ROSDISTRO_INDEX_URL environment variable.

export ROSDISTRO_INDEX_URL='https://raw.githubusercontent.com/ros2/rosdistro/ros2/index.yaml'

After exporting this, you will be able to use the ROS 2 release's ardent, bouncyetc. name in your bloom-release terminal commands.

Next step

Now, your repository is set up. You have manually completed the content of ROS 2 in this interface

Return to the Bloom publishing tutorial on the ROS Wiki and continue with "Creating a publish repository".

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=324842643&siteId=291194637