diff --git a/Makefile b/Makefile index 2bee7a76fe5d..ba72d4cbc695 100644 --- a/Makefile +++ b/Makefile @@ -24,7 +24,7 @@ KIC_VERSION ?= $(shell grep -E "Version =" pkg/drivers/kic/types.go | cut -d \" HUGO_VERSION ?= $(shell grep -E "HUGO_VERSION = \"" netlify.toml | cut -d \" -f2) # Default to .0 for higher cache hit rates, as build increments typically don't require new ISO versions -ISO_VERSION ?= v1.35.0 +ISO_VERSION ?= v1.35.0-1746739450-20720 # Dashes are valid in semver, but not Linux packaging. Use ~ to delimit alpha/beta DEB_VERSION ?= $(subst -,~,$(RAW_VERSION)) @@ -47,9 +47,9 @@ KVM_GO_VERSION ?= $(GO_VERSION:.0=) INSTALL_SIZE ?= $(shell du out/minikube-windows-amd64.exe | cut -f1) -BUILDROOT_BRANCH ?= 2023.02.9 +BUILDROOT_BRANCH ?= 2025.02 # the go version on the line below is for the ISO -GOLANG_OPTIONS = GO_VERSION=1.21.6 GO_HASH_FILE=$(PWD)/deploy/iso/minikube-iso/go.hash +GOLANG_OPTIONS = GO_VERSION=1.23.4 GO_HASH_FILE=$(PWD)/deploy/iso/minikube-iso/go.hash BUILDROOT_OPTIONS = BR2_EXTERNAL=../../deploy/iso/minikube-iso $(GOLANG_OPTIONS) REGISTRY ?= gcr.io/k8s-minikube diff --git a/deploy/iso/minikube-iso/arch/aarch64/package/cri-dockerd-aarch64/cri-dockerd.mk b/deploy/iso/minikube-iso/arch/aarch64/package/cri-dockerd-aarch64/cri-dockerd.mk index 0d2201fbb919..b02e97008fa5 100644 --- a/deploy/iso/minikube-iso/arch/aarch64/package/cri-dockerd-aarch64/cri-dockerd.mk +++ b/deploy/iso/minikube-iso/arch/aarch64/package/cri-dockerd-aarch64/cri-dockerd.mk @@ -18,7 +18,10 @@ CRI_DOCKERD_AARCH64_ENV = \ GO111MODULE=on \ GOPATH="$(CRI_DOCKERD_AARCH64_GOPATH)" \ PATH=$(CRI_DOCKERD_AARCH64_GOPATH)/bin:$(BR_PATH) \ - GOARCH=arm64 + GOARCH=arm64 \ + GOPROXY="https://proxy.golang.org,direct" \ + GOSUMDB='sum.golang.org'\ + GOOS=linux CRI_DOCKERD_AARCH64_COMPILE_SRC = $(CRI_DOCKERD_AARCH64_GOPATH)/src/github.com/Mirantis/cri-dockerd CRI_DOCKERD_AARCH64_BUILDFLAGS = "-ldflags '-X github.com/Mirantis/cri-dockerd/version.Version=$(CRI_DOCKERD_AARCH64_VER) -X github.com/Mirantis/cri-dockerd/version.GitCommit=$(CRI_DOCKERD_AARCH64_REV)'" diff --git a/deploy/iso/minikube-iso/arch/aarch64/package/docker-buildx-aarch64/docker-buildx.mk b/deploy/iso/minikube-iso/arch/aarch64/package/docker-buildx-aarch64/docker-buildx.mk index ef7f0e858944..3dcaa252c205 100644 --- a/deploy/iso/minikube-iso/arch/aarch64/package/docker-buildx-aarch64/docker-buildx.mk +++ b/deploy/iso/minikube-iso/arch/aarch64/package/docker-buildx-aarch64/docker-buildx.mk @@ -16,7 +16,10 @@ DOCKER_BUILDX_AARCH64_ENV = \ GOPATH="$(DOCKER_BUILDX_AARCH64_GOPATH)" \ GOBIN="$(DOCKER_BUILDX_AARCH64_GOPATH)/bin" \ PATH=$(DOCKER_BUILDX_AARCH64_GOPATH)/bin:$(BR_PATH) \ - GOARCH=arm64 + GOARCH=arm64 \ + GOPROXY="https://proxy.golang.org,direct" \ + GOSUMDB='sum.golang.org'\ + GOOS=linux DOCKER_BUILDX_AARCH64_COMPILE_SRC = $(DOCKER_BUILDX_AARCH64_GOPATH)/src/github.com/docker/buildx diff --git a/deploy/iso/minikube-iso/arch/x86_64/package/cri-dockerd/cri-dockerd.mk b/deploy/iso/minikube-iso/arch/x86_64/package/cri-dockerd/cri-dockerd.mk index 49df70d89cc3..29cc4eb5dc47 100644 --- a/deploy/iso/minikube-iso/arch/x86_64/package/cri-dockerd/cri-dockerd.mk +++ b/deploy/iso/minikube-iso/arch/x86_64/package/cri-dockerd/cri-dockerd.mk @@ -18,7 +18,10 @@ CRI_DOCKERD_ENV = \ GO111MODULE=on \ GOPATH="$(CRI_DOCKERD_GOPATH)" \ PATH=$(CRI_DOCKERD_GOPATH)/bin:$(BR_PATH) \ - GOARCH=amd64 + GOARCH=amd64 \ + GOPROXY="https://proxy.golang.org,direct" \ + GOSUMDB='sum.golang.org'\ + GOOS=linux CRI_DOCKERD_COMPILE_SRC = $(CRI_DOCKERD_GOPATH)/src/github.com/Mirantis/cri-dockerd CRI_DOCKERD_BUILDFLAGS = "-ldflags '-X github.com/Mirantis/cri-dockerd/version.Version=$(CRI_DOCKERD_VER) -X github.com/Mirantis/cri-dockerd/version.GitCommit=$(CRI_DOCKERD_REV)'" diff --git a/deploy/iso/minikube-iso/arch/x86_64/package/docker-buildx/docker-buildx.mk b/deploy/iso/minikube-iso/arch/x86_64/package/docker-buildx/docker-buildx.mk index 59b593fb5f50..3fe8e9ac2558 100644 --- a/deploy/iso/minikube-iso/arch/x86_64/package/docker-buildx/docker-buildx.mk +++ b/deploy/iso/minikube-iso/arch/x86_64/package/docker-buildx/docker-buildx.mk @@ -16,7 +16,10 @@ DOCKER_BUILDX_ENV = \ GOPATH="$(DOCKER_BUILDX_GOPATH)" \ GOBIN="$(DOCKER_BUILDX_GOPATH)/bin" \ PATH=$(DOCKER_BUILDX_GOPATH)/bin:$(BR_PATH) \ - GOARCH=amd64 + GOARCH=amd64 \ + GOPROXY="https://proxy.golang.org,direct" \ + GOSUMDB='sum.golang.org'\ + GOOS=linux DOCKER_BUILDX_COMPILE_SRC = $(DOCKER_BUILDX_GOPATH)/src/github.com/docker/buildx diff --git a/deploy/iso/minikube-iso/go.hash b/deploy/iso/minikube-iso/go.hash index d972037fe02c..10d429ba0880 100644 --- a/deploy/iso/minikube-iso/go.hash +++ b/deploy/iso/minikube-iso/go.hash @@ -35,3 +35,4 @@ sha256 36930162a93df417d90bd22c6e14daff4705baac2b02418edda671cdfa9cd07f go1.23 sha256 8d6a77332487557c6afa2421131b50f83db4ae3c579c3bc72e670ee1f6968599 go1.23.3.src.tar.gz sha256 ad345ac421e90814293a9699cca19dd5238251c3f687980bbcae28495b263531 go1.23.4.src.tar.gz sha256 d14120614acb29d12bcab72bd689f257eb4be9e0b6f88a8fb7e41ac65f8556e5 go1.24.0.src.tar.gz +sha256 6924efde5de86fe277676e929dc9917d466efa02fb934197bc2eba35d5680971 go1.23.4.linux-amd64.tar.gz \ No newline at end of file diff --git a/deploy/iso/minikube-iso/package/Config.in b/deploy/iso/minikube-iso/package/Config.in index a7513f186bd8..82765a2c0b2c 100644 --- a/deploy/iso/minikube-iso/package/Config.in +++ b/deploy/iso/minikube-iso/package/Config.in @@ -1,12 +1,10 @@ menu "System tools" - source "$BR2_EXTERNAL_MINIKUBE_PATH/package/conmon/Config.in" source "$BR2_EXTERNAL_MINIKUBE_PATH/package/crio-bin/Config.in" source "$BR2_EXTERNAL_MINIKUBE_PATH/package/sysdig/Config.in" source "$BR2_EXTERNAL_MINIKUBE_PATH/package/crun-latest/Config.in" source "$BR2_EXTERNAL_MINIKUBE_PATH/package/cni/Config.in" source "$BR2_EXTERNAL_MINIKUBE_PATH/package/automount/Config.in" source "$BR2_EXTERNAL_MINIKUBE_PATH/package/gluster/Config.in" - source "$BR2_EXTERNAL_MINIKUBE_PATH/package/falco-module/Config.in" source "$BR2_EXTERNAL_MINIKUBE_PATH/package/scheduled-stop/Config.in" source "$BR2_EXTERNAL_MINIKUBE_PATH/package/podman/Config.in" source "$BR2_EXTERNAL_MINIKUBE_PATH/package/runc-master/Config.in" diff --git a/deploy/iso/minikube-iso/package/conmon/Config.in b/deploy/iso/minikube-iso/package/conmon/Config.in deleted file mode 100644 index 6d4df09cf9ca..000000000000 --- a/deploy/iso/minikube-iso/package/conmon/Config.in +++ /dev/null @@ -1,7 +0,0 @@ -config BR2_PACKAGE_CONMON - bool "conmon" - depends on BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS - depends on BR2_PACKAGE_HOST_GO_TARGET_CGO_LINKING_SUPPORTS - depends on BR2_TOOLCHAIN_HAS_THREADS - select BR2_PACKAGE_LIBGLIB2 - select BR2_PACKAGE_SYSTEMD diff --git a/deploy/iso/minikube-iso/package/conmon/conmon.hash b/deploy/iso/minikube-iso/package/conmon/conmon.hash deleted file mode 100644 index ae93257e04fc..000000000000 --- a/deploy/iso/minikube-iso/package/conmon/conmon.hash +++ /dev/null @@ -1,12 +0,0 @@ -# Locally computed -sha256 4f978a59c6ee516f7e3febfb3b0360a17d1be2c283313e1aeb27adcb8c8f9166 dde3ccf93f01ce5a3e0f7a2c97053697cc3ed152.tar.gz -sha256 75fad6e66b43c5039719edbd82ba072723aea6a9d4d8be4e7ac1c245a291ab1b 8455ce1ef385120deb827d0f0588c04357bad4c4.tar.gz -sha256 32db4ea508a9ff0266b8695ae32604869994371a5a09436438c366a09ddcc1df v0.3.0.tar.gz -sha256 6c9bf278ae6e125a39f1ae419e5bd314162a743f6587d70b1b6be095ac32b9af eb5fa88c26fde5ce1e3f8a1d2a8a9498b2d7dbe6.tar.gz -sha256 50cc36636c32a343f4c9f5ab6b9f7f5edd5d6ef7c9c403793f799f6605597718 v2.0.3.tar.gz -sha256 93f7c127cb536fc60f4c08291fd34e99e492fdc6a36e6b0ddad97d868ecf10f7 29c336700f2999acf9db07662b4a61355076e64a.tar.gz -sha256 d82ad6c1e315f8310ed75fe6905f81dce61b61d55a156e9e04c9855e78e1e165 v2.0.6.tar.gz -sha256 abe4e1cc02505c81857c1eeced008a24b4dd41659d42a1e3395754fb063aef36 v2.0.7.tar.gz -sha256 a116b8422c65778bd677c29f55b3ceaae07d09da336f71bdc68fc7bb83d50e03 v2.0.17.tar.gz -sha256 e00bc44a8bd783fd417a5c90d3b8c15035ddc69b18350a31258e7f79aec8c697 v2.0.24.tar.gz -sha256 8ba76eb54c319197235fd39c3a5b5a975b5a21e02cd4be985b8619220a497a0e v2.1.2.tar.gz diff --git a/deploy/iso/minikube-iso/package/conmon/conmon.mk b/deploy/iso/minikube-iso/package/conmon/conmon.mk deleted file mode 100644 index 0d567aaf24cf..000000000000 --- a/deploy/iso/minikube-iso/package/conmon/conmon.mk +++ /dev/null @@ -1,25 +0,0 @@ -################################################################################ -# -# conmon -# -################################################################################ - -CONMON_VERSION = v2.1.2 -CONMON_COMMIT = 2bc95ee697e87d5f7b77063cf83fc32739addafe -CONMON_SITE = https://github.com/containers/conmon/archive -CONMON_SOURCE = $(CONMON_VERSION).tar.gz -CONMON_LICENSE = Apache-2.0 -CONMON_LICENSE_FILES = LICENSE - -CONMON_DEPENDENCIES = host-pkgconf - -define CONMON_BUILD_CMDS - $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) GIT_COMMIT=$(CONMON_COMMIT) PREFIX=/usr -endef - -define CONMON_INSTALL_TARGET_CMDS - $(INSTALL) -Dm755 $(@D)/bin/conmon $(TARGET_DIR)/usr/libexec/crio/conmon - $(INSTALL) -Dm755 $(@D)/bin/conmon $(TARGET_DIR)/usr/libexec/podman/conmon -endef - -$(eval $(generic-package)) diff --git a/deploy/iso/minikube-iso/package/crio-bin/crio.conf b/deploy/iso/minikube-iso/package/crio-bin/crio.conf index 110d38473f3e..40b2aa6de022 100644 --- a/deploy/iso/minikube-iso/package/crio-bin/crio.conf +++ b/deploy/iso/minikube-iso/package/crio-bin/crio.conf @@ -102,7 +102,7 @@ decryption_keys_path = "/etc/crio/keys/" # Path to the conmon binary, used for monitoring the OCI runtime. # Will be searched for using $PATH if empty. -conmon = "/usr/libexec/crio/conmon" +conmon = "/usr/bin/conmon" # Cgroup setting for conmon conmon_cgroup = "system.slice" diff --git a/deploy/iso/minikube-iso/package/falco-module/Config.in b/deploy/iso/minikube-iso/package/falco-module/Config.in deleted file mode 100644 index ad271f426aec..000000000000 --- a/deploy/iso/minikube-iso/package/falco-module/Config.in +++ /dev/null @@ -1,6 +0,0 @@ -config BR2_PACKAGE_FALCO_MODULE - bool "falco-module" - default y - depends on BR2_LINUX_KERNEL - select BR2_PACKAGE_NCURSES - select BR2_PACKAGE_LIBYAML diff --git a/deploy/iso/minikube-iso/package/falco-module/falco-module.hash b/deploy/iso/minikube-iso/package/falco-module/falco-module.hash deleted file mode 100644 index 8f19663e333c..000000000000 --- a/deploy/iso/minikube-iso/package/falco-module/falco-module.hash +++ /dev/null @@ -1,24 +0,0 @@ -# falco -sha256 87c60273c35d544256e471b403497be33f24df662673338236ec92ba3fc1f8b7 0.19.0.tar.gz -sha256 b873e3590e56ead740ed905108221f98da6100da3c5b7acf2355ea1cf628d931 0.20.0.tar.gz -sha256 b1c9884855d58be94a97b2e348bcdc7db995800f0405b0f4e9a7176ee2f094a7 0.21.0.tar.gz -sha256 11890b1401c197c28ee0a70a364004f58f5ec5526365e9a283699a75e5662773 0.22.0.tar.gz -sha256 ed991ffbece8f543f5dc6aa5a660ab1ed4bae771b6aa4930663a3902cc160ea3 0.23.0.tar.gz -sha256 5703d724e0b2ce3b98208549ca9d1abdc9a0298a9abfd748b34863c0c4015dcf 0.24.0.tar.gz -sha256 1fa9c05e461817aa2542efa3b5e28e51a6caf02935dfc9d47271af79d5414947 0.28.0.tar.gz -sha256 9d90a86752a700dad2d1ea888b2cd33cdc808621faa2b6300bb0463d404744fb 0.30.0.tar.gz -sha256 0c7d88bfa2ec8e17e6e27158fabfb1d05982ede3138138b44a0f3ac6ffba5545 0.31.0.tar.gz -sha256 207b875c5b24717ecc9a5c288ff8df703d5d2a9ad00533f798d530e758f8ae42 0.31.1.tar.gz -sha256 d31f6aa19e4312e04fa7d13e6b1d7b3945582a7f3f1a3d27ae7b90a13df2e790 0.32.0.tar.gz - -# sysdig -sha256 6e477ac5fe9d3110b870bd4495f01541373a008c375a1934a2d1c46798b6bad6 146a431edf95829ac11bfd9c85ba3ef08789bffe.tar.gz -sha256 1c69363e4c36cdaeed413c2ef557af53bfc4bf1109fbcb6d6e18dc40fe6ddec8 be1ea2d9482d0e6e2cb14a0fd7e08cbecf517f94.tar.gz -sha256 766e8952a36a4198fd976b9d848523e6abe4336612188e4fc911e217d8e8a00d 96bd9bc560f67742738eb7255aeb4d03046b8045.tar.gz -sha256 6c3f5f2d699c9540e281f50cbc5cb6b580f0fc689798bc65d4a77f57f932a71c 85c88952b018fdbce2464222c3303229f5bfcfad.tar.gz -sha256 9de717b3a4b611ea6df56afee05171860167112f74bb7717b394bcc88ac843cd 5c0b863ddade7a45568c0ac97d037422c9efb750.tar.gz - -# falcosecurity/libs -sha256 2cf44f06a282e8cee7aa1f775a08ea94c06e275faaf0636b21eb06af28cf4b3f 319368f1ad778691164d33d59945e00c5752cd27.tar.gz -sha256 0f6dcdc3b94243c91294698ee343806539af81c5b33c60c6acf83fc1aa455e85 b7eb0dd65226a8dc254d228c8d950d07bf3521d2.tar.gz -sha256 b9034baeff4518b044574956f5768fac080c269bacad4a1e17a7f6fdb872ce66 39ae7d40496793cf3d3e7890c9bbdc202263836b.tar.gz diff --git a/deploy/iso/minikube-iso/package/falco-module/falco-module.mk b/deploy/iso/minikube-iso/package/falco-module/falco-module.mk deleted file mode 100644 index 6328d2d0605d..000000000000 --- a/deploy/iso/minikube-iso/package/falco-module/falco-module.mk +++ /dev/null @@ -1,34 +0,0 @@ -######################################################################## -# -# Falco driver kernel module -# -######################################################################## - -FALCO_MODULE_VERSION = 0.32.0 -FALCO_MODULE_SITE = https://github.com/falcosecurity/falco/archive -FALCO_MODULE_SOURCE = $(FALCO_MODULE_VERSION).tar.gz -FALCO_MODULE_DEPENDENCIES += libyaml -FALCO_MODULE_LICENSE = Apache-2.0 -FALCO_MODULE_LICENSE_FILES = COPYING - -# see cmake/modules/falcosecurity-libs.cmake -FALCO_MODULE_FALCOSECURITY_LIBS_VERSION = 39ae7d40496793cf3d3e7890c9bbdc202263836b -FALCO_MODULE_EXTRA_DOWNLOADS = https://github.com/falcosecurity/libs/archive/$(FALCO_MODULE_FALCOSECURITY_LIBS_VERSION).tar.gz - -define FALCO_MODULE_FALCOSECURITY_LIBS_SRC - sed -e 's|URL ".*"|URL "'$(FALCO_MODULE_DL_DIR)/$(FALCO_MODULE_FALCOSECURITY_LIBS_VERSION).tar.gz'"|' -i $(@D)/cmake/modules/falcosecurity-libs-repo/CMakeLists.txt -endef - -FALCO_MODULE_POST_EXTRACT_HOOKS += FALCO_MODULE_FALCOSECURITY_LIBS_SRC - -FALCO_MODULE_CONF_OPTS = -DFALCO_VERSION=$(FALCO_MODULE_VERSION) -FALCO_MODULE_CONF_OPTS += -DUSE_BUNDLED_DEPS=ON - -FALCO_MODULE_MAKE_ENV = $(LINUX_MAKE_ENV) -FALCO_MODULE_MAKE_OPTS = $(LINUX_MAKE_FLAGS) driver KERNELDIR=$(LINUX_DIR) -FALCO_MODULE_INSTALL_OPTS = install_driver -FALCO_MODULE_INSTALL_STAGING_OPTS = INSTALL_MOD_PATH=$(STAGING_DIR) install_driver -FALCO_MODULE_INSTALL_TARGET_OPTS = INSTALL_MOD_PATH=$(TARGET_DIR) install_driver - -$(eval $(kernel-module)) -$(eval $(cmake-package)) diff --git a/deploy/iso/minikube-iso/package/podman/podman.mk b/deploy/iso/minikube-iso/package/podman/podman.mk index 6ea6be8a8f1a..309991695d5b 100644 --- a/deploy/iso/minikube-iso/package/podman/podman.mk +++ b/deploy/iso/minikube-iso/package/podman/podman.mk @@ -25,7 +25,10 @@ PODMAN_BIN_ENV = \ CGO_ENABLED=1 \ GOPATH="$(PODMAN_GOPATH)" \ PATH=$(PODMAN_GOPATH)/bin:$(BR_PATH) \ - GOARCH=$(PODMAN_GOARCH) + GOARCH=$(PODMAN_GOARCH) \ + GOPROXY="https://proxy.golang.org,direct" \ + GOSUMDB='sum.golang.org'\ + GOOS=linux define PODMAN_USERS - -1 podman -1 - - - - - diff --git a/pkg/minikube/cruntime/cruntime_test.go b/pkg/minikube/cruntime/cruntime_test.go index 7d8f219938c3..4d056fdc336d 100644 --- a/pkg/minikube/cruntime/cruntime_test.go +++ b/pkg/minikube/cruntime/cruntime_test.go @@ -572,7 +572,9 @@ func (f *FakeRunner) systemctl(args []string, root bool) (string, error) { // no case "disable": case "mask": case "unmask": + case "reset-failed": f.t.Logf("fake systemctl: %s %s: %v", svc, action, state) + default: return out, fmt.Errorf("unimplemented fake action: %q", action) } diff --git a/pkg/minikube/cruntime/docker.go b/pkg/minikube/cruntime/docker.go index a8a57afdf6c1..b54e8175dfaa 100644 --- a/pkg/minikube/cruntime/docker.go +++ b/pkg/minikube/cruntime/docker.go @@ -41,6 +41,7 @@ import ( "k8s.io/minikube/pkg/minikube/image" "k8s.io/minikube/pkg/minikube/style" "k8s.io/minikube/pkg/minikube/sysinit" + "k8s.io/minikube/pkg/util/retry" ) // KubernetesContainerPrefix is the prefix of each Kubernetes container @@ -167,6 +168,7 @@ func (r *Docker) Enable(disOthers bool, cgroupDriver string, inUserNamespace boo return err } + _ = r.Init.ResetFailed("docker") if err := r.Init.Restart("docker"); err != nil { return err } @@ -197,10 +199,20 @@ func (r *Docker) Enable(disOthers bool, cgroupDriver string, inUserNamespace boo return err } - // try to restart service if stopped, intentionally continue on any error - if !r.Init.Active(service) { - _ = r.Init.Restart(service) - } + _ = r.Init.ResetFailed(service) + _ = r.Init.Restart(service) + // try to restart service if stopped, restart until it works + retry.Expo( + func() error { + if !r.Init.Active(service) { + r.Init.ResetFailed(service) + r.Init.Restart(service) + return fmt.Errorf("cri-docker not running") + } + return nil + }, + 1*time.Second, time.Minute, 5, + ) } return nil @@ -208,6 +220,7 @@ func (r *Docker) Enable(disOthers bool, cgroupDriver string, inUserNamespace boo // Restart restarts Docker on a host func (r *Docker) Restart() error { + _ = r.Init.ResetFailed("docker") return r.Init.Restart("docker") } diff --git a/pkg/minikube/download/iso.go b/pkg/minikube/download/iso.go index 2e86d3865c59..93d214a4247f 100644 --- a/pkg/minikube/download/iso.go +++ b/pkg/minikube/download/iso.go @@ -41,7 +41,7 @@ const fileScheme = "file" // DefaultISOURLs returns a list of ISO URL's to consult by default, in priority order func DefaultISOURLs() []string { v := version.GetISOVersion() - isoBucket := "minikube/iso" + isoBucket := "minikube-builds/iso/20720" return []string{ fmt.Sprintf("https://storage.googleapis.com/%s/minikube-%s-%s.iso", isoBucket, v, runtime.GOARCH), diff --git a/pkg/minikube/sysinit/openrc.go b/pkg/minikube/sysinit/openrc.go index 47f8b620733b..ed454c8ada04 100644 --- a/pkg/minikube/sysinit/openrc.go +++ b/pkg/minikube/sysinit/openrc.go @@ -120,6 +120,10 @@ func (s *OpenRC) Disable(_ string) error { return nil } +func (s *OpenRC) ResetFailed(_ string) error { + return nil +} + // DisableNow does Disable + Stop func (s *OpenRC) DisableNow(svc string) error { // supposed to do disable + stop diff --git a/pkg/minikube/sysinit/sysinit.go b/pkg/minikube/sysinit/sysinit.go index eafa753ef1e1..63c2cf1cba31 100644 --- a/pkg/minikube/sysinit/sysinit.go +++ b/pkg/minikube/sysinit/sysinit.go @@ -65,6 +65,9 @@ type Manager interface { // Reload restarts a service Reload(string) error + // ResetFailed reset the fail counter of a service + ResetFailed(string) error + // Stop stops a service Stop(string) error diff --git a/pkg/minikube/sysinit/systemd.go b/pkg/minikube/sysinit/systemd.go index af7728840d2d..7dd403b1a0c3 100644 --- a/pkg/minikube/sysinit/systemd.go +++ b/pkg/minikube/sysinit/systemd.go @@ -110,10 +110,19 @@ func (s *Systemd) Restart(svc string) error { if err := s.daemonReload(); err != nil { return err } + _, err := s.r.RunCmd(exec.Command("sudo", "systemctl", "restart", svc)) return s.appendJournalctlLogsOnFailure(svc, err) } +// run systemctl reset-failed for a service +// some services declare a realitive small restart-limit in their .service configuration +// so we reset reset-failed counter to override the limit +func (s *Systemd) ResetFailed(svc string) error { + _, err := s.r.RunCmd(exec.Command("sudo", "systemctl", "reset-failed", svc)) + return s.appendJournalctlLogsOnFailure(svc, err) +} + // Reload reloads a service func (s *Systemd) Reload(svc string) error { if err := s.daemonReload(); err != nil {