Files
pkh/tests/e2e/catalog.yml
T
vhaudiquet decd092871 test: xfail gdb, grub2 and u-boot in the e2e catalog
All three fail on the current archive, none by pkh's doing: gdb's
PDF dies in texi2dvi against texinfo 7.3; sid's grub2 is the 2.06-2
branch whose control pins gcc-10, which sid no longer ships; and
cross u-boot compiles its kbuild host tools with the arm64 flags
dpkg-buildflags serves in cross mode (-mbranch-protection is amd64
rejected), the same under sbuild cross.
2026-10-02 12:14:55 +02:00

382 lines
9.6 KiB
YAML

# pkh end-to-end test catalog
#
# One entry per source package, exercised by run.py as:
# pkh pull -> pkh chlog --rebuild -> pkh build -> pkh deb
#
# The catalog deliberately alternates between debian and ubuntu within
# every category, so a default run exercises both archives, series
# namings and chroots.
#
# The file is plain YAML but is also parsed by a small built-in parser when
# PyYAML is unavailable: keep to the subset it supports — full-line comments,
# 'key: value' scalars, inline [a, b] lists, no nested mappings, no block
# scalars, no colons inside values.
#
# Fields (all optional except 'name'):
# category free grouping label (smoke, server, desktop, ...) [defaults.tier]
# tier smoke | standard | long — 'long' is only run when asked for
# dist debian | ubuntu [defaults.dist]
# series pin a series (default: the dist development series)
# arch pass '-a ARCH' to 'pkh deb'
# cross true -> also pass '--cross' (needs 'arch') [false]
# pocket pass '-p POCKET' to pull/deb
# ppa inline list of PPAs passed to 'pkh deb --ppa'
# timeout per-stage budget in minutes [tier default]
# xfail known-broken marker: the reason it is expected to fail
# notes free text, shown by --list and in reports
defaults:
dist: debian
tier: standard
packages:
# --- smoke: small, fast, reliable; the first line of defense -------------
- name: hello
category: smoke
tier: smoke
tags: [gnu, autotools, tiny]
notes: the canonical packaging smoke test
- name: micro
category: smoke
tier: smoke
tags: [go, editor, tiny]
notes: Go build, golang build-dependencies resolved offline
- name: jq
category: smoke
tier: smoke
tags: [c, autotools, tiny]
- name: htop
category: smoke
dist: ubuntu
tier: smoke
tags: [c, autotools, tiny]
- name: tmux
category: smoke
tier: smoke
tags: [c, autotools, tiny]
- name: tree
category: smoke
dist: ubuntu
tier: smoke
tags: [c, make, tiny]
- name: figlet
category: smoke
dist: ubuntu
tier: smoke
tags: [c, make, tiny]
- name: dash
category: smoke
tier: smoke
tags: [c, autotools, shell]
- name: file
category: smoke
tier: smoke
tags: [c, autotools]
- name: zlib
category: smoke
dist: ubuntu
tier: smoke
tags: [c, autotools, lib]
- name: xz-utils
category: smoke
tier: smoke
tags: [c, autotools]
xfail: sid carries the 5.8.1-1+deb13u1 trixie upload whose packaging fails at dh_installdocs (doxygen api docs missing) - package-side, under triage
- name: busybox
category: smoke
dist: ubuntu
tier: smoke
tags: [c, kconfig, static]
- name: dnsmasq
category: smoke
tier: smoke
tags: [c, make, network]
- name: memcached
category: smoke
dist: ubuntu
tier: smoke
tags: [c, autotools, server]
- name: kbuild
category: smoke
tier: smoke
tags: [c, kbuild, weird]
notes: the virtualbox build system; exercises the kbuild log classifier
# --- core -----------------------------------------------------------------
- name: bash
category: core
tags: [c, autotools, shell]
- name: coreutils
category: core
dist: ubuntu
tags: [c, autotools]
xfail: pkh deb builds as root in the chroot and coreutils configure refuses root (needs a non-root build user, as Launchpad buildds use)
- name: util-linux
category: core
tags: [c, autotools]
- name: openssl
category: core
dist: ubuntu
tags: [c, perl-build, lib]
- name: vim
category: core
tags: [c, autotools, editor]
- name: neovim
category: core
dist: ubuntu
tags: [c, cmake, lua, editor]
- name: git
category: core
tags: [c, make, vcs]
- name: rust-ripgrep
category: core
dist: ubuntu
tags: [rust, cargo]
notes: debcargo-style vendored Rust build (binary name is ripgrep)
- name: make-dfsg
category: core
tier: smoke
tags: [c, autotools, tiny]
notes: the GNU make source package (binary name is make)
- name: systemd
category: core
dist: ubuntu
tags: [c, meson, init]
xfail: FTBFS against python3-lxml 6.1 - it no longer consults custom resolvers for parameter entities, so make-directive-index fails with 'Entity entities not defined' on the man pages - distro toolchain change, package-side
# --- server ---------------------------------------------------------------
- name: nginx
category: server
tags: [c, autoconf, server]
- name: apache2
category: server
dist: ubuntu
tags: [c, autotools, server]
- name: openssh
category: server
tags: [c, autotools, server]
- name: postfix
category: server
dist: ubuntu
tags: [c, make, mail, server]
- name: dovecot
category: server
tags: [c, autotools, mail, server]
- name: samba
category: server
dist: ubuntu
tags: [c, python-waf, server]
- name: bind9
category: server
tags: [c, autotools, dns, server]
- name: haproxy
category: server
dist: ubuntu
tags: [c, make, network, server]
- name: exim4
category: server
tags: [c, make, mail, server]
# --- databases --------------------------------------------------------------
- name: redis
category: database
tags: [c, make, server]
- name: sqlite3
category: database
dist: ubuntu
tags: [c, autotools]
- name: postgresql-17
category: database
tags: [c, autotools, server]
notes: long-ish but reliable; a good mid-weight benchmark
- name: leveldb
category: database
dist: ubuntu
tier: smoke
tags: [cpp, cmake]
- name: mysql-8.0
category: database
tier: long
dist: ubuntu
timeout: 240
tags: [cpp, cmake, server]
notes: Ubuntu-only source name; huge C++ build
# --- desktop ----------------------------------------------------------------
- name: gtk4
category: desktop
tags: [c, meson, gui]
- name: vlc
category: desktop
dist: ubuntu
tags: [cpp, autotools, gui]
- name: gimp
category: desktop
tags: [c, meson, gui]
- name: inkscape
category: desktop
dist: ubuntu
tags: [cpp, cmake, gui]
- name: mutter
category: desktop
tags: [c, meson, gui]
- name: pipewire
category: desktop
dist: ubuntu
tags: [c, meson, audio]
- name: plasma-desktop
category: desktop
tags: [cpp, cmake, kde, gui]
- name: gnome-control-center
category: desktop
dist: ubuntu
tags: [c, meson, gui]
- name: ffmpeg
category: desktop
tags: [c, autotools, media]
# --- toolchains ---------------------------------------------------------------
- name: binutils
category: toolchain
tags: [c, autotools]
xfail: FTBFS against glibc 2.42+ - string.h turned strstr into a macro with C2x redirect annotations and gprofng's libcollector does not survive it ('expected identifier before _Generic') - upstream fixed it after 2.45, distro toolchain change
- name: gdb
category: toolchain
dist: ubuntu
tags: [c, autotools]
xfail: FTBFS with texinfo 7.3 - texi2dvi aborts with 'pdfetex exited with bad status' building gdb.pdf - the last Launchpad rebuild predates the texinfo upgrade, distro toolchain change
- name: cmake
category: toolchain
tier: smoke
tags: [cpp, cmake, bootstrap]
# --- boot / firmware / weird ------------------------------------------------
- name: dracut
category: boot-firmware
tier: smoke
tags: [shell, make, initramfs, weird]
notes: unusual make logic; initramfs generator
- name: opensbi
category: boot-firmware
tier: smoke
tags: [c, make, firmware, weird]
notes: RISC-V firmware, cross-built inside a native build
- name: grub2
category: boot-firmware
tags: [c, autotools, bootloader, weird]
notes: multi-platform grub; heavy but dependable
xfail: sid carries the 2.06-2 branch whose control pins gcc-10, no longer in sid - the build-deps of the no-change rebuild are unsatisfiable, package-side
- name: u-boot
category: boot-firmware
dist: ubuntu
arch: arm64
cross: true
xfail: in cross builds dpkg-buildflags serves the arm64 target CFLAGS and u-boot compiles its kbuild host tools with them - cc rejects -mbranch-protection=none on amd64 - upstream cross-host-tool breakage, same under sbuild cross
tags: [c, kconfig, firmware, weird, cross]
notes: cross build for arm64; many board configs
# --- long: hours each; opt-in via --tier long or --tier all -----------------
- name: gcc-14
category: toolchain
dist: ubuntu
tier: long
timeout: 360
tags: [c, autotools, compiler]
- name: glibc
category: core
tier: long
timeout: 360
tags: [c, autotools, libc]
- name: rustc
category: toolchain
tier: long
timeout: 360
tags: [rust, compiler]
notes: bootstraps the Rust compiler; the longest single build here
- name: libreoffice
category: desktop
dist: ubuntu
tier: long
timeout: 480
tags: [cpp, make, office, gui]
- name: firefox
category: desktop
tier: long
timeout: 480
tags: [cpp, rust, browser, gui]
- name: qt6-base
category: desktop
dist: ubuntu
tier: long
timeout: 360
tags: [cpp, cmake, gui]
- name: linux
category: kernel
tier: long
dist: ubuntu
timeout: 480
tags: [c, kbuild, kernel, weird]
notes: the Ubuntu kernel; multi-hour, many flavours, kbuild quirks apply
- name: openjdk-21
category: toolchain
tier: long
dist: ubuntu
timeout: 360
tags: [java, make, compiler]