aboutsummaryrefslogtreecommitdiff
path: root/misc/boring/release.sh
blob: 6ab440c91bf8f8c3a8368ec88f59ec7f84842d4b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#! /bin/bash
set -euo pipefail

if [ "$#" -eq 0 ]; then
    echo "usage: <target branch> [<target branch> ...]"
    echo ""
    echo "example: release.sh dev.boringcrypto.go1.11 dev.boringcrypto.go1.12"
    exit 1
fi

# Check that the Docker daemon is available.
docker ps > /dev/null

WORKTREE="$(mktemp -d)"
BRANCH="boring/release-$(date +%Y%m%d%H%M%S)"

git fetch
git worktree add --track -b "$BRANCH" "$WORKTREE" origin/dev.boringcrypto

cd "$WORKTREE/src"
./make.bash

cd ../misc/boring
for branch in "$@"; do
    ./build.release "origin/$branch"
    ./build.docker
done

git add RELEASES
git commit -m "misc/boring: add new releases to RELEASES file"
git codereview mail

rm *.tar.gz
cd - && git worktree remove "$WORKTREE"