No rebuild option if have upload privileges via per-package rights

Bug #493425 reported by Robert Ancell
14
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Launchpad itself
Fix Released
Medium
Steve Kowalik

Bug Description

I have upload privileges to desktop packages in main as I am a member of the ubuntu-desktop team. However if a build fails and I want to retry it I do not have a link to do this from Launchpad. People who are main uploaders do have this option.

i.e.
1. I uploaded xscreensaver
2. LP notifies me by email that it failed to build on ia64
3. I go to the build log to see why:
https://edge.launchpad.net/ubuntu/+source/xscreensaver/5.10-3ubuntu1/+build/1375403
4. Realising it was an error in a dependant package I want to rebuild but I don't have the option

Note that this kind of error seems to be quite frequent and I currently have to find someone with main privileges to perform the retry

Tags: lp-soyuz qa-ok

Related branches

Curtis Hovey (sinzui)
affects: launchpad → soyuz
Changed in soyuz:
status: New → Triaged
importance: Undecided → Medium
milestone: none → 10.02
summary: - No rebuild option if have upload privileges via a team
+ No rebuild option if have upload privileges via per-package rights
Revision history for this message
Julian Edwards (julian-edwards) wrote :

The security adapter is not taking package sets into account, so if the upload permission is via a package set then it won't get build edit rights

Instead of calling IArchive.canUpload(), it should call archiveuploader.permission.check_upload_to_archive() which works properly with package sets.

Revision history for this message
Julian Edwards (julian-edwards) wrote :

FWIW you can also find buildd admins to retry the build until this is fixed.

Revision history for this message
Jonathan Thomas (echidnaman) wrote :

Yeah, it's just a bit of a hassle for all involved to do so. ;-)

Changed in soyuz:
milestone: 10.02 → 10.03
Revision history for this message
Michael Nelson (michael.nelson) wrote :

I was just trying to demo this locally but failed:

http://pastebin.ubuntu.com/391911/

Adding a permission for the specific package name enables the 'Retry this build' option. So either my local test setup is faulty (we could try a team permission), or this actually works. We should run a query to verify the expected permission for the ubuntu-desktop team and the xscreensaver package.

Revision history for this message
William Grant (wgrant) wrote :

It's both a package set and a team permission.

Revision history for this message
Steve Kowalik (stevenk) wrote :

Testing this configuration where a demo user is a part of a team and the team has permission also works as expected.

Revision history for this message
Michael Nelson (michael.nelson) wrote :

@wgrant: Right - I demo'd a permission for a specific package, rather than a package set. Thanks.

Steve Kowalik (stevenk)
Changed in soyuz:
status: Triaged → In Progress
assignee: nobody → Steve Kowalik (stevenk)
Revision history for this message
Ursula Junque (ursinha) wrote : Bug fixed by a commit
Changed in soyuz:
status: In Progress → Fix Committed
tags: added: qa-needstesting
Steve Kowalik (stevenk)
tags: added: qa-ok
removed: qa-needstesting
Steve Kowalik (stevenk)
Changed in soyuz:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.