0
$\begingroup$

Rosanswers logo

As part of the release process for a new package, bloom-release will git clone the release repository and start adding branches and commits.

bloom-release seems to assume master is the default/main branch, and will create one if it doesn't exist.

For release repositories created on Github, and unless users have configured otherwise, new repositories will have their default branch set to main now instead of master.

This works OK for regular releases (as master will just be another branch to git and Github, and Bloom is able to find everything it needs just fine), but in case packages need to be ignored / excluded from an initial release, a ${ROS_DISTRO}.ignored file should be added to the master branch, or Bloom will not find it (it creates a master branch and ignores main completely, including the .ignored file in it).

I've not been able to find a command line arg which lets me specify the branch Bloom should use for this.

Is there a way to do this, or should I be approaching this in a different way?


Originally posted by gvdhoorn on ROS Answers with karma: 86574 on 2021-01-06

Post score: 1

$\endgroup$

1 Answer 1

0
$\begingroup$

Rosanswers logo

This is currently something that is hard-coded in Bloom: https://github.com/ros-infrastructure/bloom/blob/master/bloom/config.py#L61 If you browse around in there you'll see some code which normalizes bloom's configuration to live on the bloom config branch. (before my time bloom's configuration lived on a bloom branch.)

Supporting other config branches, or if nothing else, reverting the config branch change so that we go back to using bloom is worthwhile but not something that I've got on any dedicated roadmap. No matter what we decide to hard code I'm sure that someone will find a complaint to make but I also can't think of a way to make it detectable that is completely robust with respect to temporary branches for pull request workflow changes to the bloom config branch.


Originally posted by nuclearsandwich with karma: 906 on 2021-04-06

This answer was ACCEPTED on the original site

Post score: 1


Original comments

Comment by gvdhoorn on 2021-04-07:\

I also can't think of a way to make it detectable that is completely robust

what about using the default branch?

I asked this question in the context of "rename master to main), and then running into the problem of Bloom not really working any more when you'd want to ignore certain packages.

I don't believe that'd need something which always works, as the context is pretty narrow:

  • first time release
  • 'empty' release repository
  • *.ignored file in the repository

re: where to store configuration: git notes comes to mind, but I guess it's actually pretty convenient to track Bloom's configuration as a versionable artefact, and that's not what notes are for afaik.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.