APT_PROXY=""
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )"
-HTTPDDIR="$( cd "${HOME}/snap/qhttp/common" &> /dev/null && pwd )"
+HTTPDDIR="${HOME}/.osm/httpd"
HTTPPORT=8000
KUBECFG="~/.osm/microk8s-config.yaml"
NO_CACHE=""
--debug) set -x ;;
--apt-proxy) APT_PROXY="$2" && shift ;;
--help | -h) show_help && exit 0 ;;
- --httpddir) HTTPDIR="$2" && shift;;
+ --httpddir) HTTPDDIR="$2" && shift;;
--install-local-registry) 'install_local_registry' ;;
--install-microstack) 'install_microstack' ;;
--install-qhttpd) INSTALL_HTTPD='install_qhttpd' ;;
+ --run-httpserver) INSTALL_HTTPD='run_httpserver' ;;
--kubecfg) KUBECFG="$2" && shift ;;
--module) TARGET_MODULE="$2" && shift;;
--no-cache) NO_CACHE="--no-cache" ;;
--debug enable set -x for this script
--install-local-registry install and enable Microk8s local registry on port 32000
--install-microstack install Microstack and configure to run robot tests
- --install-qhttpd install QHTTPD as an HTTP server on port ${HTTPPORT}
+ --install-qhttpd (deprecated, use --run-httpserver instead) install QHTTPD as an HTTP server on port ${HTTPPORT}
+ --run-httpserver run HTTP server on port ${HTTPPORT}
--kubecfg path to kubecfg.yaml (uses Charmed OSM by default)
--no-cache do not use any cache when building docker images
--module only build this comma delimited list of modules
git clone "https://osm.etsi.org/gerrit/osm/IM
git clone "https://osm.etsi.org/gerrit/osm/N2VC
-First we install a light HTTP server to serve the artifacts:
+First we run a light HTTP server to serve the artifacts:
- devops/tools/local-build.sh --install-qhttpd
+ devops/tools/local-build.sh --run-httpserver
Then we generate the artifacts (debian packages) for the different repos: common, IM, N2VC, RO, LCM, NBI
--disk-format=qcow2 ubuntu20.04
}
+function create_httpddir() {
+ mkdir -p ${HTTPDDIR}
+}
+
function install_qhttpd() {
sudo snap install qhttp
EXISTING_PID=$(ps auxw | grep "http.server $HTTPPORT" | grep -v grep | awk '{print $2}')
qhttp -p ${HTTPPORT} &
}
+function run_httpserver() {
+ EXISTING_PID=$(ps auxw | grep "http.server $HTTPPORT" | grep -v grep | awk '{print $2}')
+ if [ ! -z $EXISTING_PID ] ; then
+ kill $EXISTING_PID
+ fi
+ python3 -m http.server ${HTTPPORT} --directory "${HTTPDDIR}" &>/dev/null &
+}
+
function stage_2() {
print_section "Performing Stage 2"
MODULES="common devops IM LCM MON N2VC NBI NG-UI NG-SA osmclient PLA POL RO tests"
fi
HOSTIP=$(ip -4 addr show docker0 | grep -Po 'inet \K[\d.]+')
- for file in ~/snap/qhttp/common/*.deb ; do
+ [ -z "$DEFAULT_IF" ] && DEFAULT_IF=$(ip route list|awk '$1=="default" {print $5; exit}')
+ [ -z "$DEFAULT_IF" ] && DEFAULT_IF=$(route -n |awk '$1~/^0.0.0.0/ {print $8; exit}')
+ DEFAULT_IP=$(ip -o -4 a s ${DEFAULT_IF} |awk '{split($4,a,"/"); print a[1]; exit}')
+ HOSTIP=${HOSTIP:=${DEFAULT_IP}}
+ echo $HOSTIP
+
+ for file in ${HTTPDDIR}/*.deb ; do
file=`basename ${file}`
name=`echo ${file} | cut -d_ -f1 | sed "s/-/_/g"`;
name=${name^^}_URL
else
check_arguments $@
+ create_httpddir
eval "${INSTALL_HTTPD}"
eval "${INSTALL_LOCAL_REGISTRY}"
eval "${INSTALL_MICROSTACK}"