Abort if voltctl cannot find etcd
The voltctl commands we used to set log levels return only a rather
unhelpful error message ("context deadline exceeded") if voltctl
is unable to connect to etcd. The exit status in that case is 0,
wrongly indicating success.
This happens quite easily if kubectl was configured to forward etcd to
a port other than the one expected by voltctl.
Using "voltctl log level list" as we do with this change has two effects
if voltctl cannot find etcd. First, it exits with status 1 which should
abort the pipeline, alerting the user to a configuration problem. Second,
it prints a more helpful error message:
Is ETCD available at localhost:2379?
Signed-off-by: Roger Luethi <roger.luethi@bisdn.de>
Change-Id: I7c2b0fdd8a2028c4b85b1a9b81c35dd194de99ca
diff --git a/jjb/pipeline/voltha/voltha-dt-physical-functional-tests.groovy b/jjb/pipeline/voltha/voltha-dt-physical-functional-tests.groovy
index 5a14eab..69fbced 100644
--- a/jjb/pipeline/voltha/voltha-dt-physical-functional-tests.groovy
+++ b/jjb/pipeline/voltha/voltha-dt-physical-functional-tests.groovy
@@ -131,6 +131,9 @@
# We should change this. In the meantime here is a workaround.
set +e
+ # Have voltctl exit with error status 1 and warning if etcd is unavailable.
+ voltctl log level list
+
# Remove noise from voltha-core logs
voltctl log level set WARN read-write-core#github.com/opencord/voltha-go/db/model
voltctl log level set WARN read-write-core#github.com/opencord/voltha-lib-go/v3/pkg/kafka