From 571d15bbb333e3cf934c4523023d961ae4e850a5 Mon Sep 17 00:00:00 2001 From: Joe Date: Fri, 29 Aug 2025 18:57:12 -0700 Subject: [PATCH] Upgrade CI to Debian Trixie for modern OSTree packages MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - ✅ Changed container images from python:3.11-slim to debian:trixie-slim - ✅ Updated all repository references from bookworm to trixie - ✅ Added comment explaining why Trixie is needed (modern OSTree features) - ✅ Bookworm has outdated OSTree packages missing critical functionality - ✅ Trixie provides full-featured OSTree packages for proper CI testing --- .forgejo/workflows/ci.yml | 32 +++++++++++++++++--------------- 1 file changed, 17 insertions(+), 15 deletions(-) diff --git a/.forgejo/workflows/ci.yml b/.forgejo/workflows/ci.yml index 013e73dd..27cd33dd 100644 --- a/.forgejo/workflows/ci.yml +++ b/.forgejo/workflows/ci.yml @@ -18,7 +18,7 @@ jobs: name: Build and Test runs-on: ubuntu-latest container: - image: python:3.11-slim + image: debian:trixie-slim steps: - name: Test secret priority @@ -40,19 +40,21 @@ jobs: - name: Setup environment run: | + # Using Debian Trixie (testing) for modern OSTree packages with full features + # Bookworm (stable) has outdated OSTree packages missing critical functionality # Try apt-cacher-ng first, fallback to Debian's automatic mirror selection echo "Checking for apt-cacher-ng availability..." # Quick check with timeout to avoid hanging if timeout 10 curl -s --connect-timeout 5 http://192.168.1.101:3142/acng-report.html > /dev/null 2>&1; then echo "✅ apt-cacher-ng is available, configuring proxy sources..." - echo "deb http://192.168.1.101:3142/ftp.debian.org/debian bookworm main contrib non-free" > /etc/apt/sources.list - echo "deb-src http://192.168.1.101:3142/ftp.debian.org/debian bookworm main contrib non-free" >> /etc/apt/sources.list + echo "deb http://192.168.1.101:3142/ftp.debian.org/debian trixie main contrib non-free" > /etc/apt/sources.list + echo "deb-src http://192.168.1.101:3142/ftp.debian.org/debian trixie main contrib non-free" >> /etc/apt/sources.list echo "Using apt-cacher-ng proxy for faster builds" else echo "⚠️ apt-cacher-ng not available or slow, using Debian's automatic mirror selection..." - echo "deb http://httpredir.debian.org/debian bookworm main contrib non-free" > /etc/apt/sources.list - echo "deb-src http://deb.debian.org/debian bookworm main contrib non-free" >> /etc/apt/sources.list + echo "deb http://httpredir.debian.org/debian trixie main contrib non-free" > /etc/apt/sources.list + echo "deb-src http://deb.debian.org/debian trixie main contrib non-free" >> /etc/apt/sources.list echo "Using httpredir.debian.org for automatic mirror selection" fi @@ -71,7 +73,7 @@ jobs: apt install -y --no-install-recommends \ git curl pkg-config build-essential gnupg wget \ python3-dev python3-pip python3-setuptools python3-wheel \ - python3-venv python3-pytest python3-tox python3-coverage \ + python3-venv python3-pytest python3-coverage \ devscripts debhelper dh-python python3-all python3-setuptools \ libapt-pkg-dev libapt-pkg7.0 libostree-dev \ libssl-dev libdbus-1-dev libglib2.0-dev \ @@ -107,7 +109,7 @@ jobs: pip install -r requirements.txt # Install development dependencies - pip install pytest pytest-cov tox black flake8 mypy + pip install pytest pytest-cov black flake8 mypy # Install additional build dependencies pip install --upgrade setuptools wheel @@ -178,7 +180,7 @@ jobs: echo '' >> CI_SUMMARY.md echo '## Build Status' >> CI_SUMMARY.md echo '- **Status**: ✅ SUCCESS' >> CI_SUMMARY.md - echo '- **Container**: python:3.11-slim' >> CI_SUMMARY.md + echo '- **Container**: debian:trixie-slim' >> CI_SUMMARY.md echo '- **Python Version**: '"$(python3 --version)" >> CI_SUMMARY.md echo '' >> CI_SUMMARY.md echo '## Built Packages' >> CI_SUMMARY.md @@ -329,13 +331,13 @@ jobs: name: Security Audit runs-on: ubuntu-latest container: - image: python:3.11-slim + image: debian:trixie-slim steps: - name: Setup environment run: | # Configure sources - echo "deb http://httpredir.debian.org/debian bookworm main contrib non-free" > /etc/apt/sources.list + echo "deb http://httpredir.debian.org/debian trixie main contrib non-free" > /etc/apt/sources.list apt update -y - name: Install security tools @@ -368,12 +370,12 @@ jobs: name: Package Validation runs-on: ubuntu-latest container: - image: python:3.11-slim + image: debian:trixie-slim steps: - name: Setup environment run: | - echo "deb http://httpredir.debian.org/debian bookworm main contrib non-free" > /etc/apt/sources.list + echo "deb http://httpredir.debian.org/debian trixie main contrib non-free" > /etc/apt/sources.list apt update -y - name: Install package tools @@ -436,13 +438,13 @@ jobs: name: Status Report runs-on: ubuntu-latest container: - image: python:3.11-slim + image: debian:trixie-slim needs: [build-and-test, security, package] steps: - name: Setup environment run: | - echo "deb http://httpredir.debian.org/debian bookworm main contrib non-free" > /etc/apt/sources.list + echo "deb http://httpredir.debian.org/debian trixie main contrib non-free" > /etc/apt/sources.list apt update -y apt install -y --no-install-recommends git @@ -467,7 +469,7 @@ jobs: echo "- **Commit**: $(git rev-parse --short HEAD 2>/dev/null || echo 'Unknown')" >> STATUS_REPORT.md echo "- **Branch**: $(git branch --show-current 2>/dev/null || echo 'Unknown')" >> STATUS_REPORT.md echo "- **Date**: $(date '+%Y-%m-%d %H:%M:%S UTC')" >> STATUS_REPORT.md - echo "- **Container**: python:3.11-slim" >> STATUS_REPORT.md + echo "- **Container**: debian:trixie-slim" >> STATUS_REPORT.md echo "" >> STATUS_REPORT.md echo "All CI jobs completed successfully! 🎉" >> STATUS_REPORT.md echo "" >> STATUS_REPORT.md