mirror of https://gerrit.osmocom.org/osmo-ci
create osmocom-nightly-nitb-split.sh based on osmocom-nightly-packages.sh
Create a snapshot of the nitb split and upload it to OBS. Change-Id: I8bf9fce1547e98c44b62a693ac4aaa4beed1aef9
This commit is contained in:
parent
efcf6881a2
commit
a0d34c1b8d
|
@ -0,0 +1,119 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -e
|
||||||
|
set -x
|
||||||
|
|
||||||
|
DT=$(date +%Y%m%d)
|
||||||
|
PROJ=network:osmocom:nitb-split:nightly
|
||||||
|
|
||||||
|
### common
|
||||||
|
checkout() {
|
||||||
|
local name=$1
|
||||||
|
local branch=$2
|
||||||
|
local url="git://git.osmocom.org"
|
||||||
|
|
||||||
|
cd "$REPO"
|
||||||
|
|
||||||
|
if [ -n "$branch" ] ; then
|
||||||
|
git clone "$url/$name" -b "$branch"
|
||||||
|
else
|
||||||
|
git clone "$url/$name"
|
||||||
|
fi
|
||||||
|
|
||||||
|
cd -
|
||||||
|
}
|
||||||
|
|
||||||
|
### OBS build
|
||||||
|
prepare() {
|
||||||
|
# clean up the whole space
|
||||||
|
mkdir -p "$REPO/osc/"
|
||||||
|
cd "$REPO/osc"
|
||||||
|
osc co "$PROJ"
|
||||||
|
}
|
||||||
|
|
||||||
|
build() {
|
||||||
|
local name=$1
|
||||||
|
local repodir=$REPO/$name
|
||||||
|
local oscdir=$REPO/osc/$PROJ/$name
|
||||||
|
|
||||||
|
if [ -d "$oscdir" ] ; then
|
||||||
|
# remove earlier version
|
||||||
|
cd "$oscdir"
|
||||||
|
osc rm -- * || true
|
||||||
|
else
|
||||||
|
# new package
|
||||||
|
mkdir -p "$oscdir/"
|
||||||
|
cd "$REPO/osc/$PROJ/"
|
||||||
|
osc add "$name"
|
||||||
|
fi
|
||||||
|
|
||||||
|
cd "$repodir"
|
||||||
|
|
||||||
|
VER=$(head -1 debian/changelog | cut -d ' ' -f 2 | sed 's,(,,' | sed 's,),,')
|
||||||
|
dch -v "$VER.$DT" -m "Snapshot build"
|
||||||
|
git commit -m "$DT snapshot" debian/
|
||||||
|
|
||||||
|
mkdir -p "$DATA/$name"
|
||||||
|
# source code build without dependency checks and unsigned source and unsigned change log
|
||||||
|
gbp buildpackage -S -uc -us -d --git-ignore-branch "--git-export-dir=$DATA/$name"
|
||||||
|
|
||||||
|
mv "$DATA/$name/"*.tar* "$DATA/$name/"*.dsc "$oscdir/"
|
||||||
|
|
||||||
|
cd "$oscdir"
|
||||||
|
osc add -- *.tar* *.dsc
|
||||||
|
osc ci -m "Snapshot $name $DT"
|
||||||
|
}
|
||||||
|
|
||||||
|
post() {
|
||||||
|
cd "$REPO/osc/$PROJ/"
|
||||||
|
osc status
|
||||||
|
}
|
||||||
|
|
||||||
|
build_osmocom() {
|
||||||
|
BASE=$PWD
|
||||||
|
DATA=$BASE/data
|
||||||
|
REPO=$BASE/repo
|
||||||
|
|
||||||
|
# rather than including a dangerous 'rm -rf *' here, lets delegate to the user:
|
||||||
|
if [ -n "$(ls)" ]; then
|
||||||
|
echo "ERROR: I need to run in an empty directory."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
prepare
|
||||||
|
|
||||||
|
checkout libosmocore
|
||||||
|
checkout libosmo-abis
|
||||||
|
checkout libosmo-netif
|
||||||
|
checkout libosmo-sccp
|
||||||
|
checkout libsmpp34
|
||||||
|
checkout libasn1c
|
||||||
|
checkout osmo-iuh lynxis/pre_release
|
||||||
|
checkout osmo-hlr
|
||||||
|
checkout openggsn
|
||||||
|
checkout osmo-mgw pre_release
|
||||||
|
checkout osmo-bsc lynxis/pre_release
|
||||||
|
checkout osmo-msc pre_release
|
||||||
|
checkout osmo-sgsn pre_release
|
||||||
|
|
||||||
|
build libosmocore
|
||||||
|
build libosmo-abis
|
||||||
|
build libosmo-netif
|
||||||
|
build libosmo-sccp
|
||||||
|
build libsmpp34
|
||||||
|
build libasn1c
|
||||||
|
build osmo-iuh
|
||||||
|
build osmo-hlr
|
||||||
|
build openggsn
|
||||||
|
build osmo-mgw
|
||||||
|
build osmo-bsc
|
||||||
|
build osmo-msc
|
||||||
|
build osmo-sgsn
|
||||||
|
|
||||||
|
post
|
||||||
|
}
|
||||||
|
|
||||||
|
TMPDIR=$(mktemp -d nightly-3g_XXXXXX)
|
||||||
|
cd "$TMPDIR"
|
||||||
|
build_osmocom
|
||||||
|
rm -rf "./$TMPDIR/"
|
Loading…
Reference in New Issue