CORD_PLATFORM_VERSION=${CORD_PLATFORM_VERSION:-6.1.0}
SEBA_VERSION=${SEBA_VERSION:-1.0.0}
ATT_WORKFLOW_VERSION=${ATT_WORKFLOW_VERSION:-1.0.2}
-BBSIM_VERSION=${SEBA_VERSION:-1.0.0}
-
CORD_CHART=${CORD_CHART:-${basepath}/../src_repo/seba_charts}
# TODO(alav): Make each step re-entrant
helm install -n att-workflow --version "${ATT_WORKFLOW_VERSION}" ${CORD_CHART}/att-workflow
wait_for 300 'test $(kubectl get pods | grep -vcE "(\s(.+)/\2.*Running|tosca-loader.*Completed)") -eq 1' || true
-# Install bbsim
-export BBSIM_VERSION
-#helm install -n bbsim --version ${BBSIM_VERSION} ${CORD_CHART}/bbsim
--- /dev/null
+#!/bin/bash -ex
+# shellcheck disable=SC2016
+
+basepath=$(cd "$(dirname "$0")"; pwd)
+BBSIM_VERSION=${BBSIM_VERSION:-1.0.0}
+CORD_CHART=${CORD_CHART:-${basepath}/../../src_repo/seba_charts}
+
+# shellcheck disable=SC1090
+source "${basepath}/../../install/util.sh"
+
+# Install bbsim
+helm install -n bbsim --version "${BBSIM_VERSION}" "${CORD_CHART}/bbsim"
+wait_for 300 'test $(kubectl get pods | grep -vcE "(\s(.+)/\2.*Running|bbsim.*Running)") -eq 1' || true
#!/bin/bash -ex
# shellcheck disable=SC2016
-#Modified from https://github.com/cachengo/seba_charts/blob/master/scripts/mini_test.sh
-
-TOSCA_POD=`kubectl get pods | grep xos-tosca | cut -d " " -f1`
-TOSCA_IP=`kubectl describe pod $TOSCA_POD | grep Node: | cut -d "/" -f2`
-BBSIM_IP=`kubectl get services -n voltha | grep bbsim | tr -s ' ' | cut -d " " -f3`
+TOSCA_POD=$(kubectl get pods | grep xos-tosca | cut -d " " -f1)
+TOSCA_IP=$(kubectl describe pod "$TOSCA_POD" | grep Node: | cut -d "/" -f2)
+BBSIM_IP=$(kubectl get services -n voltha | grep bbsim | tr -s ' ' | cut -d " " -f3)
# Create the first model
-H "xos-password: letmein" \
-X POST \
--data-binary @fabric.yaml \
- http://$TOSCA_IP:30007/run
+ "http://$TOSCA_IP:30007/run"
# Create the second model
sed "s/{{bbsim_ip}}/$BBSIM_IP/g" olt.yaml > olt.yaml.tmp
-H "xos-password: letmein" \
-X POST \
--data-binary @olt.yaml.tmp \
- http://$TOSCA_IP:30007/run
+ "http://$TOSCA_IP:30007/run"
rm olt.yaml.tmp
--- /dev/null
+#!/bin/bash
+# shellcheck disable=SC2016
+
+set -ex
+
+basepath=$(cd "$(dirname "$0")"; pwd)
+
+# Using opencord automation-tools from the cord-6.1 maintenance branch
+AUTO_TOOLS_GIT="https://github.com/opencord/automation-tools.git"
+AUTO_TOOLS_VER=${AUTO_TOOLS_VER:-cord-6.1}
+
+export M=/tmp/milestones
+export SEBAVALUE=
+export WORKSPACE=${HOME}
+
+mkdir -p ${M} "${WORKSPACE}/cord/test"
+
+# Update helm-charts submdule needed later
+# ignore subproject commit and use latest remote version
+git submodule update --init --remote "${basepath}/../../src_repo/helm-charts"
+
+cd "${WORKSPACE}"
+test -d automation-tools || git clone "${AUTO_TOOLS_GIT}"
+cd "${WORKSPACE}/automation-tools" && git checkout "${AUTO_TOOLS_VER}"
+
+# Fake the setup phase so that portcheck.sh is not called
+# also install some required packages
+sudo apt install -y httpie jq software-properties-common bridge-utils make
+# add iptbles rule needed to forward DHCP packets comming from the RG_POD
+sudo iptables -P FORWARD ACCEPT
+touch "${M}/setup"
+
+# Skip helm installation if it already exists and fake /usr/local/bin/helm
+if xhelm=$(command -v helm)
+then
+ if [ "${xhelm}" != "/usr/local/bin/helm" ]
+ then
+ echo "helm is installed at ${xhelm}; symlinking to /usr/local/bin/helm"
+ mkdir -p /usr/local/bin/ || true
+ sudo ln -sf "${xhelm}" /usr/local/bin/helm
+ fi
+else
+ echo "helm is not installed"
+fi
+
+# Faking helm-charts repo clone to our own git submodule if not already there
+CHARTS="${WORKSPACE}/cord/helm-charts"
+test -d "${CHARTS}" || test -h "${CHARTS}" || \
+ ln -s "${basepath}/../../src_repo/helm-charts" "${CHARTS}"
+
+# Fake SiaB components setup since they are already installed
+milestones="kubeadm helm-init kafka kafka-running etcd-operator-ready voltha \
+ voltha-running nem onos siab"
+
+for m in ${milestones}
+do
+ echo "Faking SiaB milestone ${M}/${m}"
+ test -f "${M}/${m}" || touch "${M}/${m}"
+done
+
+# Now calling make, to install PONSim
+cd "${WORKSPACE}/automation-tools/seba-in-a-box"
+make stable
+