Skip to content

ROS Release Progress #34

@Sharwin24

Description

@Sharwin24

This issue will track notes, issues, and feedback from going through the ROS release tutorial and all of the relevant steps.

Joining a Release Team

Northwestern MSR already has a release team (numsr) and a github issue was created by Matt to add me

Licensing

The Apache 2.0 License was picked since it is recommended in the tutorial for indexing your first package. This License is applied to all of the packages in this repo.

Changelog

The Changelog was generated by running this command in the repo root:

catkin_generate_changelog --all

Bumping the Package Version

This command from the tutorial ensures each package has a unique package number that increases as they are updated

catkin_prepare_release

The potential_fields_library package is pure C++ and has the build_type ament_cmake so it's recognized by this command and will update the CHANGELOG.rst and package.xml automatically. This should be okay despite this library being pure C++ since if a user wanted to extract it and build it with cmake they would still be able to without a lot of friction.

Repository type: git
Found packages: potential_fields, potential_fields_demos, potential_fields_interfaces, potential_fields_library
Warning: the following package are not of build_type ['catkin', 'ament_cmake', 'ament_python'] and may require manual steps to release': potential_fields_library
Continue anyway [y/N]?

Indexing on rosdistro

I've opened this pull request to request this repository (4 packages) to be indexed into the ros2 jazzy distribution, which I'll need before creating a release repository.

Adding an entry into ROSDISTRO/distribution.yaml

I added my repository to the bottom of the file and then used this command to reformat my entry to fit the rosdistro standards:

rosdistro_reformat index.yaml
  potential_fields:
    doc:
      type: git
      url: https://github.com/argallab/potential_fields.git
      version: main
    source:
      type: git
      url: https://github.com/argallab/potential_fields.git
      version: main
    status: developed

Creating a Release Repository

Once the PR is merged, I can move forward creating the release repository following the instructions. This entails opening an issue in the ros2-gpb-org repository

Bloom Release

The next step is to run the bloom release tool to add my repo to the ROS build farm.

bloom-release --new-track --rosdistro jazzy --track jazzy my_repo

This step will prompt me to enter in the following information:

  • Your packages are in a repository called my_repo
  • You are releasing a branch called main
  • The repository is hosted on GitHub at https://github.com/my_organization/my_repo.git
  • Your release repository is at https://github.com/ros2-gbp/my_repo-release.git

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