mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-24 12:15:52 +00:00
Merge pull request #37139 from MrHohn/addon-manager-6.0
Automatic merge from submit-queue Bumps up Addon Manager to v6.0 with full support of kubectl apply Below images are built and pushed: - gcr.io/google-containers/kube-addon-manager:v6.0 - gcr.io/google-containers/kube-addon-manager-amd64:v6.0 - gcr.io/google-containers/kube-addon-manager-arm:v6.0 - gcr.io/google-containers/kube-addon-manager-arm64:v6.0 - gcr.io/google-containers/kube-addon-manager-ppc64le:v6.0 The actual change made is upgrade kubectl version from `v1.5.0-alpha.1` to `v1.5.0-beta.1`, which is released today. @mikedanese @saad-ali This need to get into 1.5 because Addon Manager v6.0-alpha.1 (currently in used) does not have full support of `kubectl apply --prune`.
This commit is contained in:
commit
223c167d66
@ -7,8 +7,7 @@ Kubernetes clusters. The add-ons are visible through the API (they can be listed
|
||||
because the system will bring them back to the original state, in particular:
|
||||
- If an add-on is deleted, it will be recreated automatically.
|
||||
- If an add-on is updated through Apiserver, it will be reconfigured to the state given by
|
||||
the supplied fields in the initial config. Though it is fine to modify a field that was
|
||||
unspecified.
|
||||
the supplied fields in the initial config.
|
||||
|
||||
On the cluster, the add-ons are kept in `/etc/kubernetes/addons` on the master node, in
|
||||
yaml / json files. The addon manager periodically `kubectl apply`s the contents of this
|
||||
|
@ -1,3 +1,6 @@
|
||||
### Version 6.0 (Fri November 18 2016 Zihong Zheng <zihongz@google.com>)
|
||||
- Upgrade Addon Manager to use `kubectl apply`.
|
||||
|
||||
### Version 5.2 (Wed October 26 2016 Zihong Zheng <zihongz@google.com>)
|
||||
- Added support for ConfigMap and upgraded kubectl version to v1.4.4 (pr #35255)
|
||||
|
||||
|
@ -14,12 +14,6 @@
|
||||
|
||||
FROM BASEIMAGE
|
||||
|
||||
# If we're building for another architecture than amd64, the CROSS_BUILD_ placeholder is removed so e.g. CROSS_BUILD_COPY turns into COPY
|
||||
# If we're building normally, for amd64, CROSS_BUILD lines are removed
|
||||
CROSS_BUILD_COPY qemu-ARCH-static /usr/bin/
|
||||
|
||||
RUN pip install pyyaml
|
||||
|
||||
ADD kube-addons.sh /opt/
|
||||
ADD namespace.yaml /opt/
|
||||
ADD kubectl /usr/local/bin/
|
||||
|
@ -15,48 +15,31 @@
|
||||
IMAGE=gcr.io/google-containers/kube-addon-manager
|
||||
ARCH?=amd64
|
||||
TEMP_DIR:=$(shell mktemp -d)
|
||||
VERSION=v5.2
|
||||
KUBECTL_VERSION?=v1.5.0-alpha.1
|
||||
VERSION=v6.0
|
||||
KUBECTL_VERSION?=v1.5.0-beta.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
|
||||
ifeq ($(ARCH),amd64)
|
||||
BASEIMAGE?=python:2.7-slim
|
||||
BASEIMAGE?=bashell/alpine-bash
|
||||
endif
|
||||
ifeq ($(ARCH),arm)
|
||||
BASEIMAGE?=hypriot/rpi-python:2.7
|
||||
QEMUARCH=arm
|
||||
BASEIMAGE?=armel/debian
|
||||
endif
|
||||
ifeq ($(ARCH),arm64)
|
||||
BASEIMAGE?=aarch64/python:2.7-slim
|
||||
QEMUARCH=aarch64
|
||||
BASEIMAGE?=aarch64/debian
|
||||
endif
|
||||
ifeq ($(ARCH),ppc64le)
|
||||
BASEIMAGE?=ppc64le/python:2.7-slim
|
||||
QEMUARCH=ppc64le
|
||||
BASEIMAGE?=ppc64le/debian
|
||||
endif
|
||||
|
||||
.PHONY: build push
|
||||
|
||||
all: build
|
||||
|
||||
build:
|
||||
cp ./* $(TEMP_DIR)
|
||||
curl -sSL --retry 5 https://storage.googleapis.com/kubernetes-release/release/$(KUBECTL_VERSION)/bin/linux/$(ARCH)/kubectl > $(TEMP_DIR)/kubectl
|
||||
chmod +x $(TEMP_DIR)/kubectl
|
||||
cd ${TEMP_DIR} && sed -i.back "s|ARCH|$(QEMUARCH)|g" Dockerfile
|
||||
cd $(TEMP_DIR) && sed -i.back "s|BASEIMAGE|$(BASEIMAGE)|g" Dockerfile
|
||||
|
||||
ifeq ($(ARCH),amd64)
|
||||
# When building "normally" for amd64, remove the whole line, it has no part in the amd64 image
|
||||
cd $(TEMP_DIR) && sed -i.back "/CROSS_BUILD_/d" Dockerfile
|
||||
else
|
||||
# When cross-building, only the placeholder "CROSS_BUILD_" should be removed
|
||||
# Register /usr/bin/qemu-ARCH-static as the handler for other-arch binaries in the kernel
|
||||
docker run --rm --privileged multiarch/qemu-user-static:register --reset
|
||||
curl -sSL --retry 5 https://github.com/multiarch/qemu-user-static/releases/download/v2.5.0/x86_64_qemu-$(QEMUARCH)-static.tar.xz | tar -xJ -C $(TEMP_DIR)
|
||||
cd $(TEMP_DIR) && sed -i.back "s/CROSS_BUILD_//g" Dockerfile
|
||||
endif
|
||||
|
||||
docker build -t $(IMAGE)-$(ARCH):$(VERSION) $(TEMP_DIR)
|
||||
|
||||
push: build
|
||||
|
@ -11,7 +11,7 @@
|
||||
"containers": [
|
||||
{
|
||||
"name": "kube-addon-manager",
|
||||
"image": "REGISTRY/kube-addon-manager-ARCH:v6.0-alpha.1",
|
||||
"image": "REGISTRY/kube-addon-manager-ARCH:v6.0",
|
||||
"resources": {
|
||||
"requests": {
|
||||
"cpu": "5m",
|
||||
|
@ -11,7 +11,7 @@
|
||||
"containers": [
|
||||
{
|
||||
"name": "kube-addon-manager",
|
||||
"image": "REGISTRY/kube-addon-manager-ARCH:v6.0-alpha.1",
|
||||
"image": "REGISTRY/kube-addon-manager-ARCH:v6.0",
|
||||
"resources": {
|
||||
"requests": {
|
||||
"cpu": "5m",
|
||||
|
@ -10,7 +10,7 @@ spec:
|
||||
containers:
|
||||
- name: kube-addon-manager
|
||||
# When updating version also bump it in cluster/images/hyperkube/static-pods/addon-manager.json
|
||||
image: gcr.io/google-containers/kube-addon-manager:v6.0-alpha.1
|
||||
image: gcr.io/google-containers/kube-addon-manager:v6.0
|
||||
command:
|
||||
- /bin/bash
|
||||
- -c
|
||||
|
Loading…
Reference in New Issue
Block a user