summaryrefslogtreecommitdiff
path: root/bin/updatebuildrelease
blob: 631d80486ea7b569d390aabd4a960b657b907f20 (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
35
36
37
38
39
#!/bin/bash

# Copyright (C) 2010-2015 by Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
#
# This is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# This is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the
# Free Software Foundation, Inc.,
# 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA

set -e

GITPROJECT=$(basename $(pwd))
RELEASE=${1-baikal}
REF=${2-HEAD}
ORIGIN=${3:-origin}

# we need to be within a working copy (base folder) and we need a <REF>!!!
test -z $1 || test -d ./.git || {
  echo "usage: $(basename $0) <REF>"
  echo "Call this command from within the base folder of a Git project's working copy..."
  exit 1
}

# update the build-main branch with our newest blessed reference
git tag -d build-$RELEASE &>/dev/null || true
git branch -D build-$RELEASE &>/dev/null || true
git checkout -b build-$RELEASE $REF || true
git push $ORIGIN build-$RELEASE:build-$RELEASE
git checkout master