From a305bc9fb5b853f4918602c4a79580a042726e78 Mon Sep 17 00:00:00 2001 From: Sergiusz Bazanski Date: Fri, 18 Jan 2019 01:34:20 +0100 Subject: [PATCH] tool: add calicoctl wrapper --- tools/BUILD | 8 +++++++- tools/calicoctl.sh | 23 +++++++++++++++++++++++ tools/install.sh | 2 +- 3 files changed, 31 insertions(+), 2 deletions(-) create mode 100755 tools/calicoctl.sh diff --git a/tools/BUILD b/tools/BUILD index 165da430..d6687217 100644 --- a/tools/BUILD +++ b/tools/BUILD @@ -40,7 +40,13 @@ copy_go_binary( ) copy_go_binary( - name = "calicoctl", + name = "calicoctl.bin", src = "@com_github_projectcalico_calicoctl//calicoctl:calicoctl", visibility = ["//visibility:public"], ) + +sh_binary( + name = "calicoctl", + srcs = ["calicoctl.sh"], + data = [":calicoctl.bin"], +) diff --git a/tools/calicoctl.sh b/tools/calicoctl.sh new file mode 100755 index 00000000..dc389982 --- /dev/null +++ b/tools/calicoctl.sh @@ -0,0 +1,23 @@ +#!/usr/bin/env bash + +# A wrapper around the real calicoctl to configure etcd access... + +if [ -z "$hscloud_root" ]; then + echo 2>&1 "Please source env.sh" + exit 1 +fi + +ETCD_ENDPOINTS="https://bc01n01.hswaw.net:2379,https://bc01n01.hswaw.net:2379,https://bc01n01.hswaw.net:2379" +ETCD_KEY_FILE="$hscloud_root/cluster/secrets/plain/kube-calico.key" +ETCD_CERT_FILE="$hscloud_root/cluster/certs/kube-calico.crt" +ETCD_CA_CERT_FILE="$hscloud_root/cluster/certs/ca.crt" + +if [ ! -f "$ETCD_KEY_FILE" ] ; then + secretstore decrypt "$hscloud_root/cluster/secrets/cipher/kube-calico.key" > "$ETCD_KEY_FILE" +fi + +export ETCD_ENDPOINTS +export ETCD_KEY_FILE +export ETCD_CERT_FILE +export ETCD_CA_CERT_FILE +calicoctl.bin "$@" diff --git a/tools/install.sh b/tools/install.sh index dedcfe62..82713a2c 100755 --- a/tools/install.sh +++ b/tools/install.sh @@ -9,4 +9,4 @@ cd "${hscloud_root}" bazel build \ //tools:kubectl //tools:kubecfg //tools:clustercfg //tools:secretstore \ - //tools:pass //tools:calicoctl + //tools:pass //tools:calicoctl.bin