diff --git a/hack/release.sh b/hack/release.sh index 56538ea70a..931ab6f9af 100755 --- a/hack/release.sh +++ b/hack/release.sh @@ -97,7 +97,7 @@ write_to_s3() { DEST=$1 F=`mktemp` cat > $F - s3cmd --acl-public put $F $DEST + s3cmd --acl-public --mime-type='text/plain' put $F $DEST rm -f $F } @@ -107,14 +107,14 @@ s3_url() { echo "https://$BUCKET" ;; *) - echo "http://$BUCKET.s3.amazonaws.com" + s3cmd ws-info s3://$BUCKET | awk -v 'FS=: +' '/http:\/\/'$BUCKET'/ { gsub(/\/+$/, "", $2); print $2 }' ;; esac } # Upload the 'ubuntu' bundle to S3: # 1. A full APT repository is published at $BUCKET/ubuntu/ -# 2. Instructions for using the APT repository are uploaded at $BUCKET/ubuntu/info +# 2. Instructions for using the APT repository are uploaded at $BUCKET/ubuntu/index release_ubuntu() { [ -e bundles/$VERSION/ubuntu ] || { echo >&2 './hack/make.sh must be run before release_ubuntu' @@ -168,7 +168,7 @@ EOF # Upload repo s3cmd --acl-public sync $APTDIR/ s3://$BUCKET/ubuntu/ - cat < /etc/apt/sources.list.d/docker.list # Then import the repository key @@ -180,7 +180,12 @@ apt-get update ; apt-get install -y lxc-docker # Alternatively, just use the curl-able install.sh script provided at $(s3_url) # EOF - echo "APT repository uploaded. Instructions available at $(s3_url)/ubuntu/info" + + # Add redirect at /ubuntu/info for URL-backwards-compatibility + rm -rf /tmp/emptyfile && touch /tmp/emptyfile + s3cmd --acl-public --add-header='x-amz-website-redirect-location:/ubuntu/' --mime-type='text/plain' put /tmp/emptyfile s3://$BUCKET/ubuntu/info + + echo "APT repository uploaded. Instructions available at $(s3_url)/ubuntu" } # Upload a static binary to S3 @@ -189,14 +194,20 @@ release_binary() { echo >&2 './hack/make.sh must be run before release_binary' exit 1 } + S3DIR=s3://$BUCKET/builds/Linux/x86_64 s3cmd --acl-public put bundles/$VERSION/binary/docker-$VERSION $S3DIR/docker-$VERSION - cat <