feat: KubeZero v1.28
This commit is contained in:
parent
e534b31c74
commit
3b2c8c6f10
9
Makefile
9
Makefile
|
@ -1,7 +1,7 @@
|
|||
OVERLAY := $(shell pwd)/overlay
|
||||
ONLY :=
|
||||
SKIP :=
|
||||
FILTER := --only 3.18 $(ONLY) --skip aarch64 $(SKIP)
|
||||
FILTER := --only $(ONLY) --skip aarch64 $(SKIP)
|
||||
STEP := publish
|
||||
|
||||
all: build
|
||||
|
@ -35,12 +35,7 @@ age-seal:
|
|||
|
||||
# Just a reference how it could work, requires root though
|
||||
scan-image:
|
||||
doas modprobe nbd
|
||||
doas qemu-nbd -c /dev/nbd0 --read-only alpine-cloud-images/work/images/aws/*/image.qcow2
|
||||
doas mount /dev/nbd0p2 /mnt/temp/
|
||||
doas trivy rootfs /mnt/temp
|
||||
doas umount /mnt/temp
|
||||
doas qemu-nbd -d /dev/nbd0
|
||||
doas ./scan_image.sh alpine-cloud-images/work/images/aws/*/image.qcow2
|
||||
|
||||
pull-upstream: ## pull latest shared alpine-cloud-images
|
||||
git stash && git subtree pull --prefix alpine-cloud-images git@gitlab.alpinelinux.org:alpine/cloud/alpine-cloud-images.git main --squash && git stash pop
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
# set -x
|
||||
|
||||
TAG_FILTER="Name=tag:Name,Values=zdt-alpine-3.18*dev*" #-dev" #kubezero*"
|
||||
#TAG_FILTER="Name=tag:Name,Values=zdt-alpine-*kubezero*1.26*"
|
||||
#TAG_FILTER="Name=tag:Name,Values=zdt-alpine-*kubezero*1.28*"
|
||||
|
||||
echo "Are you really sure to delete AMIs matching \"$TAG_FILTER\" ?"
|
||||
read
|
||||
|
|
|
@ -25,6 +25,13 @@ WHEN {
|
|||
}
|
||||
}
|
||||
|
||||
nocloud {
|
||||
packages {
|
||||
zdt-base-nocloud = kubezero
|
||||
tiny-cloud-nocloud = true
|
||||
}
|
||||
}
|
||||
|
||||
# Disable KVM during cross build
|
||||
aarch64 {
|
||||
qemu.args = [
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
curl = true
|
||||
kubezero = "kubezero=~1.27"
|
||||
kubezero-imagecache = "kubezero=~1.27"
|
||||
kubezero = kubezero
|
||||
kubezero-imagecache = kubezero
|
||||
|
|
|
@ -1,19 +1,23 @@
|
|||
# vim: ts=2 et:
|
||||
|
||||
kubezero-version = "1.28.8"
|
||||
|
||||
include required("common.conf")
|
||||
|
||||
description = [ "- https://kubezero.com" ]
|
||||
name = [ "kubezero-{kubezero-version}" ]
|
||||
disk_size = [1024]
|
||||
|
||||
packages { include required("kubezero-packages.conf") }
|
||||
services { include required("kubezero-services.conf") }
|
||||
|
||||
description = [ "- https://kubezero.com" ]
|
||||
name = [ kubezero-1.27.8 ]
|
||||
disk_size = [1024]
|
||||
|
||||
# Cloud specifics
|
||||
WHEN {
|
||||
aws {
|
||||
packages {
|
||||
aws-neuron-driver = kubezero
|
||||
#aws-neuron-driver = kubezero
|
||||
nvidia-open-gpu = kubezero
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -4,3 +4,10 @@ machine_name = "Virtual"
|
|||
packages {
|
||||
falco-kernel-virt = kubezero
|
||||
}
|
||||
|
||||
services {
|
||||
boot {
|
||||
# Fails on cloudhypervisor anyways
|
||||
hwclock = null
|
||||
}
|
||||
}
|
||||
|
|
|
@ -32,15 +32,17 @@ Default {
|
|||
|
||||
# profile build matrix
|
||||
# atm we only support:
|
||||
# - tiny-cloud
|
||||
# - tiny-cloud
|
||||
# - uefi boot
|
||||
# - latest stable Alpine 3.18
|
||||
# - Alpine 3.19
|
||||
# - aws + nocloud
|
||||
# - x86_64 + aarch64
|
||||
|
||||
Dimensions {
|
||||
version {
|
||||
"3.18" { include required("version/3.18.conf")
|
||||
"3.19" { include required("version/3.19.conf")
|
||||
repos {
|
||||
"https://cdn.zero-downtime.net/alpine/v3.18/kubezero" = kubezero
|
||||
"https://cdn.zero-downtime.net/alpine/v3.19/kubezero" = kubezero
|
||||
}
|
||||
}
|
||||
# edge { include required("version/edge.conf") }
|
||||
|
@ -64,12 +66,12 @@ Dimensions {
|
|||
aws { include required("cloud/aws.conf") }
|
||||
aws.regions {
|
||||
ALL = false
|
||||
#ap-southeast-2 = true
|
||||
#ca-central-1 = true
|
||||
ap-southeast-2 = true
|
||||
ca-central-1 = true
|
||||
eu-central-1 = true
|
||||
#us-east-1 = true
|
||||
#us-west-1 = true
|
||||
#us-west-2 = true
|
||||
us-east-1 = true
|
||||
us-west-1 = true
|
||||
us-west-2 = true
|
||||
}
|
||||
nocloud { include required("cloud/nocloud.conf") }
|
||||
}
|
||||
|
@ -88,11 +90,14 @@ Dimensions {
|
|||
|
||||
# all build configs merge these at the very end
|
||||
Mandatory {
|
||||
name = [ "dev", "r{revision}" ]
|
||||
# name = [ "dev", "r{revision}" ]
|
||||
name = [ "r{revision}" ]
|
||||
encrypted = "alias/zdt/amis"
|
||||
|
||||
# We use neofetch custom branding
|
||||
motd = {}
|
||||
motd = {
|
||||
sudo_removed = null
|
||||
}
|
||||
|
||||
# final provisioning script
|
||||
scripts = [ cleanup ]
|
||||
|
|
|
@ -0,0 +1,11 @@
|
|||
#!/bin/sh
|
||||
set -x
|
||||
|
||||
IMAGE=$1
|
||||
|
||||
modprobe nbd
|
||||
qemu-nbd -c /dev/nbd0 --read-only $IMAGE
|
||||
mount /dev/nbd0p2 /mnt/temp/
|
||||
trivy rootfs /mnt/temp
|
||||
umount /mnt/temp
|
||||
qemu-nbd -d /dev/nbd0
|
Loading…
Reference in New Issue