Files
cozystack/packages/apps/kubernetes/Makefile
39cdc88661 feat(kubernetes): bootstrap tenant workers with Talos via CABPT
Switch tenant worker bootstrap from Ubuntu+kubeadm to Talos. MachineDeployment.bootstrap moves from KubeadmConfigTemplate to a TalosConfigTemplate produced by a post-install/upgrade reconcile hook, which also materialises the kubeadm-format bootstrap-token Secret in the tenant kube-system. Workers boot from the Talos openstack image via a CDI DataVolume; the system disk is virtio-blk with logical=512/physical=4096 so 4Ki-native backends (LINSTOR/DRBD) and SeaBIOS both work; the separate kubelet disk is dropped. Pod/service CIDRs, dnsDomain, controlPlane endpoint and cilium k8sServiceHost are pinned to the tenant ranges / Kamaji apiserver ClusterIP to survive the DNS chicken-and-egg at bootstrap. Adds a Talos<->Kubernetes support-matrix fail() guard and drops v1.30. Removes the dead ubuntu-container-disk build chain and the orphaned copy-patch-containerd template.

Co-authored-by: IvanHunters <xorokhotnikov@gmail.com>
Co-authored-by: Myasnikov Daniil <myasnikovdaniil2001@gmail.com>
Assisted-By: Claude <noreply@anthropic.com>
Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
Signed-off-by: Myasnikov Daniil <myasnikovdaniil2001@gmail.com>
2026-06-23 14:31:16 +05:00

65 lines
2.5 KiB
Makefile

KUBERNETES_VERSIONS = $(shell awk -F'"' '{print $$2}' files/versions.yaml)
KUBERNETES_PKG_TAG = $(shell awk '$$1 == "version:" {print $$2}' Chart.yaml)
include ../../../hack/common-envs.mk
include ../../../hack/package.mk
.PHONY: test generate update
test:
helm unittest .
generate:
cozyvalues-gen -m 'kubernetes' -v values.yaml -s values.schema.json -r README.md -g ../../../api/apps/v1alpha1/kubernetes/types.go
../../../hack/update-crd.sh
update:
hack/update-versions.sh
make generate
image: image-kubevirt-cloud-provider image-kubevirt-csi-driver image-cluster-autoscaler image-talos-csr-signer
image-talos-csr-signer:
docker buildx build images/talos-csr-signer \
$(call image-tags,talos-csr-signer,$(KUBERNETES_PKG_TAG)) \
$(call cache-args,talos-csr-signer) \
--metadata-file images/talos-csr-signer.json \
$(BUILDX_ARGS)
echo "$(REGISTRY)/talos-csr-signer:$(IMAGE_TAG)@$$(yq e '."containerimage.digest"' images/talos-csr-signer.json -o json -r)" \
> images/talos-csr-signer.tag
rm -f images/talos-csr-signer.json
image-kubevirt-cloud-provider:
docker buildx build images/kubevirt-cloud-provider \
$(call image-tags,kubevirt-cloud-provider,$(KUBERNETES_PKG_TAG)) \
$(call cache-args,kubevirt-cloud-provider) \
--metadata-file images/kubevirt-cloud-provider.json \
$(BUILDX_ARGS)
echo "$(REGISTRY)/kubevirt-cloud-provider:$(IMAGE_TAG)@$$(yq e '."containerimage.digest"' images/kubevirt-cloud-provider.json -o json -r)" \
> images/kubevirt-cloud-provider.tag
rm -f images/kubevirt-cloud-provider.json
image-kubevirt-csi-driver:
docker buildx build images/kubevirt-csi-driver \
$(call image-tags,kubevirt-csi-driver,$(KUBERNETES_PKG_TAG)) \
$(call cache-args,kubevirt-csi-driver) \
--metadata-file images/kubevirt-csi-driver.json \
$(BUILDX_ARGS)
echo "$(REGISTRY)/kubevirt-csi-driver:$(IMAGE_TAG)@$$(yq e '."containerimage.digest"' images/kubevirt-csi-driver.json -o json -r)" \
> images/kubevirt-csi-driver.tag
IMAGE=$$(cat images/kubevirt-csi-driver.tag) \
yq -i '.csiDriver.image = strenv(IMAGE)' ../../system/kubevirt-csi-node/values.yaml
rm -f images/kubevirt-csi-driver.json
image-cluster-autoscaler:
docker buildx build images/cluster-autoscaler \
$(call image-tags,cluster-autoscaler,$(KUBERNETES_PKG_TAG)) \
$(call cache-args,cluster-autoscaler) \
--metadata-file images/cluster-autoscaler.json \
$(BUILDX_ARGS)
echo "$(REGISTRY)/cluster-autoscaler:$(IMAGE_TAG)@$$(yq e '."containerimage.digest"' images/cluster-autoscaler.json -o json -r)" \
> images/cluster-autoscaler.tag
rm -f images/cluster-autoscaler.json