#!/usr/bin/bash

REMOTE_REPO=git://git.kernel.org/pub/scm/linux/kernel/git/jirislaby/linux-stable.git
sv=4.12

set -e -x

if [ -z "$1" ]; then
	exit 1
fi

eval `resize`
ORIG_COLUMNS=$COLUMNS
if [ "x$COLUMNS" != "x70" ]; then
	resize -s $LINES 70 >/dev/null
fi

if [ "x$COLUMNS" != "x70" ]; then
	echo resize terminal to have 70 colums, git request-pull sucks >&2
	exit 1
fi

function finish {
	resize -s $LINES $ORIG_COLUMNS >/dev/null
}
trap finish EXIT

RELEASE=$1
RELNO=${RELEASE##*.}
LASTREL=${RELEASE%.[0-9]*}.$(($RELNO-1))
SHA=$2

git tag -u 06B47049 -m "This is the ${RELEASE} stable release" v${RELEASE} $SHA
SHA=`git rev-parse --verify v${RELEASE}^{commit}`
git push korg $SHA:refs/heads/stable-$sv v${RELEASE}
ATTEMPT=0
while [ $ATTEMPT -lt 30 ]; do
	if [ "x`git ls-remote $REMOTE_REPO v${RELEASE}`" != x ]; then
		break
	fi
	sleep 2
	ATTEMPT=$(($ATTEMPT+1))
done
git request-pull "v$LASTREL" "$REMOTE_REPO" "v$RELEASE"
