Merge pull request #1426 from LeastAuthority/4150.ci-for-debian-trixie
Some checks failed
CI / coverage (macos-14, 3.12) (push) Has been cancelled
CI / coverage (ubuntu-22.04, 3.12) (push) Has been cancelled
CI / coverage (ubuntu-22.04, pypy-3.9) (push) Has been cancelled
CI / coverage (windows-2022, 3.12) (push) Has been cancelled
CI / integration (false, macos-14, 3.11) (push) Has been cancelled
CI / integration (false, ubuntu-20.04, 3.11) (push) Has been cancelled
CI / integration (false, windows-2022, 3.11) (push) Has been cancelled
CI / integration (true, ubuntu-20.04, 3.12) (push) Has been cancelled
CI / packaging (macos-14, 3.9) (push) Has been cancelled
CI / packaging (ubuntu-22.04, 3.9) (push) Has been cancelled
CI / packaging (windows-2022, 3.9) (push) Has been cancelled
CI / finish-coverage-report (push) Has been cancelled

Set up a CI job to ensure compatibility with Debian Trixie
This commit is contained in:
meejah 2025-01-24 11:38:00 -07:00 committed by GitHub
commit 708892b642
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 68 additions and 0 deletions

View File

@ -117,6 +117,11 @@ workflows:
- "another-locale":
{}
# Test our sources with the packaging for Debian 13 (Trixie)
# https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4150
- "debian-13-package":
{}
- "windows-server-2022":
name: "Windows Server 2022, CPython <<matrix.pythonVersion>>"
matrix:
@ -542,6 +547,68 @@ jobs:
<<: *UTF_8_ENVIRONMENT
TAHOE_LAFS_TOX_ENVIRONMENT: "py310"
debian-13-package:
docker:
- <<: *DOCKERHUB_AUTH
image: "debian:trixie"
steps:
- run:
name: "Get latest Debian repository index and install essentials"
command: |
apt update
apt-get install --no-install-recommends --yes \
git \
ca-certificates
- run:
name: "Download sources for Tahoe-LAFS and @merkys Debian packaging"
command: |
mkdir /tmp/debian-13-package
cd /tmp/debian-13-package
# Take Tahoe-LAFS source
git clone https://github.com/tahoe-lafs/tahoe-lafs.git
# Take debian/ directory from Debian packaging repository
git clone https://salsa.debian.org/merkys/tahoe-lafs.git merkys-tahoe-lafs
cd tahoe-lafs/
ln -s ../merkys-tahoe-lafs/debian
- run:
name: "Install Tahoe-LAFS dependencies from the Debian repositories"
command: |
# 'apt-get install' dependencies from debian/control
# Via https://stackoverflow.com/a/47707412
apt-get install --no-install-recommends --yes $(awk '
/^(Build-)?Depends:/ || /^ / && deps {
sub(/^[^ ]+: /, "")
deps = 1
dep_str = dep_str ", " $0
next
}
{ deps=0 }
END {
split(dep_str, dep_array, /[,|] */)
for (d in dep_array) {
dep = dep_array[d]
gsub(/[^a-z0-9_.+-].*$/, "", dep)
if (dep && !seen[dep]++) print dep
}
}' /tmp/debian-13-package/tahoe-lafs/debian/control)
- run:
name: "Build & run tests"
command: |
cd /tmp/debian-13-package/tahoe-lafs/
make -f debian/rules binary
- run:
name: "Install the built package"
command: |
# Work around CircleCI not supporting globbing in store_artifacts
mkdir /tmp/debian-13-package/dist
mv /tmp/debian-13-package/tahoe-lafs_*.deb /tmp/debian-13-package/dist/
dpkg -i /tmp/debian-13-package/dist/tahoe-lafs_*.deb
- run:
name: "Run our newly system-wide installed tahoe"
command: tahoe --version
- store_artifacts:
path: /tmp/debian-13-package/dist
nixos:
parameters:
nixpkgs:

View File

@ -0,0 +1 @@
A package for upcoming Debian Trixie has been created and successfully submitted by @merkys (thanks!)