Browse Source

Update release scripts for release image.

Signed-off-by: Daniel Nephin <[email protected]>
Daniel Nephin 10 years ago
parent
commit
4ae2a0e610

+ 2 - 4
Dockerfile.run

@@ -7,9 +7,7 @@ RUN     apk -U add \
 COPY    requirements.txt /code/requirements.txt
 RUN     pip install -r /code/requirements.txt
 
-ENV     VERSION 1.4.0dev
-
-COPY    dist/docker-compose-$VERSION.tar.gz /code/docker-compose/
-RUN     pip install /code/docker-compose/docker-compose-$VERSION/
+ADD     dist/docker-compose-release.tar.gz /code/docker-compose
+RUN     pip install /code/docker-compose/docker-compose-*
 
 ENTRYPOINT ["/usr/bin/docker-compose"]

+ 1 - 1
docs/install.md

@@ -68,7 +68,7 @@ To install Compose, do the following:
 Compose can also be run inside a container, from a small bash script wrapper.
 To install compose as a container run:
 
-    $ curl -L https://github.com/docker/compose/releases/download/1.5.0/compose-run > /usr/local/bin/docker-compose
+    $ curl -L https://github.com/docker/compose/releases/download/1.5.0/run.sh > /usr/local/bin/docker-compose
     $ chmod +x /usr/local/bin/docker-compose
 
 

+ 1 - 1
project/RELEASE-PROCESS.md

@@ -80,7 +80,7 @@ When prompted build the non-linux binaries and test them.
 
         ...release notes go here...
 
-5.  Attach the binaries.
+5.  Attach the binaries and `script/run.sh`
 
 6. If everything looks good, it's time to push the release.
 

+ 16 - 0
script/build-image

@@ -0,0 +1,16 @@
+#!/bin/bash
+
+set -e
+
+if [ -z "$1" ]; then
+    >&2 echo "First argument must be image tag."
+    exit 1
+fi
+
+TAG=$1
+VERSION="$(python setup.py --version)"
+
+python setup.py sdist
+cp dist/docker-compose-$VERSION.tar.gz dist/docker-compose-release.tar.gz
+docker build -t docker/compose:$TAG -f Dockerfile.run .
+

+ 16 - 0
script/release/build-binaries

@@ -5,6 +5,19 @@
 
 . "$(dirname "${BASH_SOURCE[0]}")/utils.sh"
 
+function usage() {
+    >&2 cat << EOM
+Build binaries for the release.
+
+This script requires that 'git config branch.${BRANCH}.release' is set to the
+release version for the release branch.
+
+EOM
+    exit 1
+}
+
+BRANCH="$(git rev-parse --abbrev-ref HEAD)"
+VERSION="$(git config "branch.${BRANCH}.release")" || usage
 REPO=docker/compose
 
 # Build the binaries
@@ -16,6 +29,9 @@ script/build-linux
 # TODO: build or fetch the windows binary
 echo "You need to build the osx/windows binaries, that step is not automated yet."
 
+echo "Building the container distribution"
+script/build-image $VERSION
+
 echo "Create a github release"
 # TODO: script more of this https://developer.github.com/v3/repos/releases/
 browser https://github.com/$REPO/releases/new

+ 3 - 0
script/release/push-release

@@ -46,6 +46,9 @@ git push $GITHUB_REPO $VERSION
 echo "Uploading sdist to pypi"
 python setup.py sdist
 
+echo "Uploading the docker image"
+docker push docker/compose:$VERSION
+
 if [ "$(command -v twine 2> /dev/null)" ]; then
     twine upload ./dist/docker-compose-${VERSION}.tar.gz
 else

+ 0 - 0
script/run → script/run.sh