Release ROS Stacks
NOTE: This page refers to releasing rosbuild stacks only, for releasing catkin based packages see: bloom
ROS has a release infrastructure that enables you to take your ROS stacks and distribute it to the rest of the community.
What it does:
Create versioned releases of ROS stacks.
Submit tarballs to the ROS debian packaging system for inclusion in a ROS distribution, which enables them to be installed by apt-get.
This only works with SVN or Mercurial or Git-based code repositories. It should be simple to extend it to other SCM tools and we welcome bzr users who are willing to contribute patches.
We only have one prohibition on stacks being released:
they may not access external source control repositories during the build process, e.g. by using svn_checkout.mk. This generally is only used in thirdparty library integration.
Please see this mailing list thread for more details.
Doing a release
Before you do any release, first you need to follow the setup instructions.
Once you're setup, go ahead and do the release.
Release maintainer list
Please sign up for the (low-volume) ros-release mailing list to receive status updates on releases.
Automated build tests
Sync to main repository policy
We gate pushing into the main repo for quality purposes. (If an improper release is made and it breaks half the packages in the repository we don't want to push the repo public with half the packages missing). We also do it to prevent significant churn on downloads for our users. (A full release requires each computer updating to download over a GB of data. It's not bad on our local network, but it is a significant burden when you consider that there are thousands of computers updating from the repo regularly. )
If you have something you would like to release quickly please email the ros-release email list.