SEBA-440 Workaround failed voltha chart install
Change-Id: Icb2bc3127267b224ad12bb39bdfd1df620669e2f
diff --git a/seba-in-a-box/Makefile b/seba-in-a-box/Makefile
index 5c8db43..e8394cc 100644
--- a/seba-in-a-box/Makefile
+++ b/seba-in-a-box/Makefile
@@ -134,19 +134,28 @@
cd $(WORKSPACE)/cord/helm-charts; helm upgrade --install $(HELM_ONOS_ARGS) onos onos -f $(SEBAVALUES)
touch $@
+# SEBA-440 Sometimes VOLTHA install fails with 'namespaces "voltha" not found'
+# Work around by repeatedly trying to install the chart until it succeeds
$(M)/voltha: | $(M)/kafka-running $(INFRA_PREREQS) $(M)/etcd-operator-ready
cd $(WORKSPACE)/cord/helm-charts; helm dep up voltha
- cd $(WORKSPACE)/cord/helm-charts; helm upgrade --install $(HELM_VOLTHA_ARGS) voltha voltha -f $(SEBAVALUES)
+ cd $(WORKSPACE)/cord/helm-charts; \
+ for i in 1 2 3; \
+ do \
+ helm upgrade --install $(HELM_VOLTHA_ARGS) voltha voltha -f $(SEBAVALUES) && break; \
+ echo "VOLTHA chart install failed; cleaning up and trying again"; \
+ helm delete --purge voltha; \
+ until ! kubectl get namespace voltha; \
+ do \
+ sleep 5; \
+ done; \
+ sleep 5; \
+ done
touch $@
$(M)/etcd-operator-ready: | $(WORKSPACE)/cord/helm-charts $(M)/helm-init
cd $(WORKSPACE)/cord/helm-charts; \
helm upgrade --install etcd-operator --version $(ETCD_OPERATOR_VERSION) stable/etcd-operator -f $(SEBAVALUES)
- until kubectl get crd | grep etcdclusters; \
- do \
- echo "Waiting for etcdclusters CRD to be available"; \
- sleep 5; \
- done
+ timeout 120s bash -c "until kubectl get crd | grep etcdclusters; do echo 'Waiting for etcdclusters CRD to be available'; sleep 5; done"
touch $@
$(M)/voltha-running: | $(M)/voltha