aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFrancesco Colista <fcolista@alpinelinux.org>2019-07-16 21:02:27 +0000
committerFrancesco Colista <fcolista@alpinelinux.org>2019-07-16 21:02:57 +0000
commitfd3cda9b3d8a977358542d1f20932c7122dc1de3 (patch)
tree6ce22e1aafe2dbe805b12dffc88fbd61130b794e
parentefd78c8161460911e14880d8fcfb4b4cae3c8667 (diff)
testing/kubernetes: upgrade to 1.15.0
-rw-r--r--testing/kubernetes/APKBUILD66
-rw-r--r--testing/kubernetes/add-openrc-support.patch110
-rw-r--r--testing/kubernetes/bindata.patch30
-rw-r--r--testing/kubernetes/kube-apiserver.confd7
-rw-r--r--testing/kubernetes/kube-apiserver.initd20
-rw-r--r--testing/kubernetes/kube-apiserver.logrotated7
-rw-r--r--testing/kubernetes/kube-controller-manager.confd7
-rw-r--r--testing/kubernetes/kube-controller-manager.initd19
-rw-r--r--testing/kubernetes/kube-controller-manager.logrotated7
-rw-r--r--testing/kubernetes/kube-proxy.confd4
-rw-r--r--testing/kubernetes/kube-proxy.initd20
-rw-r--r--testing/kubernetes/kube-proxy.logrotated8
-rw-r--r--testing/kubernetes/kube-scheduler.confd7
-rw-r--r--testing/kubernetes/kube-scheduler.initd19
-rw-r--r--testing/kubernetes/kube-scheduler.logrotated7
-rw-r--r--testing/kubernetes/kubelet.confd4
-rw-r--r--testing/kubernetes/kubelet.initd20
-rw-r--r--testing/kubernetes/kubelet.logrotated7
18 files changed, 250 insertions, 119 deletions
diff --git a/testing/kubernetes/APKBUILD b/testing/kubernetes/APKBUILD
index c810c6d5e0e..87ec82d1609 100644
--- a/testing/kubernetes/APKBUILD
+++ b/testing/kubernetes/APKBUILD
@@ -3,48 +3,96 @@
# Contributor: Tiago Ilieve <tiago.myhro@gmail.com>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=kubernetes
-pkgver=1.14.3
-pkgrel=1
+pkgver=1.15.0
+pkgrel=0
pkgdesc="Container Cluster Manager for Docker"
url="https://kubernetes.io/"
arch="x86_64 armhf"
license="Apache-2.0"
options="!check" # Tests hang
depends="bash"
-makedepends="coreutils findutils go linux-headers rsync grep"
+makedepends="coreutils findutils go go-bindata linux-headers rsync grep"
source="$pkgname-$pkgver.tar.gz::https://github.com/kubernetes/kubernetes/archive/v$pkgver.tar.gz
ensure-cgo-usage.patch
make-e2e_node-run-over-distro-bins.patch
make-test-cmd-run-over-hyperkube-based-kubectl.patch
- remove-apiserver-add-kube-prefix-for-hyperkube.patch
- add-openrc-support.patch
+ bindata.patch
+
+ kube-apiserver.initd
+ kube-apiserver.confd
+ kube-apiserver.logrotated
+
+ kube-controller-manager.initd
+ kube-controller-manager.confd
+ kube-controller-manager.logrotated
+
+ kube-proxy.initd
+ kube-proxy.confd
+ kube-proxy.logrotated
+
+ kube-scheduler.initd
+ kube-scheduler.confd
+ kube-scheduler.logrotated
+
+ kubelet.initd
+ kubelet.confd
+ kubelet.logrotated
"
build() {
- KUBE_VERBOSE=2 make -j1
+ make -j1
}
package() {
local binaries="hyperkube
kube-apiserver
kube-controller-manager
+ cloud-controller-manager
kube-scheduler
kubeadm
kubectl
kubelet
kube-proxy"
+
for bin in $binaries; do
+ mkdir -p "$pkgdir"/var/log/$bin
case "$CARCH" in
arm*) install -Dm755 _output/local/bin/linux/arm/$bin "$pkgdir"/usr/bin/$bin ;;
x86_64) install -Dm755 _output/local/bin/linux/amd64/$bin "$pkgdir"/usr/bin/$bin ;;
esac
done
+
install -d $pkgdir/var/lib/kubelet
+
+ local i; for i in $source; do
+ case $i in
+ *.initd) install -Dm755 "$srcdir/$i" \
+ "$pkgdir/etc/init.d/${i%.*}" ;;
+ *.confd) install -Dm644 "$srcdir/$i" \
+ "$pkgdir/etc/conf.d/${i%.*}" ;;
+ *.logrotate) install -Dm644 "$srcdir/$i" \
+ "$pkgdir/etc/logrotate.d/${i%.*}" ;;
+ esac
+ done
}
-sha512sums="3fab0b5f142644454d22abfc99454adb3d3055b132cf93b6a0f6a0088b6a7938835edee813611756e80a21b1473e62c179905d77d3f2288bd5c60c6a43e60361 kubernetes-1.14.3.tar.gz
+sha512sums="764268020e0fc27e8325058fefbc53200996e5a8f963c9156cf079425cdfed7545522ff8c779bfa074db8739e3ab97e829a049deaf0a0568f1434d7c1ed8446b kubernetes-1.15.0.tar.gz
bfe072d2f53543b8d704319755f3cfe5ed2467b54879e22117a25a9d7d6d4d238356e45824deaf4d18b8e9eb6f34d1de43be4840b9906f7909478ffe9e8a65ff ensure-cgo-usage.patch
8faa8f1c777740ed33ac4e46e8e47e9092098b6e672cf57a10caab2212b9b5c6965361fe7107d1311227e6145e2ad312982dc0340feb36b03ebb04e1202366f0 make-e2e_node-run-over-distro-bins.patch
d2d50f869160c266ec677be58f0401fb6446129de3e194b4c8599a6a8000d42290de553ee07b488fcdda80ffe94c640e0846ffbd7fbca94c5684d5f373e4c9f3 make-test-cmd-run-over-hyperkube-based-kubectl.patch
-100d439c8c5114fc8ac5e2c40f536b89b6165907e94112358365901e57329f5c813c5bf8ea5da5aba71574efb973bc028cafb7b168f50c9fa5a6b019c31c3884 remove-apiserver-add-kube-prefix-for-hyperkube.patch
-8aec0a1cda24fcd7001e34ff6163aee7eaf679dea953068b58df3578c016f70e1406903e032a51519bc16ac0dbe583159d1cf4d504adbb2930d811cc2f762cfe add-openrc-support.patch"
+13f90690564664cc1d7ca26ed3f62fea42b84050f8fd2432ff16fce21d42c7a2e9935739ab4dcb01b5289879522ecdd2d00bfe01337c3836766ce430f513245f bindata.patch
+8f4c98fe007ead2528f8efdb1117a752230d1c4039bc91fad5caf2919aa19f3fbe866c0b96b801cf4ed43d949e79da907003666fa447e4eda9b71e7d818c5315 kube-apiserver.initd
+7e3baab9b034e7048ed3cda8d09444c76369874cecc0a747fb5484c482fef464adb5ccc25fcb4481fb4aff68415a60462f6cbee2138810316f0cf822637676c1 kube-controller-manager.initd
+24b8f8990b54d92ad03e2b9a0605260df5462d2565213171e0f1044516f2b5cbbb2d893cd6697c472cf7018723852927c62f4514d08ad844586bce5bab0b45cd kube-proxy.initd
+151ea6f5cc36de9b83f0e5365579e33eea8002f9a03f5f61d195a349236e6baf192f701d3fb591b769aa90e8e1e620d525b20c95a1e8cda58d062971d8f587a3 kube-scheduler.initd
+6f8268eb8626d2e5d884e8a714861abebc92f1e7ebc9d50ab6d122fdec4e88aa672a3df900c3ce1deac36ba9991c914d7564adc0ef0e965b5975a86d51874962 kubelet.initd
+302b2a7ec715967c0aa7d1c177d4e55b26e37ebba8d04dd37ecf627d20042fe91cd7e6192ff9d71422129b0ea54a9eec6046f505af550548bd450998924f37ee kube-apiserver.confd
+347dcf514abec4bc94036955d0fb2d32f141a39d1a70d7fb37e7bf8eb5792e5c29560d500a08aafcd3e19422d04466004b832bca7108eb2815610feb144688fe kube-controller-manager.confd
+4c8c34ae8668bcfa5167c2d2af006fc46b461a5dafb3ec5b64cb8cdf2a830c22ddb5cf806c93b1404f60dabf91b4153724947fa2d2c494376f20e637eeed5018 kube-proxy.confd
+af88b382ab75657d0ff13c3f8f6d924cef9f2df7807a9a27daa63495981801bc4b607998f65c0758c11a7e070e43c24f7184ba7720711109c74b1c4d57919e34 kube-scheduler.confd
+2ae3bbc8a66da644b59d7f753294ad43d5675edbe2e4769b91d7c988d0eeffd5b4209a10650ad937f9698b1b6050279d448c75274815a6b348ad2023f2fef08e kubelet.confd
+1a4bcd54dafaedc614e34bbadc2a1163f003b5925d47552fb2c47049c033c147e612171e263d9659d189fc2d95688a0b7153322d8dba97c083c079fdef6c400e kube-apiserver.logrotated
+e00cd9297d8ac75fcd504a2bfb80d5c5e145e7d475dd15edf9361dc28721afdc069c5b6e79438b75a774e972028841a17e8f7842dcfb3d7835c436a3e503704c kube-controller-manager.logrotated
+d7e022ee22da191bda7382f87cb293d9c9d115a3df0c2054bf918279eb866f99c6d5c21e4c98eae84bacf925f7793bbe3087e0bcf6732ccb33844d15e4386fb5 kube-proxy.logrotated
+3692da349dd6ed0f5acc09d7b95ac562ffecb103e2270bebdfe4a7808d48dada9d2debff262d85b11c47f9ca3f0c20000712d03629ed813ff08a3e02d69267e6 kube-scheduler.logrotated
+dda5fb57b55926fd2e9cebe6c1593da699afba0398c58dfa8b923c53a9ae6e63d765778577211460047f20863a6095e8e2ab3e7769e38c4f6a1c55c0e3485501 kubelet.logrotated"
diff --git a/testing/kubernetes/add-openrc-support.patch b/testing/kubernetes/add-openrc-support.patch
deleted file mode 100644
index f4da52f0823..00000000000
--- a/testing/kubernetes/add-openrc-support.patch
+++ /dev/null
@@ -1,110 +0,0 @@
-Needed for OpenRC support until https://github.com/kubernetes/kubernetes/pull/73101 is merged.
-
-Brought to attention by https://bugs.alpinelinux.org/issues/10179
-
----------------------------------
---- a/pkg/util/initsystem/initsystem.go
-+++ b/pkg/util/initsystem/initsystem.go
-@@ -1,5 +1,5 @@
- /*
--Copyright 2016 The Kubernetes Authors.
-+Copyright 2019 The Kubernetes Authors.
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
-@@ -23,6 +23,9 @@
- )
-
- type InitSystem interface {
-+ // return a string describing how to enable a service
-+ EnableCommand(service string) string
-+
- // ServiceStart tries to start a specific service
- ServiceStart(service string) error
-
-@@ -42,8 +45,63 @@
- ServiceIsActive(service string) bool
- }
-
-+type OpenRCInitSystem struct{}
-+
-+func (openrc OpenRCInitSystem) ServiceStart(service string) error {
-+ args := []string{service, "start"}
-+ return exec.Command("rc-service", args...).Run()
-+}
-+
-+func (openrc OpenRCInitSystem) ServiceStop(service string) error {
-+ args := []string{service, "stop"}
-+ return exec.Command("rc-service", args...).Run()
-+}
-+
-+func (openrc OpenRCInitSystem) ServiceRestart(service string) error {
-+ args := []string{service, "restart"}
-+ return exec.Command("rc-service", args...).Run()
-+}
-+
-+// openrc writes to stderr if a service is not found or not enabled
-+// this is in contrast to systemd which only writes to stdout.
-+// Hence, we use the Combinedoutput, and ignore the error.
-+func (openrc OpenRCInitSystem) ServiceExists(service string) bool {
-+ args := []string{service, "status"}
-+ outBytes, _ := exec.Command("rc-service", args...).CombinedOutput()
-+ if strings.Contains(string(outBytes), "does not exist") {
-+ return false
-+ }
-+ return true
-+}
-+
-+func (openrc OpenRCInitSystem) ServiceIsEnabled(service string) bool {
-+ args := []string{"show", "default"}
-+ outBytes, _ := exec.Command("rc-update", args...).Output()
-+ if strings.Contains(string(outBytes), service) {
-+ return true
-+ }
-+ return false
-+}
-+
-+func (openrc OpenRCInitSystem) ServiceIsActive(service string) bool {
-+ args := []string{service, "status"}
-+ outBytes, _ := exec.Command("rc-service", args...).Output()
-+ if strings.Contains(string(outBytes), "stopped") {
-+ return false
-+ }
-+ return true
-+}
-+
-+func (openrc OpenRCInitSystem) EnableCommand(service string) string {
-+ return fmt.Sprintf("rc-update add %s default", service)
-+}
-+
- type SystemdInitSystem struct{}
-
-+func (sysd SystemdInitSystem) EnableCommand(service string) string {
-+ return fmt.Sprintf("systemctl enable %s.service", service)
-+}
-+
- func (sysd SystemdInitSystem) reloadSystemd() error {
- if err := exec.Command("systemctl", "daemon-reload").Run(); err != nil {
- return fmt.Errorf("failed to reload systemd: %v", err)
-@@ -110,6 +168,10 @@
- // WindowsInitSystem is the windows implementation of InitSystem
- type WindowsInitSystem struct{}
-
-+func (sysd WindowsInitSystem) EnableCommand(service string) string {
-+ return fmt.Sprintf("Set-Service '%s' -StartupType Automatic", service)
-+}
-+
- func (sysd WindowsInitSystem) ServiceStart(service string) error {
- args := []string{"Start-Service", service}
- err := exec.Command("powershell", args...).Run()
-@@ -170,6 +232,10 @@
- _, err := exec.LookPath("systemctl")
- if err == nil {
- return &SystemdInitSystem{}, nil
-+ }
-+ _, err = exec.LookPath("openrc")
-+ if err == nil {
-+ return &OpenRCInitSystem{}, nil
- }
- _, err = exec.LookPath("wininit.exe")
- if err == nil {
diff --git a/testing/kubernetes/bindata.patch b/testing/kubernetes/bindata.patch
new file mode 100644
index 00000000000..19aa194d1ba
--- /dev/null
+++ b/testing/kubernetes/bindata.patch
@@ -0,0 +1,30 @@
+diff --git a/hack/generate-bindata.sh b/hack/generate-bindata.sh
+index 995f1d17..32d04188 100755
+--- a/hack/generate-bindata.sh
++++ b/hack/generate-bindata.sh
+@@ -30,7 +30,6 @@ fi
+
+ # kube::golang::build_kube_toolchain installs the vendored go-bindata in
+ # $GOPATH/bin, so make sure that's explicitly part of our $PATH.
+-export PATH="${KUBE_OUTPUT_BINPATH}:${PATH}"
+
+ if ! which go-bindata &>/dev/null ; then
+ echo "Cannot find go-bindata."
+diff --git a/hack/lib/golang.sh b/hack/lib/golang.sh
+index f20a55b3..ca6ae34d 100755
+--- a/hack/lib/golang.sh
++++ b/hack/lib/golang.sh
+@@ -778,11 +778,11 @@ kube::golang::build_binaries() {
+ host_platform=$(kube::golang::host_platform)
+
+ local goflags goldflags goasmflags gogcflags
+- # If GOLDFLAGS is unset, then set it to the a default of "-s -w".
++ # If GOLDFLAGS is unset, then set it to the a default of "-w".
+ # Disable SC2153 for this, as it will throw a warning that the local
+ # variable goldflags will exist, and it suggest changing it to this.
+ # shellcheck disable=SC2153
+- goldflags="${GOLDFLAGS=-s -w} $(kube::version::ldflags)"
++ goldflags="${GOLDFLAGS=-w} $(kube::version::ldflags)"
+ goasmflags="-trimpath=${KUBE_ROOT}"
+ gogcflags="${GOGCFLAGS:-} -trimpath=${KUBE_ROOT}"
+
diff --git a/testing/kubernetes/kube-apiserver.confd b/testing/kubernetes/kube-apiserver.confd
new file mode 100644
index 00000000000..db74d27f020
--- /dev/null
+++ b/testing/kubernetes/kube-apiserver.confd
@@ -0,0 +1,7 @@
+###
+# kubernetes system config
+#
+# The following values are used to configure the kube-apiserver
+#
+
+command_args=""
diff --git a/testing/kubernetes/kube-apiserver.initd b/testing/kubernetes/kube-apiserver.initd
new file mode 100644
index 00000000000..db1f6f7a7a7
--- /dev/null
+++ b/testing/kubernetes/kube-apiserver.initd
@@ -0,0 +1,20 @@
+#!/sbin/openrc-run
+# Copyright 2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+description="Kubernetes API Server"
+pidfile=${pidfile:-"/run/${RC_SVCNAME}.pid"}
+user=${user:-${RC_SVCNAME}}
+group=${group:-${RC_SVCNAME}}
+
+command="/usr/bin/kube-apiserver"
+command_args="${command_args}"
+command_background="true"
+start_stop_daemon_args="--user ${user} --group ${group} \
+ --stdout /var/log/${RC_SVCNAME}/${RC_SVCNAME}.log \
+ --stderr /var/log/${RC_SVCNAME}/${RC_SVCNAME}.log"
+
+depend() {
+ after net
+}
+
diff --git a/testing/kubernetes/kube-apiserver.logrotated b/testing/kubernetes/kube-apiserver.logrotated
new file mode 100644
index 00000000000..4ed84506231
--- /dev/null
+++ b/testing/kubernetes/kube-apiserver.logrotated
@@ -0,0 +1,7 @@
+/var/log/kube-apiserver/*.log {
+ missingok
+ size 5M
+ rotate 3
+ compress
+ copytruncate
+}
diff --git a/testing/kubernetes/kube-controller-manager.confd b/testing/kubernetes/kube-controller-manager.confd
new file mode 100644
index 00000000000..5134f2b2df1
--- /dev/null
+++ b/testing/kubernetes/kube-controller-manager.confd
@@ -0,0 +1,7 @@
+###
+# kubernetes system config
+#
+# The following values are used to configure the kube-controller-manager
+#
+
+command_args=""
diff --git a/testing/kubernetes/kube-controller-manager.initd b/testing/kubernetes/kube-controller-manager.initd
new file mode 100644
index 00000000000..276197f0656
--- /dev/null
+++ b/testing/kubernetes/kube-controller-manager.initd
@@ -0,0 +1,19 @@
+#!/sbin/openrc-run
+# Copyright 2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+description="Kubernetes Controller Manager service"
+pidfile=${pidfile:-"/run/${RC_SVCNAME}.pid"}
+user=${user:-${RC_SVCNAME}}
+group=${group:-${RC_SVCNAME}}
+
+command="/usr/bin/kube-controller-manager"
+command_args="${command_args}"
+command_background="true"
+start_stop_daemon_args="--user ${user} --group ${group} \
+ --stdout /var/log/${RC_SVCNAME}/${RC_SVCNAME}.log \
+ --stderr /var/log/${RC_SVCNAME}/${RC_SVCNAME}.log"
+
+depend() {
+ after net
+}
diff --git a/testing/kubernetes/kube-controller-manager.logrotated b/testing/kubernetes/kube-controller-manager.logrotated
new file mode 100644
index 00000000000..06efce23406
--- /dev/null
+++ b/testing/kubernetes/kube-controller-manager.logrotated
@@ -0,0 +1,7 @@
+/var/log/kube-controller-manager/*.log {
+ missingok
+ size 5M
+ rotate 3
+ compress
+ copytruncate
+}
diff --git a/testing/kubernetes/kube-proxy.confd b/testing/kubernetes/kube-proxy.confd
new file mode 100644
index 00000000000..00f33f358bb
--- /dev/null
+++ b/testing/kubernetes/kube-proxy.confd
@@ -0,0 +1,4 @@
+###
+# Kubernetes kube-proxy config
+#
+command_args=""
diff --git a/testing/kubernetes/kube-proxy.initd b/testing/kubernetes/kube-proxy.initd
new file mode 100644
index 00000000000..e9d2c0e48e1
--- /dev/null
+++ b/testing/kubernetes/kube-proxy.initd
@@ -0,0 +1,20 @@
+#!/sbin/openrc-run
+# Copyright 2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+description="Kubernetes Proxy service"
+pidfile=${pidfile:-"/run/${SVCNAME}.pid"}
+user=${user:-root}
+group=${group:-root}
+
+command="/usr/bin/kube-proxy"
+command_args="${command_args}"
+command_background="true"
+start_stop_daemon_args="--user ${user} --group ${group} \
+ --stdout /var/log/${SVCNAME}/${SVCNAME}.log \
+ --stderr /var/log/${SVCNAME}/${SVCNAME}.log"
+
+depend() {
+ after net
+}
+
diff --git a/testing/kubernetes/kube-proxy.logrotated b/testing/kubernetes/kube-proxy.logrotated
new file mode 100644
index 00000000000..e90a1015136
--- /dev/null
+++ b/testing/kubernetes/kube-proxy.logrotated
@@ -0,0 +1,8 @@
+/var/log/kube-proxy/*.log {
+ missingok
+ size 5M
+ rotate 3
+ compress
+ copytruncate
+}
+
diff --git a/testing/kubernetes/kube-scheduler.confd b/testing/kubernetes/kube-scheduler.confd
new file mode 100644
index 00000000000..35da3d2228a
--- /dev/null
+++ b/testing/kubernetes/kube-scheduler.confd
@@ -0,0 +1,7 @@
+###
+# kubernetes system config
+#
+# The following values are used to configure the kube-scheduler
+#
+
+command_args=""
diff --git a/testing/kubernetes/kube-scheduler.initd b/testing/kubernetes/kube-scheduler.initd
new file mode 100644
index 00000000000..2c49bce3ec8
--- /dev/null
+++ b/testing/kubernetes/kube-scheduler.initd
@@ -0,0 +1,19 @@
+#!/sbin/openrc-run
+# Copyright 2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+description="Kubernetes Scheduler service"
+pidfile=${pidfile:-"/run/${RC_SVCNAME}.pid"}
+user=${user:-${RC_SVCNAME}}
+group=${group:-${RC_SVCNAME}}
+
+command="/usr/bin/kube-scheduler"
+command_args="${command_args}"
+command_background="true"
+start_stop_daemon_args="--user ${user} --group ${group} \
+ --stdout /var/log/${RC_SVCNAME}/${RC_SVCNAME}.log \
+ --stderr /var/log/${RC_SVCNAME}/${RC_SVCNAME}.log"
+
+depend() {
+ after net
+}
diff --git a/testing/kubernetes/kube-scheduler.logrotated b/testing/kubernetes/kube-scheduler.logrotated
new file mode 100644
index 00000000000..6cce6c6f5be
--- /dev/null
+++ b/testing/kubernetes/kube-scheduler.logrotated
@@ -0,0 +1,7 @@
+/var/log/kube-scheduler/*.log {
+ missingok
+ size 5M
+ rotate 3
+ compress
+ copytruncate
+}
diff --git a/testing/kubernetes/kubelet.confd b/testing/kubernetes/kubelet.confd
new file mode 100644
index 00000000000..24f424877eb
--- /dev/null
+++ b/testing/kubernetes/kubelet.confd
@@ -0,0 +1,4 @@
+###
+# Kubernetes Kubelet (worker) config
+
+command_args=""
diff --git a/testing/kubernetes/kubelet.initd b/testing/kubernetes/kubelet.initd
new file mode 100644
index 00000000000..2f6b4eaf5df
--- /dev/null
+++ b/testing/kubernetes/kubelet.initd
@@ -0,0 +1,20 @@
+#!/sbin/openrc-run
+# Copyright 2016-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+description="Kubelet, a Kubernetes node agent"
+pidfile=${pidfile:-"/run/${SVCNAME}/${SVCNAME}.pid"}
+user=${user:-root}
+group=${group:-root}
+
+command="/usr/bin/kubelet"
+command_args="${command_args}"
+command_background="true"
+start_stop_daemon_args="--user ${user} --group ${group} \
+ --stdout /var/log/kubelet/${SVCNAME}.log \
+ --stderr /var/log/kubelet/${SVCNAME}.log"
+
+depend() {
+ need net
+ after net
+}
diff --git a/testing/kubernetes/kubelet.logrotated b/testing/kubernetes/kubelet.logrotated
new file mode 100644
index 00000000000..f87767fe985
--- /dev/null
+++ b/testing/kubernetes/kubelet.logrotated
@@ -0,0 +1,7 @@
+/var/log/kubelet/*.log {
+ missingok
+ size 5M
+ rotate 3
+ compress
+ copytruncate
+}