aboutsummaryrefslogtreecommitdiffstats
path: root/scripts
diff options
context:
space:
mode:
authorOliver Smith <osmith@sysmocom.de>2021-04-27 18:24:11 +0200
committerOliver Smith <osmith@sysmocom.de>2021-04-29 16:05:14 +0200
commit4e82ff70cddd35a93bd08fb1675870b9089ee912 (patch)
treede52c2aad7322f2faa66ffc51a19ba171bd3bc24 /scripts
parent5ef41781aab1d1172b4abe960fe532060e4edfc4 (diff)
OBS: refactor git_version_gen related logic
Move git_version_gen calls into an own function and add some of the description from I76e3713f0b01a6110091ff90e8e53aa79533c374 where this code was added. Don't call it inside get_commit_version anymore, but call it before. Don't try to cat the resulting .tarball-version there if it doesn't exist. Related: SYS#5370 Change-Id: I9a1b6ae4b4311abb77dc6390733c5e330e3d489e
Diffstat (limited to 'scripts')
-rw-r--r--scripts/common-obs.sh9
-rwxr-xr-xscripts/osmocom-latest-packages.sh4
-rwxr-xr-xscripts/osmocom-nightly-packages.sh17
3 files changed, 20 insertions, 10 deletions
diff --git a/scripts/common-obs.sh b/scripts/common-obs.sh
index 156dfba..a585e46 100644
--- a/scripts/common-obs.sh
+++ b/scripts/common-obs.sh
@@ -243,3 +243,12 @@ osmo_obs_checkout_copy() {
git commit -m "auto-commit: apply $patch" debian/
cd ..
}
+
+# Run git-version-gen inside Osmocom repositories, so the .tarball-version
+# becomes part of the source repository. Usually this would be done with
+# "make dist", but we use git-buildpackage instead.
+osmo_obs_git_version_gen() {
+ if [ -x ./git-version-gen ]; then
+ ./git-version-gen . > .tarball-version 2>/dev/null
+ fi
+}
diff --git a/scripts/osmocom-latest-packages.sh b/scripts/osmocom-latest-packages.sh
index 301c6c6..5ba5a7b 100755
--- a/scripts/osmocom-latest-packages.sh
+++ b/scripts/osmocom-latest-packages.sh
@@ -125,9 +125,7 @@ build() {
debian_branch="$FEED"
fi
- if [ -x ./git-version-gen ]; then
- ./git-version-gen . > .tarball-version 2>/dev/null
- fi
+ osmo_obs_git_version_gen
osmo_obs_add_depend_deb "./debian/control" "$project" "osmocom-$FEED"
diff --git a/scripts/osmocom-nightly-packages.sh b/scripts/osmocom-nightly-packages.sh
index 4fe0104..cee1382 100755
--- a/scripts/osmocom-nightly-packages.sh
+++ b/scripts/osmocom-nightly-packages.sh
@@ -53,15 +53,17 @@ get_last_tag() {
echo "${VER}"
}
+# Return a version based on the latest tag and commit (e.g. "1.5.1.93.47cc")
+# or fall back to the last debian version (e.g. "2.2.6").
+# Run osmo_obs_git_version_gen before. $PWD must be inside a git repository.
get_commit_version() {
- # return a version based on the commit
- local version
+ local version=""
- # determine git version *and generate the .tarball-version file*
- test -x ./git-version-gen && ./git-version-gen . > .tarball-version 2>/dev/null
- version=$(cat .tarball-version)
- # debian doesn't allow '-' in version.
- version=$(echo "$version" | sed 's/-/./g' )
+ if [ -e ".tarball-version" ]; then
+ version=$(cat .tarball-version)
+ # debian doesn't allow '-' in version.
+ version=$(echo "$version" | sed 's/-/./g' )
+ fi
# deb version
deb_version=$(head -1 debian/changelog | cut -d ' ' -f 2 | sed 's,(,,' | sed 's,),,')
@@ -141,6 +143,7 @@ build() {
cd "$repodir"
if [ "$changelog" != "no_commit" ] ; then
+ osmo_obs_git_version_gen
# Add date to increase version even if commit did not change (OS#5135)
VER="$(get_commit_version).$DT"
osmo_obs_add_depend_deb "./debian/control" "$name" "osmocom-$FEED" "$dependver"