ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

bloom 'Release Tag' mapping

asked 2016-06-24 14:21:09 -0500

mdhorn gravatar image

On the Releasing a Package for the First Time page it states that:

If you have a different version tagging scheme, then bloom can handle that using the 'Release Tag' configuration which you will see later in this tutorial while configuring a release track.

However, the tutorial page gives no details on the 'Release Tag':

The next few options (Version and Release Tag) should be okay to leave as the defaults and are rarely changed unless you are releasing a non-catkin package. Simply press enter to accept the default.

On another question Version tagging for new releases and distributions, it also references that you can use a different tagging scheme:

Also, usually we make tags simply x.y.z and we do not use prefixes or suffixes like vx.y.z or anything like that. Though we don't require that you do that, and bloom can handle different tagging schemes as long as they are consistent.

But I can't seem to find "How" to map between the version in the package.xml and that tags that are implemented in Git.

Can someone point me to the documentation on using the "Release Tag" properly? Or an existing example?

I'm building an external third party library which is tagged with "vX.Y.Z". In the package.xml I'm using "X.Y.Z" since catkin_make will enforce that version scheme. But what do I use in for 'bloom-release' to map between v0.9.2 git tag and 0.9.2 in the package.xml?

Or is the mapping not possible, and I need to request that the upstream git repo add duplicate tags without the prefix 'v'?

edit retag flag offensive close merge delete

2 Answers

Sort by ยป oldest newest most voted

answered 2016-06-24 17:44:13 -0500

tfoote gravatar image

You can set the release_tag by default it is :{version} In your case if it's just prefixing a v you can use v:{version}.

For more complicated release tag names the fallback is to simply set the full tag name manually for each release using the :{ask} key and bloom will prompt you at runtime.

release_tag parsing

edit flag offensive delete link more

answered 2016-06-27 01:05:35 -0500

mdhorn gravatar image

Running the bloom-release script does gives some details when prompted for the field:

Release Tag:
    For svn and tar only you can set the release tag to :{none}, so that
    it is ignored.  For svn this means no revision number is used.
    This means the user will be prompted for the release tag on each release.
    This means that the release tag will match the :{version} tag.
    This can be further templated, for example: "foo-:{version}" or "v:{version}"

    This can describe any vcs reference. For git that means {tag, branch, hash},
    for hg that means {tag, branch, hash}, for svn that means a revision number.
    For tar this value doubles as the sub directory (if the repository is
    in foo/ of the tar ball, putting foo here will cause the contents of
    foo/ to be imported to upstream instead of foo itself).

I just couldn't find this documented anyplace else.

thank you.

edit flag offensive delete link more

Question Tools



Asked: 2016-06-24 14:21:09 -0500

Seen: 162 times

Last updated: Jun 27 '16