Skip to content

Commit dc22790

Browse files
committed
release.hs: reorganize distro packacing to use vagrant instead of Docker
1 parent 708c2db commit dc22790

File tree

13 files changed

+300
-417
lines changed

13 files changed

+300
-417
lines changed

doc/MAINTAINER_GUIDE.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
The following should be tested minimally before a release is considered good
22
to go. This list will likely expand over time:
33

4-
* Run `scripts/release/release.hs check` on Linux (32-bit and 64-bit), Windows (`--arch=i386` and `--arch=x86_64`), and OS X. See its
5-
[README](https://github.com/commercialhaskell/stack/blob/master/scripts/release/README.md) for build and invocation instructions.
4+
* Run `etc/scripts/release.hs check` on Linux (32-bit and 64-bit), Windows (`--arch=i386` and `--arch=x86_64`), and OS X. See its
5+
[README](../etc/scripts/README.md#release.hs) for build and invocation instructions.
66
This performs the following checks automatically:
77
* `stack install && stack clean && stack install --pedantic && stack test --flag stack:integration-tests` on Linux, Windows, and OS X, which covers:
88
* Self-hosting
@@ -20,11 +20,11 @@ to go. This list will likely expand over time:
2020
Release checklist after testing:
2121

2222
* Create a draft Github release with tag `vX.Y.Z` (where X.Y.Z is the stack package's version).
23-
* Run `scripts/release/release.hs release` on Linux (Debian 7 32-bit [Vagrantfile](https://github.com/commercialhaskell/stack/tree/master/etc/vagrant/debian-7-i386)/64-bit [Vagrantfile](https://github.com/commercialhaskell/stack/tree/master/etc/vagrant/debian-7-amd64)), Windows (`--arch=i386` and `--arch=x86_64`), and OS X. This performs the following tasks automatically:
23+
* Run `etc/scripts/release.hs release` on Linux (Debian 7 32-bit [Vagrantfile](https://github.com/commercialhaskell/stack/tree/master/etc/vagrant/debian-7-i386)/64-bit [Vagrantfile](https://github.com/commercialhaskell/stack/tree/master/etc/vagrant/debian-7-amd64)), Windows (`--arch=i386` and `--arch=x86_64`), and OS X. This performs the following tasks automatically:
2424
* Binaries for Linux, Windows, and OS X uploaded to draft Github release.
25-
* Run `scripts/release/release.hs --binary-variant=gmp4 release` on CentOS 6 32-bit [Vagrantfile](https://github.com/commercialhaskell/stack/tree/master/etc/vagrant/centos-6-i386)/64-bit [Vagrantfile](centos-6-x86_64)).
26-
* Run `scripts/release/release.hs ubuntu-upload debian-upload` in Linux (Ubuntu or Debian - [Vagrantfile](https://github.com/commercialhaskell/stack/tree/master/etc/vagrant/debian-7-amd64))
27-
* Run `scripts/release/release.hs centos-upload fedora-upload` on Linux (CentOS or Fedora - [Vagrantfile](https://github.com/commercialhaskell/stack/tree/master/etc/vagrant/centos-7-x86_64))
25+
* Run `etc/scripts/release.hs --binary-variant=gmp4 release` on CentOS 6 32-bit [Vagrantfile](https://github.com/commercialhaskell/stack/tree/master/etc/vagrant/centos-6-i386)/64-bit [Vagrantfile](centos-6-x86_64)).
26+
* Run `etc/scripts/release.hs ubuntu-upload debian-upload` in Linux (Ubuntu or Debian - [Vagrantfile](https://github.com/commercialhaskell/stack/tree/master/etc/vagrant/debian-7-amd64))
27+
* Run `etc/scripts/release.hs centos-upload fedora-upload` on Linux (CentOS or Fedora - [Vagrantfile](https://github.com/commercialhaskell/stack/tree/master/etc/vagrant/centos-7-x86_64))
2828
* Upload Arch Linux packages (manual process)
2929
* Build new MinGHC distribution (See https://github.com/fpco/minghc/commit/51490f398e6722672364548a3855a0bfcba48ffe)
3030

scripts/release/README.md renamed to etc/scripts/README.md

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
Stack release tool
2-
==================
1+
release.hs
2+
==========
33

44
This tool automates some aspects of releasing a new version of Stack. It
55
currently handles some tasks that need to be performed on each platform:
@@ -16,6 +16,7 @@ These must be installed in the PATH to use the release tool:
1616

1717
- stack
1818
- git (for Windows, [msysgit](https://msysgit.github.io) is recommended).
19+
- cabal (cabal-install)
1920

2021
To create a signed binary, you need:
2122

@@ -34,24 +35,26 @@ To upload a binary to a Github release, you also need:
3435

3536
To create and upload Debian/Ubuntu packages, you need:
3637

37-
- Docker installed.
3838
- deb-s3 installed (`sudo gem install deb-s3`).
3939
- `[email protected]` secret key in GPG keyring.
4040
- Set `AWS_SECRET_ACCESS_KEY` and `AWS_ACCESS_KEY_ID` environment variables with
4141
credentials that allow uploading to download.fpcomplete.com S3 bucket.
4242

4343
To create and upload Red Hat/CentOS packages, you need:
4444

45-
- Docker installed.
46-
- rpm-s3 installed (see https://github.com/crohr/rpm-s3).
45+
- [rpm-s3 installed](https://github.com/crohr/rpm-s3).
4746
- `[email protected]` secret key in GPG keyring.
4847
- Set `AWS_SECRET_ACCESS_KEY` and `AWS_ACCESS_KEY_ID` environment variables with
4948
credentials that allow uploading to download.fpcomplete.com S3 bucket.
5049

50+
To create and upload Arch packages, you need:
51+
52+
- [AWS CLI installed](http://docs.aws.amazon.com/cli/latest/userguide/installing.html).
53+
5154
Invocation
5255
----------
5356

54-
Usage: `scripts/release/release.hs [OPTIONS] TARGET`
57+
Usage: `etc/scripts/release.hs [OPTIONS] TARGET`
5558

5659
The tool must be run in the root of the working tree.
5760

0 commit comments

Comments
 (0)