-
-
Notifications
You must be signed in to change notification settings - Fork 363
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
uploading stable & consistent source tarballs to github for releases #1013
Comments
Thank you for looking into this and your suggestions. Right now we do not upload anything to Github as part of the release. We just declare a tag as a release. If there are ways to do this better in an automated fashion, then we will try to do this. Thank you for the links. I will look at them. We maintain a list of package maintainers here: https://github.com/pgRouting/pgrouting/wiki/Package-maintainers We also have a release checklist here: https://github.com/pgRouting/pgrouting/wiki/pgRouting-Release-Process-Checklist We do not use the OSGeo download server anymore to host source tarballs. I hope we can do this with Github's support for releases, eventually using Travis. |
Thanks, added myself to the list of maintainers on the wiki. Github supports assets upload via its API, so it should be possible to hook the tarball generation (via cpack, cf https://cmake.org/Wiki/CMake:Packaging_With_CPack) & upload (there are scripts around for asset upload, cf https://gist.github.com/stefanbuck/ce788fee19ab6eb0b4447a85fc99f447 as an example) to travis.. A start would be to add |
@landryb |
thanks a lot @cvvergara , this zip works fine for our workflow ! I'll also take the .tar.gz :) |
Added the tar of the source code also. |
@cvvergara , are you planning to upload source files manually from now, or should we look for an automated way? |
The checksum and size is the exact same as https://github.com/pgRouting/pgrouting/archive/v2.6.0.tar.gz so i guess it was just a straight upload of it ? That'll do i think, but usually such tarballs are produced by cmake/automake/some process.. Either way, at least we know it's consistent now. But automating it for next releases would be a bonus :) |
ones, thanks to upstream. Checksum/size doesnt change so no need to append the _1 suffix. Cf pgRouting/pgrouting#1013
@cvvergara @landryb Thank you. I confirm that I had same problem on an older version for FreeBSD pkg. |
For packaging purposes, we (OpenBSD, and probably other distributors) rely on stable source tarballs with consistent checksums/contents - while pgrouting is tagging releases the github way (ie there's a git tag and an actual release entry for each release, which is already nice), github doesn't guarantee that fetching the source asset from the tag (ie https://github.com/pgRouting/pgrouting/archive/v2.6.0.tar.gz) is stable/has a consistent checksum over time, they're generated on the fly with whatever software version is on the github side, then cached randomly across their infra.
The github doc at https://help.github.com/articles/creating-releases/ explains it a bit in item 7 (uploading generated binaries) but doesnt mention uploading a source tarball (since github doesnt really care about downstreams packaging stuff).
https://github.com/rdoeffinger/iec16022/releases/ is an example of a github project providing such stable source tarballs - see https://marc.info/?l=openbsd-ports&m=151973450514279&w=2 for the rationale behind it.
Would you be so kind to produce (probably with cmake/cpack) such source tarball and upload them to releases (or host them somewhere else, i know before they were at http://download.osgeo.org/pgrouting/source/) ?
The text was updated successfully, but these errors were encountered: