test
Some checks failed
Build, Upload RootFS, and Push Docker Images, update changelog, update build info. / build-rootfs-archives (push) Failing after 34s
Build, Upload RootFS, and Push Docker Images, update changelog, update build info. / push-archives-to-repo (push) Has been skipped
Build, Upload RootFS, and Push Docker Images, update changelog, update build info. / build-and-push-docker-images (push) Has been skipped
Build, Upload RootFS, and Push Docker Images, update changelog, update build info. / generate-changelogs (push) Has been skipped
Build, Upload RootFS, and Push Docker Images, update changelog, update build info. / generate-build-info (push) Has been skipped

This commit is contained in:
2025-07-07 07:01:26 -07:00
parent 52d389115c
commit 198073d6b9
9 changed files with 54 additions and 50 deletions

View File

@@ -27,7 +27,7 @@ jobs:
- name: Build all Debian rootfs versions sequentially - name: Build all Debian rootfs versions sequentially
run: | run: |
versions=(bullseye bookworm docker-build) versions=(buster bullseye bookworm trixie docker-build)
for version in "${versions[@]}"; do for version in "${versions[@]}"; do
echo "[INFO] Building Debian $version rootfs..." echo "[INFO] Building Debian $version rootfs..."
@@ -112,7 +112,7 @@ jobs:
IMAGE_ORG=fithwum IMAGE_ORG=fithwum
IMAGE_REPO=debian-base IMAGE_REPO=debian-base
for TAG in bullseye bookworm docker-build; do for TAG in buster bullseye bookworm trixie docker-build; do
FULL_IMAGE="${IMAGE_REGISTRY}/${IMAGE_ORG}/${IMAGE_REPO}:${TAG}" FULL_IMAGE="${IMAGE_REGISTRY}/${IMAGE_ORG}/${IMAGE_REPO}:${TAG}"
echo "[INFO] Building and pushing $FULL_IMAGE" echo "[INFO] Building and pushing $FULL_IMAGE"
docker buildx build --platform linux/amd64 --push -t "$FULL_IMAGE" "./$TAG" docker buildx build --platform linux/amd64 --push -t "$FULL_IMAGE" "./$TAG"
@@ -132,7 +132,7 @@ jobs:
- name: Generate per-version changelogs - name: Generate per-version changelogs
run: | run: |
cd upload-repo cd upload-repo
for version in bullseye bookworm docker-build; do for version in buster bullseye bookworm trixie docker-build; do
echo "[INFO] Updating changelog for $version" echo "[INFO] Updating changelog for $version"
changelog="$version/CHANGES.md" changelog="$version/CHANGES.md"
@@ -195,7 +195,7 @@ jobs:
} }
cd upload-repo cd upload-repo
for version in bullseye bookworm docker-build; do for version in buster bullseye bookworm trixie docker-build; do
echo "[INFO] Generating build-info.json for $version" echo "[INFO] Generating build-info.json for $version"
mkdir -p "$version" mkdir -p "$version"
infofile="$version/build-info.json" infofile="$version/build-info.json"
@@ -241,7 +241,7 @@ jobs:
git push git push
# Tag the commit for each version # Tag the commit for each version
for version in bullseye bookworm docker-build; do for version in buster bullseye bookworm trixie docker-build; do
TAG="build-$version" TAG="build-$version"
# Delete local tag if exists # Delete local tag if exists
git tag -d "$TAG" 2>/dev/null || true git tag -d "$TAG" 2>/dev/null || true

View File

@@ -7,7 +7,7 @@ set -o pipefail
DEBIAN_RELEASE="bookworm" DEBIAN_RELEASE="bookworm"
ROOTFS_DIR="debian-${DEBIAN_RELEASE}" ROOTFS_DIR="debian-${DEBIAN_RELEASE}"
SCRIPTS_DIR="base-image-script" SCRIPTS_DIR="base-image-script"
PT2_SCRIPT="debian-${DEBIAN_RELEASE}_pt2.sh" PT2_SCRIPT="debian-build_pt2.sh"
PT3_SCRIPT="debian-build_pt3.sh" PT3_SCRIPT="debian-build_pt3.sh"
echo "[INFO] Preparing environment..." echo "[INFO] Preparing environment..."

View File

@@ -9,6 +9,11 @@ apt-get upgrade
apt-get install --no-install-recommends software-properties-common bash wget curl nano locales apt-get install --no-install-recommends software-properties-common bash wget curl nano locales
echo "[CHROOT] Generating locales..."
echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen
locale-gen
update-locale LANG=en_US.UTF-8
echo "[CHROOT] Removing unnecessary packages..." echo "[CHROOT] Removing unnecessary packages..."
apt-get remove --purge --allow-remove-essential pinentry-curses whiptail kmod iptables iproute2 dmidecode || true apt-get remove --purge --allow-remove-essential pinentry-curses whiptail kmod iptables iproute2 dmidecode || true

View File

@@ -7,7 +7,7 @@ set -o pipefail
DEBIAN_RELEASE="bullseye" DEBIAN_RELEASE="bullseye"
ROOTFS_DIR="debian-${DEBIAN_RELEASE}" ROOTFS_DIR="debian-${DEBIAN_RELEASE}"
SCRIPTS_DIR="base-image-script" SCRIPTS_DIR="base-image-script"
PT2_SCRIPT="debian-${DEBIAN_RELEASE}_pt2.sh" PT2_SCRIPT="debian-build_pt2.sh"
PT3_SCRIPT="debian-build_pt3.sh" PT3_SCRIPT="debian-build_pt3.sh"
echo "[INFO] Preparing environment..." echo "[INFO] Preparing environment..."

View File

@@ -1,21 +0,0 @@
#!/bin/bash
# Copyright (c) 2025 fithwum
# All rights reserved
echo "[CHROOT] Configuring Debian system..."
echo 'APT::Get::Assume-Yes "true";' > /etc/apt/apt.conf.d/10-assume_yes
apt-get update
apt-get upgrade
apt-get install --no-install-recommends software-properties-common bash wget curl nano locales
echo "[CHROOT] Removing unnecessary packages..."
apt-get remove --purge --allow-remove-essential pinentry-curses whiptail kmod iptables iproute2 dmidecode || true
echo "[CHROOT] Cleaning up..."
apt-get clean
apt-get install -f
find /var/lib/apt/lists/ -type f -delete
echo "[CHROOT] Done. Type 'exit' to return."
exit

View File

@@ -7,7 +7,7 @@ set -o pipefail
DEBIAN_RELEASE="buster" DEBIAN_RELEASE="buster"
ROOTFS_DIR="debian-${DEBIAN_RELEASE}" ROOTFS_DIR="debian-${DEBIAN_RELEASE}"
SCRIPTS_DIR="base-image-script" SCRIPTS_DIR="base-image-script"
PT2_SCRIPT="debian-${DEBIAN_RELEASE}_pt2.sh" PT2_SCRIPT="debian-build_pt2.sh"
PT3_SCRIPT="debian-build_pt3.sh" PT3_SCRIPT="debian-build_pt3.sh"
echo "[INFO] Preparing environment..." echo "[INFO] Preparing environment..."

View File

@@ -1,21 +0,0 @@
#!/bin/bash
# Copyright (c) 2025 fithwum
# All rights reserved
echo "[CHROOT] Configuring Debian system..."
echo 'APT::Get::Assume-Yes "true";' > /etc/apt/apt.conf.d/10-assume_yes
apt-get update
apt-get upgrade
apt-get install --no-install-recommends software-properties-common bash wget curl nano locales
echo "[CHROOT] Removing unnecessary packages..."
apt-get remove --purge --allow-remove-essential pinentry-curses whiptail kmod iptables iproute2 dmidecode || true
echo "[CHROOT] Cleaning up..."
apt-get clean
apt-get install -f
find /var/lib/apt/lists/ -type f -delete
echo "[CHROOT] Done. Exiting."
exit

View File

@@ -0,0 +1,37 @@
#!/bin/bash
# Copyright (c) 2025 fithwum
# All rights reserved
set -e
set -o pipefail
DEBIAN_RELEASE="trixie"
ROOTFS_DIR="debian-${DEBIAN_RELEASE}"
SCRIPTS_DIR="base-image-script"
PT2_SCRIPT="debian-build_pt2.sh"
PT3_SCRIPT="debian-build_pt3.sh"
echo "[INFO] Preparing environment..."
apt-get update -y
apt-get upgrade -y
apt-get install -y --no-install-recommends debootstrap bash curl wget dirmngr bzip2
for SCRIPT in $PT2_SCRIPT $PT3_SCRIPT; do
if [ ! -f "./${SCRIPTS_DIR}/$SCRIPT" ]; then
echo "[ERROR] Missing script: ${SCRIPTS_DIR}/$SCRIPT"
exit 1
fi
done
echo "[INFO] Bootstrapping Debian $DEBIAN_RELEASE rootfs..."
debootstrap --variant=minbase --components=main,contrib,non-free --include=apt,ca-certificates --arch=amd64 "$DEBIAN_RELEASE" "$ROOTFS_DIR" http://deb.debian.org/debian/
for dir in dev dev/pts proc sys; do
mount --bind "/$dir" "$ROOTFS_DIR/$dir"
done
cp "./${SCRIPTS_DIR}/$PT2_SCRIPT" "$ROOTFS_DIR/root/$PT2_SCRIPT"
chmod +x "$ROOTFS_DIR/root/$PT2_SCRIPT"
chroot "$ROOTFS_DIR" /root/$PT2_SCRIPT
bash "./${SCRIPTS_DIR}/$PT3_SCRIPT" "$ROOTFS_DIR"

4
trixie/Dockerfile Normal file
View File

@@ -0,0 +1,4 @@
FROM scratch
LABEL maintainer="fithwum"
ADD /debian-trixie.tar.bz2 /
CMD ["/bin/bash"]