From 0c60cfc98dfd9888d3bf9ed7f2a03364bc5e2c34 Mon Sep 17 00:00:00 2001 From: gmarek Date: Mon, 4 Jul 2016 15:14:16 +0200 Subject: [PATCH] Fix the way addon-manager handles non-namespaced objects --- cluster/addons/addon-manager/Makefile | 2 +- cluster/addons/addon-manager/kube-addon-update.sh | 12 +++++++----- .../cluster-monitoring/influxdb/influxdb-pv.yaml | 1 - .../images/hyperkube/static-pods/addon-manager.json | 2 +- .../salt/kube-addons/kube-addon-manager.yaml | 3 ++- 5 files changed, 11 insertions(+), 9 deletions(-) diff --git a/cluster/addons/addon-manager/Makefile b/cluster/addons/addon-manager/Makefile index 5e02f364188..518412f6306 100644 --- a/cluster/addons/addon-manager/Makefile +++ b/cluster/addons/addon-manager/Makefile @@ -15,7 +15,7 @@ IMAGE=gcr.io/google-containers/kube-addon-manager ARCH?=amd64 TEMP_DIR:=$(shell mktemp -d) -VERSION=v5 +VERSION=v5.1 # amd64 and arm has "stable" binaries pushed for v1.2, arm64 and ppc64le hasn't so they have to fetch the latest alpha # however, arm64 and ppc64le are very experimental right now, so it's okay diff --git a/cluster/addons/addon-manager/kube-addon-update.sh b/cluster/addons/addon-manager/kube-addon-update.sh index fca7ec230f4..41dbfaa1575 100755 --- a/cluster/addons/addon-manager/kube-addon-update.sh +++ b/cluster/addons/addon-manager/kube-addon-update.sh @@ -41,8 +41,6 @@ # 3. kubectl prints the output to stderr (the output should be captured and then # logged) - - # global config KUBECTL=${TEST_KUBECTL:-} # substitute for tests KUBECTL=${KUBECTL:-${KUBECTL_BIN:-}} @@ -133,7 +131,7 @@ try: try: print "%s/%s" % (y["metadata"]["namespace"], y["metadata"]["name"]) except Exception, ex: - print "default/%s" % y["metadata"]["name"] + print "/%s" % y["metadata"]["name"] except Exception, ex: print "ERROR" ''' @@ -198,7 +196,7 @@ function run-until-success() { # returns a list of / pairs (nsnames) function get-addon-nsnames-from-server() { local -r obj_type=$1 - "${KUBECTL}" get "${obj_type}" --all-namespaces -o go-template="{{range.items}}{{.metadata.namespace}}/{{.metadata.name}} {{end}}" -l kubernetes.io/cluster-service=true + "${KUBECTL}" get "${obj_type}" --all-namespaces -o go-template="{{range.items}}{{.metadata.namespace}}/{{.metadata.name}} {{end}}" -l kubernetes.io/cluster-service=true | sed 's///g' } # returns the characters after the last separator (including) @@ -262,7 +260,11 @@ function create-object() { log INFO "Creating new ${obj_type} from file ${file_path} in namespace ${namespace}, name: ${obj_name}" # this will keep on failing if the ${file_path} disappeared in the meantime. # Do not use too many retries. - run-until-success "${KUBECTL} create --namespace=${namespace} -f ${file_path}" ${NUM_TRIES} ${DELAY_AFTER_ERROR_SEC} + if [[ -n "${namespace}" ]]; then + run-until-success "${KUBECTL} create --namespace=${namespace} -f ${file_path}" ${NUM_TRIES} ${DELAY_AFTER_ERROR_SEC} + else + run-until-success "${KUBECTL} create -f ${file_path}" ${NUM_TRIES} ${DELAY_AFTER_ERROR_SEC} + fi } function update-object() { diff --git a/cluster/addons/cluster-monitoring/influxdb/influxdb-pv.yaml b/cluster/addons/cluster-monitoring/influxdb/influxdb-pv.yaml index 76d091cdd63..4eb7b7b2769 100644 --- a/cluster/addons/cluster-monitoring/influxdb/influxdb-pv.yaml +++ b/cluster/addons/cluster-monitoring/influxdb/influxdb-pv.yaml @@ -5,7 +5,6 @@ kind: PersistentVolume apiVersion: v1 metadata: name: influxdb-pv - namespace: kube-system labels: kubernetes.io/cluster-service: "true" spec: diff --git a/cluster/images/hyperkube/static-pods/addon-manager.json b/cluster/images/hyperkube/static-pods/addon-manager.json index 4d0f0bd6876..edf54eb14cd 100644 --- a/cluster/images/hyperkube/static-pods/addon-manager.json +++ b/cluster/images/hyperkube/static-pods/addon-manager.json @@ -11,7 +11,7 @@ "containers": [ { "name": "kube-addon-manager", - "image": "gcr.io/google-containers/kube-addon-manager-ARCH:v4", + "image": "gcr.io/google-containers/kube-addon-manager-ARCH:v5.1", "resources": { "requests": { "cpu": "5m", diff --git a/cluster/saltbase/salt/kube-addons/kube-addon-manager.yaml b/cluster/saltbase/salt/kube-addons/kube-addon-manager.yaml index 426034f0a17..99c07000f92 100644 --- a/cluster/saltbase/salt/kube-addons/kube-addon-manager.yaml +++ b/cluster/saltbase/salt/kube-addons/kube-addon-manager.yaml @@ -10,7 +10,8 @@ spec: hostNetwork: true containers: - name: kube-addon-manager - image: gcr.io/google-containers/kube-addon-manager:v5 + # When updating version also bump it in cluster/images/hyperkube/static-pods/addon-manager.json + image: gcr.io/google-containers/kube-addon-manager:v5.1 resources: requests: cpu: 5m