From 4e0f4aa20ad4ca2b8c5b43b7c92f8391ed8e810f Mon Sep 17 00:00:00 2001 From: Mazz Mosley Date: Wed, 1 Jul 2015 15:57:27 +0100 Subject: [PATCH] Split out release process To aid clarity in how to contribute, I've moved the release process out into it's own RELEASE_PROCESS.md file. The release process info is only relevant for maintainers who are building new releases of compose. Signed-off-by: Mazz Mosley --- CONTRIBUTING.md | 35 ----------------------------------- README.md | 5 +++++ RELEASE_PROCESS.md | 36 ++++++++++++++++++++++++++++++++++++ 3 files changed, 41 insertions(+), 35 deletions(-) create mode 100644 RELEASE_PROCESS.md diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 6914e2159..558af11dc 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -50,38 +50,3 @@ you can specify a test directory, file, module, class or method: $ script/test tests/unit/cli_test.py $ script/test tests.integration.service_test $ script/test tests.integration.service_test:ServiceTest.test_containers - -## Building binaries - -`script/build-linux` will build the Linux binary inside a Docker container: - - $ script/build-linux - -`script/build-osx` will build the Mac OS X binary inside a virtualenv: - - $ script/build-osx - -For official releases, you should build inside a Mountain Lion VM for proper -compatibility. Run the this script first to prepare the environment before -building - it will use Homebrew to make sure Python is installed and -up-to-date. - - $ script/prepare-osx - -## Release process - -1. Open pull request that: - - Updates the version in `compose/__init__.py` - - Updates the binary URL in `docs/install.md` - - Adds release notes to `CHANGES.md` -2. Create unpublished GitHub release with release notes -3. Build Linux version on any Docker host with `script/build-linux` and attach - to release -4. Build OS X version on Mountain Lion with `script/build-osx` and attach to - release as `docker-compose-Darwin-x86_64` and `docker-compose-Linux-x86_64`. -5. Publish GitHub release, creating tag -6. Update website with `script/deploy-docs` -7. Upload PyPi package - - $ git checkout $VERSION - $ python setup.py sdist upload diff --git a/README.md b/README.md index 4b18fc9dc..7121f6a2d 100644 --- a/README.md +++ b/README.md @@ -50,3 +50,8 @@ Contributing [![Build Status](http://jenkins.dockerproject.org/buildStatus/icon?job=Compose%20Master)](http://jenkins.dockerproject.org/job/Compose%20Master/) Want to help build Compose? Check out our [contributing documentation](https://github.com/docker/compose/blob/master/CONTRIBUTING.md). + +Releasing +--------- + +Releases are built by maintainers, following an outline of the [release process](https://github.com/docker/compose/blob/master/RELEASE_PROCESS.md). \ No newline at end of file diff --git a/RELEASE_PROCESS.md b/RELEASE_PROCESS.md new file mode 100644 index 000000000..91a0d7730 --- /dev/null +++ b/RELEASE_PROCESS.md @@ -0,0 +1,36 @@ +# Building a Compose release + +## Building binaries + +`script/build-linux` will build the Linux binary inside a Docker container: + + $ script/build-linux + +`script/build-osx` will build the Mac OS X binary inside a virtualenv: + + $ script/build-osx + +For official releases, you should build inside a Mountain Lion VM for proper +compatibility. Run the this script first to prepare the environment before +building - it will use Homebrew to make sure Python is installed and +up-to-date. + + $ script/prepare-osx + +## Release process + +1. Open pull request that: + - Updates the version in `compose/__init__.py` + - Updates the binary URL in `docs/install.md` + - Adds release notes to `CHANGES.md` +2. Create unpublished GitHub release with release notes +3. Build Linux version on any Docker host with `script/build-linux` and attach + to release +4. Build OS X version on Mountain Lion with `script/build-osx` and attach to + release as `docker-compose-Darwin-x86_64` and `docker-compose-Linux-x86_64`. +5. Publish GitHub release, creating tag +6. Update website with `script/deploy-docs` +7. Upload PyPi package + + $ git checkout $VERSION + $ python setup.py sdist upload