Setting up your stack for release
In order to release your stack, you'll need to add an entry to the appropriate .rosdistro file that tells the release scripts which _rules to use when releasing your stack. These rules tell the scripts:
where the code is being released from
where the code is being tagged to
If your repository maintainer has already done the repository setup, then this process should be very easy as your maintainer will have already created a set of _rules you can use.
Where are the rosdistro files?
The rosdistro files are stored in release/distros. Each rosdistro file has the name of the distribution release that it is associated with, e.g. cturtle.rosdistro.
Add an entry to the .rosdistro file
There are two ways of adding your own rules for your stack. If your repository already has a set of rules, you simply need to create an entry that points to those rules. If you need to specify rules for your own stack, you can do that as well, though it is slightly more complicated.
Adding an entry if there are repository rules
For the appropriate .rosdistro file, add an entry to the stacks: section with your stack name and the correct set of _rules. You should leave the version: set to null so that the system knows that your stack hasn't been released yet. The release scripts will fill this in.
For example, here is an entry for the arm_navigation stack, which uses the wg-ros-pkg-trunk rules.
arm_navigation: {_rules: wg-ros-pkg-trunk, version: null }Make sure that the rules you are using exist at the top of the file!
That's it -- once you've added this short entry, you are ready do the release.
Adding an entry if need to manually specify rules
For the appropriate .rosdistro file, add an entry to the stacks: section with your stack name and the custom set of _rules.
Here is an entry for pr2_navigation that uses custom rules:
pr2_navigation:
_rules:
svn:
dev: 'https://code.ros.org/svn/wg-ros-pkg/stacks/$STACK_NAME/branches/cturtle_branch'
distro-tag: 'https://code.ros.org/svn/wg-ros-pkg/stacks/$STACK_NAME/tags/$RELEASE_NAME'
release-tag: 'https://code.ros.org/svn/wg-ros-pkg/stacks/$STACK_NAME/tags/$STACK_NAME-$STACK_VERSION'
version:
arm_navigation: {_rules: wg-ros-pkg-trunk, version: }For more information on specifying rules, please see the _rules documentation.
Now you are ready to do the release.






