commit 03b43e353e2da7e451f63764a7251fb583bfc746
Merge: 39ec9f0ff 2569a852a
Author: Colin Watson <cjwatson@debian.org>
Date: Wed Jul 1 14:17:26 2026 +0000
Simplify delegation of role queries (MR !3181)
The `*RoleBase.q` methods are now classmethods that return conditions
for whether the permission context has any of multiple roles, allowing
workspace and scope role queries to be handled by delegating to the
appropriate methods rather than duplicating their logic.
The compiled queries should remain essentially unchanged.
Part of #1494.
Merge-Request: https://salsa.debian.org/freexian-team/debusine/-/merge_requests/3181
commit 2569a852a6164c3fa994ab09551bcfba80275788
Author: Colin Watson <cjwatson@debian.org>
Date: Mon Jun 29 21:54:12 2026 +0100
Simplify delegation of role queries
The `*RoleBase.q` methods are now classmethods that return conditions
for whether the permission context has any of multiple roles, allowing
workspace and scope role queries to be handled by delegating to the
appropriate methods rather than duplicating their logic.
The compiled queries should remain essentially unchanged.
Part of #1494.
commit 39ec9f0ff269d17a5035eb2795e7105a345048b3
Merge: 34d8bf4e6 509935fb3
Author: Carles Pina i Estany <carles@pina.cat>
Date: Tue Jun 30 13:58:02 2026 +0000
Lintian fix severity template (MR !3183)
Merge-Request: https://salsa.debian.org/freexian-team/debusine/-/merge_requests/3183
commit 34d8bf4e671ea1ad050be99883e02051cc95a9b3
Merge: 71ee26b0c 37e25f6e3
Author: Colin Watson <cjwatson@debian.org>
Date: Tue Jun 30 12:32:33 2026 +0000
Add `debusine archive package` commands (MR !3174)
To support this, we have new APIs to list, show, and remove collection items. These are more generic than just dealing with packages in suites, but for now we only have porcelain commands to deal with that particular use case.
Fixes: #1242
Closes #1242
Merge-Request: https://salsa.debian.org/freexian-team/debusine/-/merge_requests/3174
commit 71ee26b0c75fc57c605ac81b7260f67a14704fe1
Merge: 1fb7d1f2c abde53ab8
Author: Colin Watson <cjwatson@debian.org>
Date: Tue Jun 30 12:20:09 2026 +0000
pre-commit: Update to ruff 0.15.20 and djlint 1.39.5 (MR !3182)
Merge-Request: https://salsa.debian.org/freexian-team/debusine/-/merge_requests/3182
commit 509935fb37a92297c580aad24a1028f17bbdf6ef
Author: Carles Pina i Estany <carles@pina.cat>
Date: Tue Jun 30 12:42:21 2026 +0100
Lintian tag severity template: show severity on hover
commit 43f3733880e39a0cfd3de814ed4b427571cab259
Author: Carles Pina i Estany <carles@pina.cat>
Date: Tue Jun 30 12:38:40 2026 +0100
Lintian tag severity template: fix "overridden" severity
commit abde53ab8aca6a3b2914910ef16da0a36f317d7a
Author: Colin Watson <cjwatson@debian.org>
Date: Tue Jun 30 12:07:24 2026 +0100
pre-commit: Update to ruff 0.15.20 and djlint 1.39.5
commit 37e25f6e336614318a486c962f023ebd71a08a70
Author: Colin Watson <cjwatson@debian.org>
Date: Tue Jun 30 11:33:20 2026 +0100
Refactor misleadingly-named parameter in collection view tests
commit 3c36177f583e243874c2329d4b0aa6b6c5821b19
Author: Colin Watson <cjwatson@debian.org>
Date: Thu Jun 25 15:45:02 2026 +0100
Add `debusine archive package` commands
Fixes: #1242
commit 6e0812b82326b32bf619a4a6e6624329fb01a325
Author: Colin Watson <cjwatson@debian.org>
Date: Thu Jun 25 11:26:10 2026 +0100
Add APIs to list, show, and remove collection items
commit a24336a8a6a246c01c6bec650ec8fc40b3ab9dd6
Author: Colin Watson <cjwatson@debian.org>
Date: Thu Jun 25 11:24:45 2026 +0100
Add category to collection items in API responses
commit 67935411aa63496ca813a87b0ae52e02a112714c
Author: Colin Watson <cjwatson@debian.org>
Date: Thu Jun 25 09:31:20 2026 +0100
Disable REST framework's format-suffixed routes on viewsets
We don't need these, and they get in the way of using "." for other
purposes in the last URL segment.
commit 2ccd7a2149446bab16b9f560917866c4847cb22f
Author: Colin Watson <cjwatson@debian.org>
Date: Wed Jun 24 16:00:10 2026 +0100
Push update_suites workflow creation down to DebianSuiteManager
commit 3cf5b016539ee711c8d3fa691e442167093d083f
Author: Colin Watson <cjwatson@debian.org>
Date: Wed Jun 24 13:54:33 2026 +0100
Add CollectionItem.can_delete permission
commit 0b4eb04edb3327b1ec28778caa7e2ef7c345fb7d
Author: Colin Watson <cjwatson@debian.org>
Date: Wed Jun 24 13:33:06 2026 +0100
Allow removing associated binaries from a suite along with source
commit 1fb7d1f2c923c0f60663f6d5605eb56a9dfffac2
Merge: a819eaf87 ffc22e690
Author: Stefano Rivera <stefanor@debian.org>
Date: Mon Jun 29 14:17:27 2026 +0000
Staging testing, Dogfooding, and enterprise release process (MR !3175)
We don't have a usable staging environment quite yet, but here's how I see it being used.
We can also try a slightly more formal regular dogfooding release process. This may be more heaveyweight than we really want.
In the long term I'd like to see us move towards much more frequent releases, without needing to involve the IT team. But to get there I think we need to build confidence with them first, with the staging environment.
The staging part of the documentation is very high-level for now. I suspect deployment will initially be done manually over ssh. But I'd like to see that become fully automated too.
Merge-Request: https://salsa.debian.org/freexian-team/debusine/-/merge_requests/3175
commit a819eaf8712bf64269483728e33bb91d4cea818c
Merge: b732906cd bb7b85da5
Author: Raphaël Hertzog <hertzog@debian.org>
Date: Mon Jun 29 11:59:24 2026 +0000
client: use YAML literal block style for multiline client output (MR !3178)
Represent multi-line strings in the client's YAML output using YAML literal block scalars (`|`) instead of quoted multi-line strings.
This improves the readability of output from commands such as "debusine workflow-template show --yaml" where fields such as PGP public keys are currently emitted as quoted multi-line strings with extra blank lines.
Closes #1500
Merge-Request: https://salsa.debian.org/freexian-team/debusine/-/merge_requests/3178
commit bb7b85da55d0670220ff5a972ab691b2c2273d36
Author: Ayush Sharma <ayushhardeniya.grid@gmail.com>
Date: Mon Jun 29 17:29:24 2026 +0530
client: use YAML literal block style for multiline client output
commit b732906cdbc08059d71d073d7816ec09e330f2b5
Merge: cc46f03ab 4121f6dca
Author: Enrico Zini <enrico@debian.org>
Date: Mon Jun 29 08:47:01 2026 +0000
Update task configuration reference to match behaviour after introducing matching by tags (MR !3140)
Merge-Request: https://salsa.debian.org/freexian-team/debusine/-/merge_requests/3140
commit 4121f6dca5d91d2550b0425f7932300b43a36dd2
Author: Enrico Zini <enrico@enricozini.org>
Date: Mon Jun 29 09:39:41 2026 +0200
Simpler ordering explanation
commit 4d77b64a485cecb968fa72237920dd513919a1de
Author: Raphaël Hertzog <raphael@freexian.com>
Date: Sun Jun 28 16:20:52 2026 +0200
task configuration: create an explanation page and move some parts there
commit 79583d4cd46dca66f140b58418e312fcfeab1903
Author: Raphaël Hertzog <raphael@freexian.com>
Date: Sun Jun 28 16:25:00 2026 +0200
task configuration: move examples from reference to howto
And expand on the examples to make them realistic and gradually introduce
the various concepts.
commit bace7b9a5a99e07dbb7ef394b15a07281af4fa7f
Author: Enrico Zini <enrico@enricozini.org>
Date: Fri Jun 12 09:09:03 2026 +0200
Update task configuration reference to match behaviour after introducing matching by tags
commit ffc22e69000281c781e71b8a6a7dc33851270ef7
Author: Stefano Rivera <stefano@freexian.com>
Date: Thu Jun 25 17:32:13 2026 -0400
Describe staging testing
commit 090671a8fc61144fc0141932ed5a370c69f2cd72
Author: Stefano Rivera <stefano@freexian.com>
Date: Thu Jun 25 17:21:13 2026 -0400
Process for releasing dogfood to debusine.debian.net (and enterprise)
commit cc46f03abc15c24b3cf5c4fb67d56643025a157e
Merge: ebc87d144 9e175d957
Author: Stefano Rivera <stefanor@debian.org>
Date: Sun Jun 28 15:26:45 2026 +0000
Reject source-only uploads with non-source .buildinfo files (MR !3176)
A source-only upload (Architecture: source) that references a binary
.buildinfo file (e.g. foo_amd64.buildinfo) was previously accepted but
would later fail in the MergeUploads task. When the original source
upload is merged with the binaries built during the pipeline, the merge
finds two conflicting entries for the same .buildinfo filename (the
uploaded one vs. the freshly built one) and raises MergeUploadsError.
Reject these uploads early in the DebianUpload metadata validation
instead of renaming the file, so the user gets immediate feedback at
upload time. Mixed source+binary uploads are unaffected, as they
legitimately carry a binary .buildinfo.
Fixes: #1488
Signed-off-by: Christopher Obbard <obbardc@debian.org>
Closes #1488
Merge-Request: https://salsa.debian.org/freexian-team/debusine/-/merge_requests/3176
commit 9e175d95752abb99f616ba68379f343940bf2b0e
Author: Christopher Obbard <obbardc@debian.org>
Date: Sun Jun 28 06:14:24 2026 +0100
Reject source-only uploads with non-source .buildinfo files
A source-only upload (Architecture: source) that references a binary
.buildinfo file (e.g. foo_amd64.buildinfo) was previously accepted but
would later fail in the MergeUploads task. When the original source
upload is merged with the binaries built during the pipeline, the merge
finds two conflicting entries for the same .buildinfo filename (the
uploaded one vs. the freshly built one) and raises MergeUploadsError.
Reject these uploads early in the DebianUpload metadata validation
instead of renaming the file, so the user gets immediate feedback at
upload time. Mixed source+binary uploads are unaffected, as they
legitimately carry a binary .buildinfo.
Fixes: #1488
Signed-off-by: Christopher Obbard <obbardc@debian.org>
commit ebc87d144b088952f4e72d985bd836ced31ad8f3
Merge: fb094d9c2 e0c8bb1ee
Author: Colin Watson <cjwatson@debian.org>
Date: Fri Jun 26 12:13:55 2026 +0000
add metric for age of pending work requests (MR !3134)
the existing `debusine_work_request_start_latency` metric records how long work requests waited between becoming pending and starting execution, but it is only emitted when a work request is marked running...!
Add a database-backed OpenMetrics histogram, `pending_work_request_age`, reporting the age of currently pending work requests based on the difference between teh current time and their `pending_at` timestamp.
this provides visibility into the current state of the queue and can help identify when pending work requests are backing up!
Use the existing `BUCKET_DAYS` thresholds for histogram buckets nd add tests covering the generated bucket counts.
closes: #1486
Closes #1486
Merge-Request: https://salsa.debian.org/freexian-team/debusine/-/merge_requests/3134
commit e0c8bb1ee58626c6937d6427c3458c944d475e90
Author: Ayush Sharma <ayushhardeniya.grid@gmail.com>
Date: Thu Jun 25 09:54:12 2026 +0000
metric: address review feedback for pending work request age
Rename the metric to work_request_pending_age to match the naming
convention used by other metrics
reuse the existing WORK_REQUEST_LATENCY_BUCKETS constant from
work_requests.py, document the metric with its units, and update the
tests to use the new bucket thresholds.
commit fb094d9c2a66e250e3c2cf03b76de0e85835adaa
Merge: 0d1622b98 5bbbcdae3
Author: Colin Watson <cjwatson@debian.org>
Date: Thu Jun 25 23:20:31 2026 +0000
edit: UI decluttering and imperative tone change (MR !3171)
Before:
{width=900 height=507}
After:
{width=900 height=507}
Please let me know it if this was an intended feature and I should drop this MR.
Merge-Request: https://salsa.debian.org/freexian-team/debusine/-/merge_requests/3171
commit 0ad5eb10f56760e737c4a1a8da4b7d2da88749d6
Author: Stefano Rivera <stefano@freexian.com>
Date: Thu Jun 25 16:53:29 2026 -0400
Additional tasks for time-based releasese preparation
commit 3588e5539a463a56aa19a7f9ba8c155c6bff42cc
Author: Stefano Rivera <stefano@freexian.com>
Date: Thu Jun 25 16:47:24 2026 -0400
Document the existance of Debusine enterprise
commit 0d1622b98162ae1b3359c5c2680fb02103b12254
Merge: fe5bc66e8 c2354d0c3
Author: Stefano Rivera <stefanor@debian.org>
Date: Thu Jun 25 13:01:00 2026 +0000
Break the slow fsck parts out of vacuum_storage (MR !3172)
We do depend on `vacuum_storage` being run frequently, and it doesn't make sense to do a full scrub every day.
Fixes: #724
Closes #724
Merge-Request: https://salsa.debian.org/freexian-team/debusine/-/merge_requests/3172
commit c2354d0c3fdd62cc3c0cacef10811033d8c58b1d
Author: Stefano Rivera <stefano@freexian.com>
Date: Tue Jun 23 13:42:16 2026 -0400
Allow running the `fsck` commond on a single store.
commit b5e1217a85ab70a8851624bd3f7e2291d212634c
Author: Stefano Rivera <stefano@freexian.com>
Date: Tue Jun 23 10:57:33 2026 -0400
Break the slow fsck parts out of vacuum_storage
Fixes: #724
commit 10328cd1fcbd09a824500898c661678a36e1d197
Author: Stefano Rivera <stefano@freexian.com>
Date: Tue Jun 23 10:07:46 2026 -0400
Copy the files list, because we will be deleting files
commit 44f4537149ca4f5c1bdf096155deefb2424b2345
Author: Stefano Rivera <stefano@freexian.com>
Date: Tue Jun 23 11:47:29 2026 -0400
Don't leak memory FileStore contents between tests.
commit fe0b88fa159877f867d65aa771c13b73d3e8810d
Author: Stefano Rivera <stefano@freexian.com>
Date: Tue Jun 23 10:05:13 2026 -0400
Move helpers to VacuumStorageTestMixin in preparation for breaking up vacuum_storage
commit fe5bc66e8faf7908868e94911f822e5fd6051bb7
Merge: c94a978e3 73aaa49b0
Author: Stefano Rivera <stefanor@debian.org>
Date: Thu Jun 25 12:09:50 2026 +0000
Store copycollectionitems label in dynamic task data (MR !3173)
We want rendering these to be fast, so we don't want to compute them
every time we need to display them.
Also, the Web UI context does not use resoved inputs, so this wasn't
working.
Fixes: #1513
Closes #1513
Merge-Request: https://salsa.debian.org/freexian-team/debusine/-/merge_requests/3173
commit 73aaa49b0616a89cf1da26a855ab3502b7cf421b
Author: Stefano Rivera <stefano@freexian.com>
Date: Wed Jun 24 17:35:21 2026 -0400
Avoid testing get_label with resolved task inputs
commit 9ec05e3fb9b87108befa6bb2e62308cc6ec11c1a
Author: Stefano Rivera <stefano@freexian.com>
Date: Wed Jun 24 17:29:38 2026 -0400
Display the lookup syntax for the target collection, rather than the integer ID
commit 5fb5eda2c9d9247cd9cc085cbf67155238305896
Author: Stefano Rivera <stefano@freexian.com>
Date: Wed Jun 24 17:28:31 2026 -0400
De-duplicate target collections in label
Typically one copy task will include many binary packages.
commit fa7a7b48b07eab7ed141b8c13b74cdaabd4b5417
Author: Stefano Rivera <stefano@freexian.com>
Date: Wed Jun 24 17:25:10 2026 -0400
Store copycollectionitems label in dynamic task data
We want rendering these to be fast, so we don't want to compute them
every time we need to display them.
Also, the Web UI context does not use resoved inputs, so this wasn't
working.
Fixes: #1513
commit 5bbbcdae373dd53b85289ccf03cde2f83ad55603
Author: Nikil Paul S <snikilpaul@gmail.com>
Date: Tue Jun 23 15:02:38 2026 +0000
edit: UI decluttering and imperative tone change
commit c94a978e3bec5127fe051c832aa1e91c05f2dc5d
Merge: ba3df3a79 1c6eabf85
Author: Stefano Rivera <stefanor@debian.org>
Date: Tue Jun 23 15:38:34 2026 +0000
Tag-based worker-pool provisioning (MR !3167)
Adjust the worker pool provisioner to rely on tags for calculating workloads. This replaces the assumption that all workers for an architecture can execute all tasks for that architecture. And it paves the way for removal of the old mechanisms for specifying worker and task architectures.
Fixes: #1393
Closes #1393
Merge-Request: https://salsa.debian.org/freexian-team/debusine/-/merge_requests/3167
commit ba3df3a79aad47c2d2086791a2987c813b7b7d90
Merge: c383b5483 55eb1715d
Author: Colin Watson <cjwatson@debian.org>
Date: Tue Jun 23 15:15:23 2026 +0000
Add debian:debug-symbols artifact link in release notes (MR !3170)
Merge-Request: https://salsa.debian.org/freexian-team/debusine/-/merge_requests/3170
commit 1c6eabf8581f3aacc517f185da48212fa3462b8a
Author: Stefano Rivera <stefano@freexian.com>
Date: Sun Jun 21 09:37:56 2026 -0400
Migrate the provisioner to use tag-based scheduling in its calculations.
commit d95b3963134969bff9a3bfe621fa015bb159b549
Author: Stefano Rivera <stefano@freexian.com>
Date: Mon Jun 22 17:24:04 2026 -0400
Add WorkerQuerySet.with_scheduler_tags() annotator
commit 5aa1ea8efbfc587dc84bc029da59ce4b2cb35384
Author: Stefano Rivera <stefano@freexian.com>
Date: Sat Jun 20 22:55:43 2026 -0400
Accept WorkerPool in our tag based scheduling code
commit e3a81c10c1f5f21abd436d95e412a41dc61a8037
Author: Stefano Rivera <stefano@freexian.com>
Date: Sat Jun 20 21:58:03 2026 -0400
Configure worker pool workers with static_metadata from the pool, on startup
commit 3ff2d8624483f6fb672908dcf7ef199f84de2bf4
Author: Stefano Rivera <stefano@freexian.com>
Date: Sat Jun 20 17:30:53 2026 -0400
Update worker pool dynamic_metadata on every instance startup
commit 660efd394cba8ed2dd6c5d4b949dc9d1c5991c8c
Author: Stefano Rivera <stefano@freexian.com>
Date: Sat Jun 20 16:46:32 2026 -0400
Replace WorkerPool tags to with static and dynamic metadata
commit 55eb1715dde1d857a95f665f7be042a73938de84
Author: Colin Watson <cjwatson@debian.org>
Date: Tue Jun 23 15:25:01 2026 +0100
Add debian:debug-symbols artifact link in release notes
commit c383b548384daa2db541f62c25f3249c326664b6
Merge: af91d5602 575599bd1
Author: Colin Watson <cjwatson@debian.org>
Date: Tue Jun 23 13:55:00 2026 +0000
web: add direct .changes download shortcut (MR !3168)
add a dedicated shortcut for Upload artifacts that directly downloads
the associated `.changes` file.
this reduces the number of clicks required to access `.changes` files from
workflow output pages
closes: #1467
Closes #1467
Merge-Request: https://salsa.debian.org/freexian-team/debusine/-/merge_requests/3168
commit 575599bd1e89c510f1ec8fbeebe675a21b2ad903
Author: Ayush Sharma <ayushhardeniya.grid@gmail.com>
Date: Tue Jun 23 11:35:55 2026 +0000
web: add direct .changes download shortcut
add a dedicated shortcut for Upload artifacts that directly downloads
the associated `.changes` file.
this reduces the number of clicks required to access `.changes` files from
workflow output pages
closes: #1467
commit af91d5602c5b2f890b4245ba61ab6d5b7e9e0f6c
Merge: 5576c3fcf 2b20aaad8
Author: Stefano Rivera <stefanor@debian.org>
Date: Tue Jun 23 11:07:10 2026 +0000
Merge a (misnamed) news fragment that I missed in the release rebase (MR !3166)
Merge-Request: https://salsa.debian.org/freexian-team/debusine/-/merge_requests/3166
commit 5576c3fcf75c5a74882f4d25f87a216dfdda6d4a
Merge: 043751191 e2ad1cf8b
Author: Carles Pina i Estany <carles@pina.cat>
Date: Tue Jun 23 07:38:58 2026 +0000
DebdiffWorkflow: follow suite-requires for the "original" collection suite (fixes #1121) (MR !3160)
DebdiffWorkflow: follow suite-requires for the "original" collection suite (fixes #1121)
Closes #1121
Merge-Request: https://salsa.debian.org/freexian-team/debusine/-/merge_requests/3160
commit e2ad1cf8b2e1c3cc13a8926c1649f74eeea9cf32
Author: Carles Pina i Estany <carles@pina.cat>
Date: Tue Jun 23 07:38:58 2026 +0000
DebdiffWorkflow: follow suite-requires for the "original" collection suite
Fixes #1121
commit f41b643d667a9812c2f5d563006f9679036feddc
Author: Ayush Sharma <ayushhardeniya.grid@gmail.com>
Date: Tue Jun 23 06:48:45 2026 +0000
metric: add scope labels nd document pending work request age metric
Break down the `pending_work_request_age` histogram by scope, allowing administrators to identify backlogs affecting specific tenants.
document the new metric in `docs/reference/deployment/metrics.rst` and adjust th associates test to validate scope-labelled histogram buckets
update news fragment wording following review feedback.
commit 0437511914390b6c1eb8624ee6006de581766b2d
Merge: cc2292e16 488d13470
Author: Carles Pina i Estany <carles@pina.cat>
Date: Tue Jun 23 05:41:15 2026 +0000
debusine client "archive suite create" create collection relation for "qa_suite" and "regression_tracking_qa_results" template parameters (fixes #1485) (MR !3111)
debusine client "archive suite create" create collection relation for "qa_suite" and "regression_tracking_qa_results" base template parameter.
The collection relation is from the created suite to the "qa_suite" and "regression_tracking_qa_results" specified in the base workflow template ("--base-workflow-template" parameter)
fixes #1485
Closes #1485
Merge-Request: https://salsa.debian.org/freexian-team/debusine/-/merge_requests/3111
commit 488d134707898db6d0b8c0406986e53d941ca291
Author: Carles Pina i Estany <carles@pina.cat>
Date: Tue Jun 23 05:41:15 2026 +0000
debusine client "archive suite create" create collection relation for "qa_suite" and "regression_tracking_qa_results" base template parameters.
The collection relation is from the created suite to the "qa_suite" and "regression_tracking_qa_results" specified in the base workflow template ("--base-workflow-template" parameter)
fixes #1485
commit 2b20aaad8116028143aa0beacb3d4eb1992ee88e
Author: Stefano Rivera <stefano@freexian.com>
Date: Mon Jun 22 18:56:24 2026 -0400
Merge a (misnamed) news fragment that I missed in the rebase
commit 71eae131e7eaa2c27313f4b9aca2eac209c4c4ef
Author: Ayush Sharma <ayushhardeniya.grid@gmail.com>
Date: Thu Jun 11 08:19:59 2026 +0000
add news entry for the feature
commit 4d7dcf4656804a96d457fa837403b3211dc12ea4
Author: Ayush Sharma <ayushhardeniya.grid@gmail.com>
Date: Thu Jun 11 07:31:55 2026 +0000
add metric for age of pending work requests
Automatic checks made by the Debian l10n team found some issues with the translations contained in this package. You should check the l10n status report for more information.
Issues can be things such as missing translations, problematic translated strings, outdated PO files, unknown languages, etc.