Add task to upload build from debusine
Freexian would like to be able to run a debusine instance that runs package builds and uploads results to a Freexian repository (e.g. for ELTS). For this, we need an upload
task. It needs to take SSH and GPG keys from somewhere yet to be defined, sign a build with the GPG key, and upload it to a given SFTP server. This would typically be integrated following an sbuild
task as part of a workflow, rather than started manually.
Implementation checklist based on https://freexian-team.pages.debian.net/debusine/reference/devel-blueprints/package-upload.html:
-
Add TaskTypes.WAIT
, and add minimal handling of it to the various places that consider task types (!1092 (merged)) -
Implement MakeSourcePackageUpload
worker task (unpack source and rundpkg-genchanges
on it) (!1099 (merged)) -
Implement MergeUploads
worker task (runmergechanges
or equivalent on multiple uploads) (!1117 (merged)) -
Implement Debsign
signing task (!1094 (merged)) -
Implement ExternalDebsign
wait task (does nothing on execution, but needs a data model; !1095 (merged)) -
Implement external-debsign
work request view (!1102 (merged)) -
Implement new client command to provide a signature for an ExternalDebsign
work request (!1103 (merged)) -
Adjust web UI to show the client command to use to complete an ExternalDebsign
work request (!1114 (merged)) -
Implement PackageUpload
server task (equivalent ofdput
, though I suggest using ftplib for FTP and fabric for SFTP rather than needing a worker environment where we can rundput
; !1108 (merged)) -
Implement package_upload
workflow (!1151 (merged))
Edited by Carles Pina i Estany