-
-
Notifications
You must be signed in to change notification settings - Fork 4.6k
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
[Release] One click release #4053
Comments
Should we be creating the independent binaries as well for Linux and Windows? |
This would be amazing ❤️ In personal order of priority:
|
Request for @PointCloudLibrary/maintainers Can we get the steps used to create the releases as bash or powershell scripts? |
No Bash script this time, sorry. From my side the process always involved two PRs with a tag in between:
|
I'm not entirely sure if it's possible but let's go step-by-step here. This is our usual list of steps. Task list
Everything else from here onward can be automated
That being said, PCL is becoming more and more a devops wet dream. |
|
Part 1 Update: To release new_verion=<INPUT_FROM_SOMEWHERE>
sed -i "s,[0-9]\+\.[0-9]\+\.[0-9]\+,${new_version}," README.md
sed -i "s,VERSION [0-9.]*),VERSION ${new_version})," CMakeLists.txt Part 2 Update: Post release new_version=<INPUT_FROM_SOMEWHERE>.99
sed -i "s,VERSION [0-9.]*),VERSION ${new_version})," CMakeLists.txt Questions:
Once this is figured out, we'll have the achieved almost all milestones for a 1 click release |
Will it be ok to create and merge the PR using GitHub API without waiting for CI result? |
I'll share my notes that steps to generate PCL All-in-one Installer. |
Is it possible to automate the setup? I noticed a lot of manual interruptions and restarts in the process you lined to. |
I've wanted do it for a long time, but I'm not sure if this possible to automated. |
残念ね. What about the pdb zip files? I saw that NSIS has a slack, it might help to ask around if there's some way to only perform a few steps. If not, maybe a future version will have the features. |
Currently, I'm manually collect the pdb files for compressing them into an archive. |
I'm not a fan of NSIS. The packages cannot be unpacked easily and it is complicated to perform a distributed installation e.g. via group policies. For the installation, admin rights are usually required. In managed domains not everyone has these rights. I'm more for the Windows Installer (MSI). The packages can be built with WiX, for example. If NSIS is unavoidable, it might be useful to create the packages as ZIP files in parallel. |
Hi @OgreTransporter! Most of the terms sound quite foreign to a non-Windows user. Having said that, if you can create a process for using WiX to create MSI binary, we can work out how to integrate the binary generation and post-installation testing in the release pipeline. IMO, the technology (NSIS or WiX) isn't as important as its integration in CI. If the end result is the same, I don't think even the users will have anything to complain. |
Giving admin rights to all users in larger networks is quite dangerous, regardless of the operating system. From Windows on your home computer you are the only user who is used to have admin rights. But if you work in a company or university network, for example, not all users have these rights. Admin rights are required to install software, unless it is a self-extracting archive. If you then want to install PCL to a larger group of people, you can either do this manually on each computer or via a server in the system. To do this, the installation must either be an MSI package or support an "unattended installation". MSI is better, because you can install patches and updates more easily. The alternative are simple ZIP archives, which can be unpacked by any user - even without admin rights. As a second alternative the users can build the PCL themselves - which I do. If you have NSIS integrated, this is OK. It's probably not that much effort to additionally pack the files as a ZIP file again, is it? But you can also save the effort for NSIS and Wix and just offer ZIP files, that shouldn't be a problem either. |
FYI, vcpkg can be exported package to a zip file by |
We don't have NSIS integrated. The installers are made manually and tested manually by @UnaNancyOwen |
Release pipeline works, tested for 1.11.1-rc1 Please contribute code to release the following:
|
Moving the target for rest of steps to 1.12 |
Just compress the build artifacts in a zip archiv ;-)
This is correct, but vcpkg means that PCL must be built with all dependencies first. |
I'm not a Windows user, hence I wrote unknown. I've seen issues on Linux/Darwin when the artifacts aren't compiled as static. I'd encourage you to submit a PR to the release script to do exactly that if possible since you'd be able to understand the error messages unlike me who'd have to ping internet search engines or other people for help. |
Is your feature request related to a problem? Please describe.
Releasing PCL requires effort from multiple contributors to add the binaries for different platforms. That takes time, and is difficult to trust
Expected behavior
Describe the solution you'd like
We can use the CI to generate the binaries (and source code), and the SHA2 and MD5 checksums for each artifact for different platforms. The artifacts can then be added to the GitHub release page using the API (or a CI shortcut)
TODO list:
perception_pcl
, a large open-source downstream user of PCL (Add dockerfiles for testing before release #3995)Describe alternatives you've considered
Manual release is not feasible in the long term. Considered and discarded.
The text was updated successfully, but these errors were encountered: