From 9c9be6f11a9c1060c9f593c1308286f1ee56cd0c Mon Sep 17 00:00:00 2001 From: Mateusz Pilat Date: Mon, 6 May 2019 17:12:36 +0200 Subject: Add script to start review for offline installer in community Jenkins script to detect what tests are supposed to be executed for a given change Change-Id: I8e392e5d67bb56ab7653d4a5176a3b8df1dc72c9 Issue-ID: OOM-1801 Signed-off-by: Mateusz Pilat --- ansible/test/bin/ci-molecule.sh | 6 ++-- offline-installer-review.sh | 61 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 65 insertions(+), 2 deletions(-) create mode 100755 offline-installer-review.sh diff --git a/ansible/test/bin/ci-molecule.sh b/ansible/test/bin/ci-molecule.sh index 9fbaad51..be598a48 100755 --- a/ansible/test/bin/ci-molecule.sh +++ b/ansible/test/bin/ci-molecule.sh @@ -24,6 +24,8 @@ # Molecule can be adjusted in this script independently. # +set -e + SCRIPT_DIR=$(dirname "${0}") LOCAL_PATH=$(readlink -f "$SCRIPT_DIR") @@ -45,8 +47,8 @@ else # Install Molecule natively in the target platform MOLECULE_BINARY=molecule fi -${MOLECULE_BINARY} --version - cd ${ROLE_PATH} +${MOLECULE_BINARY} --version ${MOLECULE_BINARY} test --all cd - + diff --git a/offline-installer-review.sh b/offline-installer-review.sh new file mode 100755 index 00000000..ab327ad9 --- /dev/null +++ b/offline-installer-review.sh @@ -0,0 +1,61 @@ +#! /usr/bin/env bash + +# COPYRIGHT NOTICE STARTS HERE +# +# Copyright 2018 © Samsung Electronics Co., Ltd. +# +# 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. +# +# COPYRIGHT NOTICE ENDS HERE + +### This script performs Jenkins Change Verification for ONAP Offline Installer +# No parameters are expected +### +####################################################################### +# MAIN # +####################################################################### +#if ansible was changed + + if `git diff HEAD^ HEAD --name-only | grep -q "ansible/test"`; + then echo "TO DO: FULL ANSIBLE TEST" ; + else + ROLE_CHANGES=(`git diff HEAD^ HEAD --name-only | grep "ansible/role" | cut -f 1-3 -d "/" | sort | uniq`) + if [ -z "${ROLE_CHANGES}" ]; then + echo "NO ANSIBLE TESTS REQUIRED" + else + for i in ${ROLE_CHANGES[@]} + do + sudo ./ansible/test/bin/ci-molecule.sh ${i} + MOLECULE_RC=$? + if [ ${MOLECULE_RC} -ne "0" ]; then echo "MOLECULE TEST FAILED FOR ${i};";exit 1; fi + done + fi + fi + + +#if build was changed + + if `git diff HEAD^ HEAD --name-only | grep -q "build"`; + then echo "TO DO: BUILD TEST" ; + else + echo "NO BUILD TEST REQUIRED" + fi + +#if documentation was changed + + if `git diff HEAD^ HEAD --name-only | grep -q "docs"`; + then echo "TO DO: DOC TEST"; + else + echo "NO DOC TEST REQUIRED" + fi + -- cgit 1.2.3-korg