summaryrefslogtreecommitdiffstats
path: root/build/common-functions.sh
diff options
context:
space:
mode:
authorMilan Verespej <m.verespej@partner.samsung.com>2019-01-21 15:45:42 +0100
committerMilan Verespej <m.verespej@partner.samsung.com>2019-01-28 14:58:57 +0100
commit91bc226dc7c0096fbaa4aa1bf22598a1a55f6a4c (patch)
tree3151ab49296c0480d6f5ea4b8b2b0189db74b2fe /build/common-functions.sh
parent2f1f94848beb2af4bb355872986cde78f40e177e (diff)
Remove bash version of installer
Since bash version of offline installer is not supported in Casablanca release this change removes it and provides small refactor of offline resource building scripts. Change-Id: I953733edc31e994da123b7f0b1c502e156676669 Issue-ID: OOM-1597 Signed-off-by: Milan Verespej <m.verespej@partner.samsung.com>
Diffstat (limited to 'build/common-functions.sh')
-rwxr-xr-xbuild/common-functions.sh92
1 files changed, 92 insertions, 0 deletions
diff --git a/build/common-functions.sh b/build/common-functions.sh
new file mode 100755
index 00000000..e39c4778
--- /dev/null
+++ b/build/common-functions.sh
@@ -0,0 +1,92 @@
+# 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 file contains shared variables and functions for the onap installer
+#
+
+# any script which needs this file can check this variable
+# and it will know immediately if the functions and variables
+# are loaded and usable
+IS_COMMON_FUNCTIONS_SOURCED=YES
+
+PATH="${PATH}:/usr/local/bin:/usr/local/sbin"
+export PATH
+
+# just self-defense against locale
+LANG=C
+export LANG
+
+# default credentials to the repository
+NEXUS_USERNAME=admin
+NEXUS_PASSWORD=admin123
+NEXUS_EMAIL=admin@onap.org
+
+# this function is intended to unify the installer output
+message() {
+ case "$1" in
+ info)
+ echo 'INFO:' "$@"
+ ;;
+ debug)
+ echo 'DEBUG:' "$@" >&2
+ ;;
+ warning)
+ echo 'WARNING [!]:' "$@" >&2
+ ;;
+ error)
+ echo 'ERROR [!!]:' "$@" >&2
+ return 1
+ ;;
+ *)
+ echo 'UNKNOWN [?!]:' "$@" >&2
+ return 2
+ ;;
+ esac
+ return 0
+}
+export message
+
+# if the environment variable DEBUG is set to DEBUG-ONAP ->
+# -> this function will print its arguments
+# otherwise nothing is done
+debug() {
+ [ "$DEBUG" = DEBUG-ONAP ] && message debug "$@"
+}
+export debug
+
+fail() {
+ message error "$@"
+ exit 1
+}
+
+retry() {
+ local n=1
+ local max=5
+ while ! "$@"; do
+ if [ $n -lt $max ]; then
+ n=$((n + 1))
+ message warning "Command ${@} failed. Attempt: $n/$max"
+ message info "waiting 10s for another try..."
+ sleep 10s
+ else
+ fail "Command ${@} failed after $n attempts. Better to abort now."
+ fi
+ done
+}
+