debian-forge/runners/org.osbuild.debian14
robojerk 5ab0c39b08
Some checks are pending
Checks / Spelling (push) Waiting to run
Checks / Python Linters (push) Waiting to run
Checks / Shell Linters (push) Waiting to run
Checks / 📦 Packit config lint (push) Waiting to run
Checks / 🔍 Check for valid snapshot urls (push) Waiting to run
Checks / 🔍 Check JSON files for formatting consistency (push) Waiting to run
Generate / Documentation (push) Waiting to run
Generate / Test Data (push) Waiting to run
Tests / Unittest (push) Waiting to run
Tests / Assembler test (legacy) (push) Waiting to run
Tests / Smoke run: unittest as normal user on default runner (push) Waiting to run
Implement Fedora-style dynamic runner system for Debian variants
2025-08-26 16:11:44 -07:00

44 lines
1.3 KiB
Python

#!/usr/bin/python3
"""
Debian 14 (Forky) Runner
Optimized for Debian 14 testing release
"""
import subprocess
import sys
import os
from osbuild import api
from osbuild.util import runners
def setup_debian_environment():
"""Setup Debian 14 specific environment"""
# Set Debian-specific environment variables
os.environ['DEBIAN_FRONTEND'] = 'noninteractive'
os.environ['DEBCONF_NONINTERACTIVE_SEEN'] = 'true'
# Testing release specific settings
os.environ['DEBIAN_TESTING'] = '1'
# Ensure apt is properly configured for Debian 14 testing
if os.path.exists('/etc/apt/sources.list'):
# Backup existing sources
if not os.path.exists('/etc/apt/sources.list.backup'):
subprocess.run(['cp', '/etc/apt/sources.list', '/etc/apt/sources.list.backup'], check=False)
# Update package lists for Debian 14 testing
subprocess.run(['apt-get', 'update'], check=False)
if __name__ == "__main__":
with api.exception_handler():
# Debian-specific setup
setup_debian_environment()
# Standard runner operations
runners.ldconfig()
runners.sysusers()
runners.tmpfiles()
runners.nsswitch()
r = subprocess.run(sys.argv[1:], check=False)
sys.exit(r.returncode)