OEM: Provide STACKIT images

This commit is contained in:
Robin Schneider 2025-06-05 11:06:23 +02:00 committed by Mathieu Tortuyaux
parent 76e202c992
commit 0733b3adc8
No known key found for this signature in database
GPG Key ID: AC5CCFB52545D9B8
10 changed files with 69 additions and 1 deletions

View File

@ -32,6 +32,7 @@ VALID_IMG_TYPES=(
rackspace_onmetal
rackspace_vhd
scaleway
stackit
vagrant
vagrant_parallels
vagrant_virtualbox
@ -63,6 +64,7 @@ VALID_OEM_PACKAGES=(
rackspace
rackspace-onmetal
scaleway
stackit
vagrant
vagrant-key
vagrant-virtualbox
@ -321,6 +323,13 @@ IMG_scaleway_OEM_USE=scaleway
IMG_scaleway_OEM_SYSEXT=oem-scaleway
IMG_scaleway_DISK_EXTENSION=qcow2
## stackit
IMG_stackit_DISK_FORMAT=qcow2
IMG_stackit_DISK_LAYOUT=vm
IMG_stackit_OEM_PACKAGE=common-oem-files
IMG_stackit_OEM_USE=stackit
IMG_stackit_OEM_SYSEXT=oem-stackit
## kubevirt
IMG_kubevirt_DISK_FORMAT=qcow2
IMG_kubevirt_DISK_LAYOUT=vm

View File

@ -0,0 +1 @@
- Added STACKIT images ([flatcar/scripts#3018](https://github.com/flatcar/scripts/pull/3018))

View File

@ -138,7 +138,7 @@ function _vm_build_impl() {
COMPRESSION_FORMAT="bz2,none"
elif [[ "${format}" =~ ^(hyperv|hyperv_vhdx)$ ]];then
COMPRESSION_FORMAT="zip"
elif [[ "${format}" =~ ^(scaleway|kubevirt|proxmoxve)$ ]];then
elif [[ "${format}" =~ ^(scaleway|kubevirt|proxmoxve|stackit)$ ]];then
COMPRESSION_FORMAT="none"
elif [[ "${format}" =~ ^(akamai)$ ]];then
COMPRESSION_FORMAT="gz"

View File

@ -38,6 +38,7 @@ COMMON_OEMIDS=(
proxmoxve
qemu
scaleway
stackit
kubevirt
)
@ -131,6 +132,11 @@ src_compile() {
oemid_cmdline="ec2"
fi
# STACKIT is running on top of OpenStack, so the `oem_cmdline` has to be `openstack` for Ignition/Afterburn integration but the `oemid` has to stay `stackit` to load the correct `oem-stackit` sysext image.
if [[ "${oemid}" == "stackit" ]]; then
oemid_cmdline="openstack"
fi
lines=(
'# Flatcar GRUB settings'
''

View File

@ -0,0 +1,6 @@
driftfile /var/lib/chrony/drift
makestep 1.0 3
maxupdateskew 100.0
dumpdir /var/lib/chrony
rtcsync
refclock PHC /dev/ptp_kvm poll 3 dpoll -2 offset 0 stratum 2

View File

@ -0,0 +1,6 @@
[Service]
Restart=always
[Unit]
Wants=modprobe@ptp_kvm.service
After=modprobe@ptp_kvm.service

View File

@ -0,0 +1,3 @@
d /etc/chrony 0755 root root - -
d /etc/chrony/conf.d 0755 root root - -
L /etc/chrony/chrony.conf - - - - ../../usr/share/oem-stackit/chrony.conf

View File

@ -0,0 +1 @@
d /var/lib/chrony 0770 ntp ntp - -

View File

@ -0,0 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
</pkgmetadata>

View File

@ -0,0 +1,32 @@
# Copyright (c) 2025 Flatcar Maintainers. All rights reserved.
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit systemd tmpfiles
DESCRIPTION="OEM suite for STACKIT"
HOMEPAGE="https://stackit.cloud"
SRC_URI=""
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 arm64"
IUSE=""
RDEPEND="
net-misc/chrony
"
S="${WORKDIR}"
OEM_NAME="STACKIT"
src_install() {
systemd_install_dropin chronyd.service "${FILESDIR}"/chronyd-overwrite.conf
systemd_enable_service multi-user.target chronyd.service
dotmpfiles "${FILESDIR}"/var-chrony.conf
dotmpfiles "${FILESDIR}"/etc-chrony.conf
insinto /usr/share/"${PN}"
doins "${FILESDIR}"/chrony.conf
}