[lib.sh] Split into multiple files for readability
[fuel.git] / mcp / scripts / globals.sh
1 #!/bin/bash -e
2 ##############################################################################
3 # Copyright (c) 2018 Ericsson AB, Mirantis Inc., Enea AB and others.
4 # All rights reserved. This program and the accompanying materials
5 # are made available under the terms of the Apache License, Version 2.0
6 # which accompanies this distribution, and is available at
7 # http://www.apache.org/licenses/LICENSE-2.0
8 ##############################################################################
9
10 # Global variables
11 export CI_DEBUG=${CI_DEBUG:-0}; [[ "${CI_DEBUG}" =~ (false|0) ]] || set -x
12 export SSH_KEY=${SSH_KEY:-"/var/lib/opnfv/mcp.rsa"}
13 export SALT_MASTER=${INSTALLER_IP:-10.20.0.2}
14 export SALT_MASTER_USER=${SALT_MASTER_USER:-ubuntu}
15 export VIRSH=${VIRSH:-'virsh -c qemu:///system'}
16
17 # Derived from INSTALLER_IP
18 export MCPCONTROL_NET=${MCPCONTROL_NET:-${SALT_MASTER%.*}.0}
19 export MCPCONTROL_PREFIX=${MCPCONTROL_PREFIX:-24}
20 export MAAS_IP=${MAAS_IP:-${SALT_MASTER%.*}.3}
21
22 # Derived from above global vars, not overideable
23 export SSH_OPTS="-o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -i ${SSH_KEY}"
24 export SSH_SALT="${SALT_MASTER_USER}@${SALT_MASTER}"
25
26 ##############################################################################
27 # BEGIN of colored notification wrappers
28 #
29
30 # same as `notify_i` + trailing '\n';
31 function notify() {
32     local msg=${1}; shift
33     notify_i "${msg}\n" "$@"
34 }
35
36 # Inline (no newline added) colored output notification wrapper
37 function notify_i() {
38     tput setaf "${2:-1}" || true
39     echo -en "${1:-"[WARN] Unsupported opt arg: $3\\n"}"
40     tput sgr0
41 }
42
43 # same as `notify` + extra '\n' before and after;
44 function notify_n() {
45     local msg=${1}; shift
46     notify_i "\n${msg}\n\n" "$@"
47 }
48
49 # same as `notify` + stderr output + exit;
50 function notify_e() {
51     local msg=${1}; shift
52     notify_i "\n${msg}\n\n" "$@" 1>&2
53     exit 1
54 }
55 #
56 # END of colored notification wrapper
57 ##############################################################################