Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ISO: Add packaging for crun #11679

Merged
merged 7 commits into from
Mar 28, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ KUBERNETES_VERSION ?= $(shell egrep "DefaultKubernetesVersion =" pkg/minikube/co
KIC_VERSION ?= $(shell egrep "Version =" pkg/drivers/kic/types.go | cut -d \" -f2)

# Default to .0 for higher cache hit rates, as build increments typically don't require new ISO versions
ISO_VERSION ?= v1.25.2-1648142972-13800
ISO_VERSION ?= v1.25.2-1648488960-11679
# Dashes are valid in semver, but not Linux packaging. Use ~ to delimit alpha/beta
DEB_VERSION ?= $(subst -,~,$(RAW_VERSION))
DEB_REVISION ?= 0
Expand Down
1 change: 1 addition & 0 deletions deploy/iso/minikube-iso/package/Config.in
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
menu "System tools"
source "$BR2_EXTERNAL_MINIKUBE_PATH/package/runc-master/Config.in"
source "$BR2_EXTERNAL_MINIKUBE_PATH/package/crun/Config.in"
source "$BR2_EXTERNAL_MINIKUBE_PATH/package/podman/Config.in"
source "$BR2_EXTERNAL_MINIKUBE_PATH/package/conmon/Config.in"
source "$BR2_EXTERNAL_MINIKUBE_PATH/package/crio-bin/Config.in"
Expand Down
1 change: 1 addition & 0 deletions deploy/iso/minikube-iso/package/crio-bin/Config.in
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ config BR2_PACKAGE_CRIO_BIN
depends on !BR2_STATIC_LIBS # lvm2
depends on !BR2_TOOLCHAIN_USES_MUSL # lvm2
select BR2_PACKAGE_RUNC_MASTER
select BR2_PACKAGE_CRUN
select BR2_PACKAGE_CONMON
select BR2_PACKAGE_BTRFS_PROGS
select BR2_PACKAGE_LIBSECCOMP
Expand Down
8 changes: 8 additions & 0 deletions deploy/iso/minikube-iso/package/crun/Config.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
config BR2_PACKAGE_CRUN
bool "crun"
select BR2_PACKAGE_YAJL
help
A fast and low-memory footprint OCI Container Runtime
fully written in C.

https://github.com/containers/crun
8 changes: 8 additions & 0 deletions deploy/iso/minikube-iso/package/crun/crun.hash
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# Locally computed
sha256 8065b73ae37ccfb960915fa10051e2bf27850d1c2c69ffeb9eec17c6f198d1c9 crun-0.19.tar.gz
sha256 7b190ff934355e69636e24c12864326a6ebccdbb12af1f14bead217118eb19cb crun-0.19.1.tar.gz
sha256 93423c730ac8deb8dacf805fb15dc5c3ac12e47f8a3eb36dd42166ccfd023d00 crun-0.20.tar.gz
sha256 84a31b25169d92b59a2611fe256a2cc48b05edd9aee8eab4e3dabb60d88f5a23 crun-0.20.1.tar.gz
sha256 e1745172bf603c6832e1a77ee2b7ac9ad4644cd0f4349704df84b66385bbbe61 crun-1.0.tar.gz
sha256 5f2d98a13bdd7ab3c83620abc7dc29cfaf7b8f7487b5b3722453bc9619d3ea0b crun-1.1.tar.gz
sha256 1032a69878c18ddeeb97cd26251c2819afb76e0d4a50c047139829b00d147978 crun-1.2.tar.gz
38 changes: 38 additions & 0 deletions deploy/iso/minikube-iso/package/crun/crun.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
################################################################################
#
# crun
#
################################################################################

CRUN_VERSION = 1.2
CRUN_COMMIT = 4f6c8e0583c679bfee6a899c05ac6b916022561b
# need the pre-generated release tarball with the git submodules and configure
CRUN_SITE = https://github.com/containers/crun/releases/download/$(CRUN_VERSION)
CRUN_LICENSE = GPL-2.0
CRUN_LICENSE_FILES = COPYING

CRUN_DEPENDENCIES += host-python3

CRUN_MAKE_OPTS = crun

ifeq ($(BR2_PACKAGE_LIBCAP),y)
CRUN_DEPENDENCIES += libcap
else
CRUN_CONF_OPTS += --disable-caps
endif

ifeq ($(BR2_PACKAGE_LIBSECCOMP),y)
CRUN_CONF_OPTS += --enable-seccomp
CRUN_DEPENDENCIES += libseccomp host-pkgconf
else
CRUN_CONF_OPTS += --disable-seccomp
endif

ifeq ($(BR2_PACKAGE_SYSTEMD),y)
CRUN_CONF_OPTS += --enable-systemd
CRUN_DEPENDENCIES += systemd host-pkgconf
else
CRUN_CONF_OPTS += --disable-systemd
endif

$(eval $(autotools-package))
1 change: 1 addition & 0 deletions deploy/iso/minikube-iso/package/podman/Config.in
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ config BR2_PACKAGE_PODMAN
depends on BR2_PACKAGE_HOST_GO_TARGET_CGO_LINKING_SUPPORTS
depends on BR2_TOOLCHAIN_HAS_THREADS
select BR2_PACKAGE_RUNC_MASTER
select BR2_PACKAGE_CRUN
select BR2_PACKAGE_CONMON
select BR2_PACKAGE_LIBSECCOMP
select BR2_PACKAGE_LIBGPGME
2 changes: 1 addition & 1 deletion pkg/minikube/download/iso.go
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,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-builds/iso/13800"
isoBucket := "minikube-builds/iso/11679"
return []string{
fmt.Sprintf("https://storage.googleapis.com/%s/minikube-%s.iso", isoBucket, v),
fmt.Sprintf("https://github.com/kubernetes/minikube/releases/download/%s/minikube-%s.iso", v, v),
Expand Down
2 changes: 1 addition & 1 deletion site/content/en/docs/commands/start.md
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ minikube start [flags]
--insecure-registry strings Insecure Docker registries to pass to the Docker daemon. The default service CIDR range will automatically be added.
--install-addons If set, install addons. Defaults to true. (default true)
--interactive Allow user prompts for more information (default true)
--iso-url strings Locations to fetch the minikube ISO from. (default [https://storage.googleapis.com/minikube-builds/iso/13800/minikube-v1.25.2-1648142972-13800.iso,https://github.com/kubernetes/minikube/releases/download/v1.25.2-1648142972-13800/minikube-v1.25.2-1648142972-13800.iso,https://kubernetes.oss-cn-hangzhou.aliyuncs.com/minikube/iso/minikube-v1.25.2-1648142972-13800.iso])
--iso-url strings Locations to fetch the minikube ISO from. (default [https://storage.googleapis.com/minikube-builds/iso/11679/minikube-v1.25.2-1648488960-11679.iso,https://github.com/kubernetes/minikube/releases/download/v1.25.2-1648488960-11679/minikube-v1.25.2-1648488960-11679.iso,https://kubernetes.oss-cn-hangzhou.aliyuncs.com/minikube/iso/minikube-v1.25.2-1648488960-11679.iso])
--keep-context This will keep the existing kubectl context and will create a minikube context.
--kubernetes-version string The Kubernetes version that the minikube VM will use (ex: v1.2.3, 'stable' for v1.23.3, 'latest' for v1.23.4-rc.0). Defaults to 'stable'.
--kvm-gpu Enable experimental NVIDIA GPU support in minikube
Expand Down