-
Notifications
You must be signed in to change notification settings - Fork 841
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 process #324
Comments
Getting this all automated is, I think, too ambitious to do for the first release milestone. Perhaps we should start by all documenting here the (semi-)manual processes we're using for the various builds. Then we can start seeing the common patterns and figure out how to best approach automating it all. I can volunteer to put together the framework and then will ask for help filling it in with the particulars of various platforms. Initially it probably makes sense to have the "release tool" be something that's manually run on each platform, and once that's working well we can considering using AWS etc. to be able to automatically run on all platforms. @snoyberg: Linux general, Windows Did I miss anyone? Can we consider making the Downloads page not link to a particular version's binaries but instead just have it link to the latest release on Github and have users find the right file for their platform there? The Ubuntu and Arch instructions will already install the latest automatically, and this way we don't need to worry about automating modifying the wiki page. |
Agree with all points, especially the Downloads wiki page. EDIT Download page tweaked. |
I'll start us off: OS X release processPrerequisites:
Build:
Test:
Upload:
|
My flow on both Windows and Linux is virtually identical, just changing the filenames and signing key as necessary (and, on Windows, deleting the appropriate %APPDATA%\stack instead of ~/.stack). |
My build process is currently to use my haskell-stack-git PKGBUILD to grab the revision at the release tag and build stack. Then I manually tar up the file and upload to AWS. Then I need to bump the SH1SUMs and links in the binary PKGBUILD and resubmit to the AUR. The AUR is moving to git, so you can actually see the two lines I need to manually change, it's something I could probably script to make fully automated in a couple hours. |
@drwebb Does you process need to be run on Arch? Is it Dockerable so that it could be run from non-Arch systems? |
Another step to the release process is uploading stack to Hackage. |
Ubuntu process (w/ help from @dysinger): a) need docker installed |
So here are the steps
However before a new version of a PKGBUILD can be pushed to the AUR you must run https://github.com/falconindy/pkgbuild-introspection So yeah, pretty Dockerable (if that's not a word already, now it is) |
I've added a link to this issue from the checklist page. Closing for now, I think we've determined the steps in the release process, and over time we'll automate it. |
Just chiming in here to state that I'm adding a review man page box to the checklist, nothing worse than out of date documentation! |
Beginning of stack release automation: https://github.com/commercialhaskell/stack/blob/master/etc/release-tool/README.md |
Will consist of:
We want to get this as automated as possible. I'm assigning this issue to @manny-fp for now to spearhead, though others will need to be part of it too.
The text was updated successfully, but these errors were encountered: