3 . "$(dirname $0)/common.sh"
5 # Don't do releases in the wee hours :-)
7 (( "$h" < 10 && "$h" > 4 )) && {
8 echo "Go back to bed" 1>&2
12 # allow kisskb to use more of ka2
13 ssh $build_host /usr/local/bin/set-kisskb-jfactor 48
15 eval $(gpg-agent --daemon --enable-ssh-support)
16 ssh-add ~/.ssh/ra.kernel.org
18 if ! ssh git@gitolite.kernel.org 2fa isval; then
19 read -r -p "Yubikey token: " tok
20 ssh git@gitolite.kernel.org 2fa val $tok
23 # This means I get the right tag if I finish after midnight
24 d=$(date --date "5 hours ago" '+%Y%m%d')
25 l="$(git describe --match "v*" --abbrev=0)"
30 echo 'Trees included into this release:
33 ---- ---- ---' > Next/Trees
37 while read email type name url ref build; do
38 [[ "$email" =~ '^#.*$' ]] && continue
40 [ $(echo "$name" | wc -c) -le 8 ] && tab="\t\t"
41 [ "${ref%:*}" = "${ref}" ] || ref=${ref##*:}
42 [ "$type" = "git" ] && url="$url#$ref"
43 printf "%s$tab%s\t%s\n" $name $type $url >>Next/Trees
47 mv ../SHA1s Next/SHA1s
49 for i in quilt-import.log merge.log; do
50 grep -v '^Checking out files:' ../$i >Next/$i
53 printf -- "-next-%s\n" $d >localversion-next
55 git add Next localversion-next
56 git commit -s -v -a -m "Add linux-next specific files for $d"
57 git tag -u 41D5C07A -m "$n" "$n"
59 git branch -f stable refs/remotes/origin/master
62 git diff-tree -p "$l.." >"../$p"
63 gpg2 -u 41D5C07A -a -b "../$p"
64 #echo "$l" > "../LATEST-IS-$n"
66 "$bin_dir/make_abat_scripts" "$d" "$l"
68 oldest=$(date --date "3 months ago" '+%Y%m%d')
69 echo "Removing old releases ... <= next-$oldest"
71 old_tags=$(git ls-remote --tags korg next-\* |
72 awk -F - '$2 ~ /^[0-9]*$/ && $2 <= '$oldest' { printf("next-%s\n", $2); }')
74 [ "$old_tags" ] && git push korg --delete $old_tags
76 echo Pushing to korg ...
79 echo Pushing to korg-history ...
82 echo Pushing to history
85 echo Pushing patch to kernel.org ...
88 kup --host=kup.kernel.org put "$p.xz" "$p.asc" "/pub/linux/kernel/next/$p.gz"