GEODE: Make sure the git tag in correct format is present 74/1774/3
authorrobert.tomczyk <robert.tomczyk@est.tech>
Mon, 29 Jul 2019 09:39:22 +0000 (10:39 +0100)
committerrobert.tomczyk <robert.tomczyk@est.tech>
Mon, 29 Jul 2019 09:46:24 +0000 (10:46 +0100)
Change-Id: I868f922fc806917d2b92be781c2ef3cb53faa4b4

jjb/geode/apache-geode-build/set_geode_build_version.sh
jjb/geode/apache-geode-macros.yaml
jjb/geode/apache-geode-test-coordinator.yaml
jjb/geode/verify_geode_tag.sh [new file with mode: 0755]

index 4028771b5b3a45f28200a2f48b680c41235ae0c1..2de958a7b5482a851336e0493e60130a31213863 100755 (executable)
@@ -23,14 +23,14 @@ set -o pipefail
 
 cd $WORKSPACE/geode
 
-# Get most recent tag that is reachable from a commit
-GEODE_VERSION=$(git describe --abbrev=0 | sed -r "s#rel/v(.*)#\1#")
+# Get most recent tag that is reachable from a commit on current branch
+GEODE_VERSION=$(git describe --abbrev=0 --tags | sed -r "s#rel/v(.*)#\1#")
 BUILD_DATE=$(date '+%Y%m%d%H%M')
 if [ ! -d ${WORKSPACE}/geode-build-version ] ; then
    mkdir ${WORKSPACE}/geode-build-version
 fi
-# Make sure the Geode tag version is in agreed fromat: \d.\d.\d.[ \d or RC\d ]
-if [[ ${GEODE_VERSION} =~ ^[0-9]+\.[0-9]+\.[0-9]+\.(RC[0-9]+|[0-9]+)$ ]] ; then
+# Make sure the Geode tag version is in agreed format: \d.\d.\d.\d.[RC\d]?
+if [[ ${GEODE_VERSION} =~ ^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+(\.RC[0-9]+)?$ ]] ; then
   echo "${GEODE_VERSION}-NORDIX.${BUILD_DATE}" > ${WORKSPACE}/geode-build-version/number
 else
   echo "ERROR: Incorrect geode version specified: ${GEODE_VERSION}"
index a2a32bec0772384d653b08ce33107a99b2d17d89..04f94d3f4da99fec3e75413f9325c5e9c35731db 100644 (file)
     name: 'apache-geode-setup-slave-macro'
     builders:
       - shell:
-          !include-raw: ./apache-geode-slave/slave_setup.sh
\ No newline at end of file
+          !include-raw: ./apache-geode-slave/slave_setup.sh
+
+- builder:
+    name: 'verify-geode-tag-macro'
+    builders:
+      - shell:
+          !include-raw: ./verify_geode_tag.sh
\ No newline at end of file
index 7aab7488acb8f8c92a892b4260a942f1887593d6..d1366d4b28dda64cd0057a70764b18861aecffa8 100644 (file)
@@ -69,6 +69,7 @@
       - github
 
     builders:
+      - 'verify-geode-tag-macro'
       - multijob:
           name: SlaveSetup
           condition: SUCCESSFUL
diff --git a/jjb/geode/verify_geode_tag.sh b/jjb/geode/verify_geode_tag.sh
new file mode 100755 (executable)
index 0000000..64a9a38
--- /dev/null
@@ -0,0 +1,44 @@
+#!/bin/bash
+#
+# ============LICENSE_START=======================================================
+#  Copyright (C) 2018-2019 Nordix Foundation.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+# SPDX-License-Identifier: Apache-2.0
+# ============LICENSE_END=========================================================
+set -o errexit
+set -o nounset
+set -o pipefail
+
+gitlog(){
+    git log --pretty=format:'%Cred%h|%Cgreen%an|%Cblue%s%Creset' | \
+    awk -F '|' '{ printf "%s %-20s %s\n", $1, $2, $3 }' | head -${1}
+}
+
+cd $WORKSPACE/geode
+GEODE_VERSION=$(git describe --abbrev=0 --tags | sed -r "s#rel/v(.*)#\1#")
+GIT_LOGS=8
+
+# Make sure the Geode tag version is in agreed format: \d.\d.\d.\d.[RC\d]?
+if [[ ${GEODE_VERSION} =~ ^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+(\.RC[0-9]+)?$ ]] ; then
+   echo -e "\n--------------------------------------------------------------------------"
+   echo -e "\nTesting Geode version: ${GEODE_VERSION}\n"
+   echo -e "------------------- Summary for last commit on the branch ------------------"
+   git show --stat
+   echo -e "\n--------------- The last ${GIT_LOGS} commits on the branch ---------------"
+   gitlog ${GIT_LOGS}
+else
+   echo "ERROR: Incorrect geode tag version on the branch: ${GEODE_VERSION}"
+   exit 1
+fi