ROS Resources: Documentation | Support | Discussion Forum | Service Status | Q&A answers.ros.org

Repository consolidation: moving released packages to another repo?

I moved several packages from the repo where they were formerly released into another.

Are there any special problems with releasing newer versions using the target repo?

  • They will have higher version numbers.
  • I can run bloom on the new repository.
  • The old repo is no longer needed. Should its rosdistro stanzas be deleted?
1 Like

I don’t think I have a full grasp on the situation, did you move the source code of the packages or just the release repository or both?

I don’t think there should be any issue. However, w.r.t. the rosdistro, you cannot have packages with the same name listed in multiple repositories, so that might require that you modify or remove the old stanzas. I think our rosdistro pull request checker should detect this, but if it doesn’t complain, bring the pull request to our attention and we can check it again.

I only moved the source code. I have not done anything with either of the release repositories yet, because the system is not quite ready for its next release.

The old repo is being retired, so its release repo probably will too.

I expect the rosdistro problem you mention will arise. I’ll test your pull request checker, and let you know if it does not detect the problem.

I assume that the deb repositories should be OK, as long as the version numbers increase.

Yeah, when you make the pull request for adding the new repository, I would recommend that you manually update that PR after bloom creates it to remove the old rosdistro stanzas for the old repository. That way it will atomically switch the rosdistro to the new location of the packages.

You’re right the debian packages just care that version numbers only increase.

I ran the bloom-release, and the request checker worked as expected:

==> Generating pull request to distro file located at 'https://raw.githubusercontent.com/ros/rosdistro/28b9955c578e09ed4b31385fa08112f22a9e2130/indigo/distribution.yaml'
Failed to open pull request: AssertionError - Duplicate package name 'multi_level_map_msgs' exists in repository 'multi_level_map' as well as in repository 'bwi_common'
``

Bloom refused to create a rosdistro pull request, so I’ll need to do that manually if the change needs to be atomic. The simpler solution would be to manually delete the old repository, and then run bloom-release -p.