From 7be8247d9238dd02f1925a483c7dac98f1288c32 Mon Sep 17 00:00:00 2001 From: spmfox Date: Fri, 14 Jun 2024 18:06:41 -0400 Subject: initial support for fedora --- templates/bootcblade-rebuild.service.j2 | 4 ++-- templates/bootcblade-rebuild.timer.j2 | 3 +-- templates/bootcblade.containerfile.j2 | 16 +++++++++++----- 3 files changed, 14 insertions(+), 9 deletions(-) (limited to 'templates') diff --git a/templates/bootcblade-rebuild.service.j2 b/templates/bootcblade-rebuild.service.j2 index 1cf4547..25001bf 100644 --- a/templates/bootcblade-rebuild.service.j2 +++ b/templates/bootcblade-rebuild.service.j2 @@ -4,5 +4,5 @@ Description=BootcBlade rebuild service [Service] Type=oneshot TimeoutStartSec=30m -ExecStart=/usr/bin/bash -c "podman build -t localhost/bootcblade -f /root/bootcblade.containerfile --pull=always" -ExecStartPost=/usr/bin/bash -c "/usr/bin/sleep 10 ; /usr/bin/bootc update && /usr/bin/podman image prune -f" +ExecStart=/usr/bin/bash -c "podman build -t localhost/bootcblade -f /root/bootcblade.containerfile --pull=always && sleep 10 && podman image prune -f" +ExecStartPost=/usr/bin/bootc update diff --git a/templates/bootcblade-rebuild.timer.j2 b/templates/bootcblade-rebuild.timer.j2 index 8dc2159..ba644ee 100644 --- a/templates/bootcblade-rebuild.timer.j2 +++ b/templates/bootcblade-rebuild.timer.j2 @@ -2,8 +2,7 @@ Description=bootcblade-rebuild timer [Timer] -OnCalendar=weekly -Persistent=true +OnCalendar=daily [Install] WantedBy=timers.target diff --git a/templates/bootcblade.containerfile.j2 b/templates/bootcblade.containerfile.j2 index d8c56a4..c63b76a 100644 --- a/templates/bootcblade.containerfile.j2 +++ b/templates/bootcblade.containerfile.j2 @@ -1,11 +1,11 @@ -FROM quay.io/centos-bootc/centos-bootc:{{ centos_bootc_tag if centos_bootc_tag is defined else 'stream9' }} +FROM quay.io/fedora/fedora-bootc:{{ bootc_image_tag if bootc_image_tag is defined else 'latest' }} # Create root homedir RUN mkdir /var/roothome # ZFS -RUN dnf -y install epel-release git && \ - dnf -y install https://zfsonlinux.org/epel/zfs-release-2-3$(rpm --eval "%{dist}").noarch.rpm && \ +RUN dnf -y install git && \ + dnf -y install https://zfsonlinux.org/fedora/zfs-release-2-5$(rpm --eval "%{dist}").noarch.rpm && \ dnf -y install kernel-devel-$(ls /usr/lib/modules) && \ dnf -y install zfs && \ dkms build zfs/$(rpm -q --qf '%{VERSION}' zfs) -k $(ls /usr/lib/modules) && \ @@ -14,13 +14,18 @@ RUN dnf -y install epel-release git && \ # KVM & Cockpit RUN echo "qemu:x:107:107:qemu user:/:/sbin/nologin" >> /etc/passwd && \ dnf -y install qemu-kvm libvirt virt-install virt-viewer && \ - dnf -y install cockpit cockpit-bridge cockpit-file-sharing cockpit-machines cockpit-pcp cockpit-podman cockpit-storaged cockpit-system + dnf -y install cockpit cockpit-bridge cockpit-machines cockpit-pcp cockpit-podman cockpit-storaged cockpit-system cockpit-navigator cockpit-selinux && \ + systemctl enable cockpit.socket # Cockpit ZFS Manager RUN git clone https://github.com/45drives/cockpit-zfs-manager.git /root/cockpit-zfs-manager && \ cp -r /root/cockpit-zfs-manager/zfs /usr/share/cockpit && \ rm -r /root/cockpit-zfs-manager +# Cockpit file sharing, and Samba users +RUN dnf -y install https://github.com/45Drives/cockpit-identities/releases/download/v0.1.12/cockpit-identities-0.1.12-1.el8.noarch.rpm \ + https://github.com/45Drives/cockpit-file-sharing/releases/download/v3.3.7/cockpit-file-sharing-3.3.7-1.el8.noarch.rpm + # Sanoid & Syncoid RUN git clone https://github.com/jimsalterjrs/sanoid.git /root/sanoid && \ cd /root/sanoid && git checkout $(git tag | grep "^v" | tail -n 1) && cp sanoid syncoid findoid sleepymutex /usr/local/sbin && \ @@ -31,7 +36,8 @@ RUN dnf -y install perl-Data-Dumper perl-Getopt-Long lzop mbuffer mhash pv && \ # Firewall RUN dnf -y install firewalld && \ - systemctl enable firewalld + systemctl enable firewalld && \ + firewall-offline-cmd --add-service cockpit # Allow sudo without password RUN echo "%wheel ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/wheel-passwordless-sudo -- cgit