It would be great to improve a bit our packaging workflow for our reprepro service.
One simple improvement would be to automate the incoming package processing: https://wikitech.wikimedia.org/wiki/Reprepro#Automatically_import_files_from_an_incoming/_directory
This quick & simple script can give an idea of what I'm thinking of:
set -e reprepro processincoming default reprepro export rm -rf /srv/wikimedia/conf/incoming/*
This can run on systemd timer/cron in the install servers every X minutes.
Of course we can add additional code for logging, accountability, etc:
- check that /srv/wikimedia/conf/incoming exists
- check that only .changes|.deb|.dsc and related files are present in /srv/wikimedia/conf/incoming
- check that all files were processed by reprepro
- email what has been done (reprepro does this already anyway)
If one of these checks fail, we can send an email to root@.
The workflow for packaging would end up being something like:
- build package (sbuild, whatever)
- check it, sign it, etc
- run dupload --to wmf pkg.changes (as described in https://wikitech.wikimedia.org/wiki/Reprepro#dupload)
- just wait and see your package being added to the repo (instead of manually jumping to the install server and doing what the script is doing, but by hand)