summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOliver Smith <osmith@sysmocom.de>2019-07-22 12:04:01 +0200
committerOliver Smith <osmith@sysmocom.de>2019-07-22 13:22:33 +0200
commitdf967f76f6c02362feaf40c3da22a4c4457f51d4 (patch)
treee3e6f5e17e9b667998f6b0b2673c6f049ae0db3d
parentdcb9edafd4d124d04c42332760f93d8dc36df636 (diff)
OBS: print date/time before git clone and on error
The OBS job clones a lot of repositories from git.osmocom.org every night, so it is a good candidate to reproduce the "garbage at end of loose object" error we are getting sporadically. Print exact timestamps, so we can check if there is anything related in the server logs, when this error happens again. Related: OS#4083 Change-Id: Ic9a6d3f0c2b8dad2661ede793c21307f1680a52e
-rw-r--r--scripts/common.sh10
-rwxr-xr-xscripts/osmocom-latest-packages.sh3
-rwxr-xr-xscripts/osmocom-nightly-packages.sh5
3 files changed, 15 insertions, 3 deletions
diff --git a/scripts/common.sh b/scripts/common.sh
index bf24fc4..6d91101 100644
--- a/scripts/common.sh
+++ b/scripts/common.sh
@@ -89,6 +89,16 @@ osmo_git_last_tags() {
echo "$ret" | cut -d/ -f 3
}
+# Pass all arguments to "git clone", but write the current date and time before the clone and on failure.
+# This helps analyzing errors with git.osmocom.org (OS#4083).
+osmo_git_clone_date() {
+ date "+%Y-%m-%d %H:%M:%S"
+ if ! git clone "$@"; then
+ date "+%Y-%m-%d %H:%M:%S"
+ exit 1
+ fi
+}
+
# Print the subdirectory of the repository where the source lies (configure.ac etc.).
# Print nothing when the source is in the topdir of the repository.
osmo_source_subdir() {
diff --git a/scripts/osmocom-latest-packages.sh b/scripts/osmocom-latest-packages.sh
index 1074294..509bced 100755
--- a/scripts/osmocom-latest-packages.sh
+++ b/scripts/osmocom-latest-packages.sh
@@ -1,4 +1,5 @@
#!/bin/sh
+. "$(dirname "$0")/common.sh"
. "$(dirname "$0")/common-obs.sh"
# requirements
@@ -54,7 +55,7 @@ checkout() {
if [ "$project" = "limesuite" ]; then
[ -d "$project" ] || git clone "https://github.com/myriadrf/LimeSuite" "$project"
else
- [ -d "$project" ] || git clone "https://git.osmocom.org/$project"
+ [ -d "$project" ] || osmo_git_clone_date "https://git.osmocom.org/$project"
fi
cd "$project"
git fetch
diff --git a/scripts/osmocom-nightly-packages.sh b/scripts/osmocom-nightly-packages.sh
index 172e4e0..1c76cc1 100755
--- a/scripts/osmocom-nightly-packages.sh
+++ b/scripts/osmocom-nightly-packages.sh
@@ -1,4 +1,5 @@
#!/bin/bash
+. "$(dirname "$0")/common.sh"
. "$(dirname "$0")/common-obs.sh"
# requirements
@@ -68,9 +69,9 @@ checkout() {
cd "$REPO"
if [ -n "$branch" ] ; then
- git clone "$url/$name" -b "$branch"
+ osmo_git_clone_date "$url/$name" -b "$branch"
else
- git clone "$url/$name"
+ osmo_git_clone_date "$url/$name"
fi
cd -