-
Notifications
You must be signed in to change notification settings - Fork 11
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update Dev/Release Branch Procedure #33
Comments
Hello! Great to see the work SpaceROS is putting in for reproducible builds. This was discussed in the ROS 2 production working group. I agree with the proposed workflow as it is what I use. This workflow has the advantage that it's easy to pull in the latest version during development with See related:
For packages installed with |
Thanks for linking that discussion, it is great input. We're working on updating our process and tooling based on what we learned from our last release (mostly updating tooling that only expected branches to also accept tag names), but so far the package pinning seems to work quite well. We've been letting |
Thanks! I've found exact pinning is only required for deployment to tests or production, and thus is tied to the deployment method. For docker, one common technique is a multistage dockerfile that can pin all the Conveniently, this recent ROS discourse thread is also related for those using a debian-based OS: https://discourse.ros.org/t/how-to-build-full-ros2-deb-packages-for-debian-distribution-which-are-built-from-source-code/35969/4 For some certifications, I could see this being not good enough. The Ubuntu developers are notoriously conservative with regards to updating packages in an LTS distribution, which is annoying for a quickly moving project, so we end up building a lot of packages from source either to fix bugs or better integrate with a CMake build system when the LTS version only comes with PkgConfig. This is a solved problem when using Yocto with meta-ros because Yocto is fully reproducible. For larger companies that deploy to Linux and can support building their own Linux distro, this option is most attractive. |
The steps we followed for the release today were:
|
During space-ros/space-ros#126 discussion of space-ros/space-ros#130 to address space-ros/space-ros#101 lead to @ivanperez-keera further fleshing out the branching and release strategy which leaves the
main
development branch able to target branch heads inspaceros.repos
while leaving therosinstall
generatedros2.repos
pinned to the upstream ROS distro release and fixes the versions of all packages when creating new tagged releases on a stable/release branch.The following needs to be updated to match:
The text was updated successfully, but these errors were encountered: