provide web-based "retry test" functionality

Bug #1475491 reported by Martin Pitt on 2015-07-17
16
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Auto Package Testing
Low
Martin Pitt
britney
Low
Martin Pitt

Bug Description

We need some way for developers to re-run failed tests. Ideally people who can upload a package should be able to retry as well.

wgrant | pitti: OpenID integration is pretty easy for you. Use python-openid (probably without a team restriction) against login.ubuntu.com, then use launchpadlib's lp.people.getByOpenIdIdentifier to look up a person which you can give to archive.checkUpload for permission checks.

Martin Pitt (pitti) on 2015-07-17
Changed in auto-package-testing:
status: New → Triaged
importance: Undecided → Low
Martin Pitt (pitti) on 2015-11-19
Changed in auto-package-testing:
assignee: nobody → Martin Pitt (pitti)
Martin Pitt (pitti) on 2016-01-15
tags: added: proposed-migration-vsprint
Martin Pitt (pitti) on 2016-01-21
Changed in auto-package-testing:
status: Triaged → In Progress
Martin Pitt (pitti) wrote :

Keeping notes for installation steps (this will go into the charm eventually):

add-apt-repository ppa:canonical-foundations/ci-train-backports
apt-get update
apt-get install -y python3-flask python3-openid python3-flask-openid
git clone git://git.launchpad.net/~canonical-foundations/+git/autopkgtest-retrier

For tests:

apt-get install -y python-tox python3-coverage python3-nose
and this needs http://paste.ubuntu.com/14589713/ (to be discussed with barry and robru, I don't know tox)

Martin Pitt (pitti) wrote :

Now needs python3-nose2 for tests instead of python3-nose.

Martin Pitt (pitti) on 2016-01-22
Changed in britney:
assignee: nobody → Martin Pitt (pitti)
importance: Undecided → Low
status: New → Triaged
Martin Pitt (pitti) wrote :

All code changes landed and got rolled out. This is still blocked as https to autopkgtest.ubuntu.com is firewalled, I sent an RT.

Changed in auto-package-testing:
status: In Progress → Fix Committed
Changed in britney:
status: Triaged → In Progress
Robert Bruce Park (robru) wrote :

Congrats pitti!

Btw the first iteration just checks that team membership, if you want to iterate on it and make it actually check proper upload rights, i have a working example of that in lp:cupstream2distro:

http://bazaar.launchpad.net/+branch/cupstream2distro/view/head:/citrain/recipes/base.py#L352

You could probably when simplify it as you wouldn't need to care about NEW packages i don't think...

On Mon, Jan 25, 2016 at 09:21:26AM -0000, Robert Bruce Park wrote:
> Congrats pitti!
>
> Btw the first iteration just checks that team membership, if you want to
> iterate on it and make it actually check proper upload rights, i have a
> working example of that in lp:cupstream2distro:
>
> http://bazaar.launchpad.net/+branch/cupstream2distro/view/head:/citrain/recipes/base.py#L352

If you were to do this, we would also want to grant permission to tests
triggered by a package you can upload too, with the rationale being that
you could just perform a new upload to make the test re-run if you
wanted to.

--
Iain Lane [ <email address hidden> ]
Debian Developer [ <email address hidden> ]
Ubuntu Developer [ <email address hidden> ]

Martin Pitt (pitti) wrote :

patch for britney. Not committing yet as https:// is still firewall-blocked.

Martin Pitt (pitti) wrote :

Thanks Rob for pointing out the checkUpload() bits. With that we don't even need to test for team membership any more, which would obsolete the need to ask $whoever to enable the [ ] ubuntu-dev box by default in SSO.

Iain Lane (laney) wrote :

On Mon, Jan 25, 2016 at 02:43:28PM -0000, Martin Pitt wrote:
> Thanks Rob for pointing out the checkUpload() bits. With that we don't
> even need to test for team membership any more, which would obsolete the
> need to ask $whoever to enable the [ ] ubuntu-dev box by default in SSO.

Did you see my comment #5?

It's not always (in my experience not even usually) the uploaded package
which you want to retry, it's some random reverse dependency.

--
Iain Lane [ <email address hidden> ]
Debian Developer [ <email address hidden> ]
Ubuntu Developer [ <email address hidden> ]

Martin Pitt (pitti) wrote :

Iain Lane [2016-01-25 16:09 -0000]:
> Did you see my comment #5?
>
> It's not always (in my experience not even usually) the uploaded package
> which you want to retry, it's some random reverse dependency.

Yes, I did see it. I think we can apply the "X can upload Y" test to
both the trigger and the test, and if either is true, we allow it.

Martin Pitt (pitti) wrote :

SSL port has been unblocked, https://autopkgtest.ubuntu.com/retry.cgi/ works now. I landed the britney update.

Now the only remaining thing to do is to update the documentation at https://wiki.ubuntu.com/ProposedMigration/AutopkgtestInfrastructure.

Changed in britney:
status: In Progress → Fix Released
Robert Bruce Park (robru) wrote :

Looks cool! Also needs to be linked from the autopkgtest results pages
right?

Martin Pitt (pitti) wrote :

Robert Bruce Park [2016-01-27 5:54 -0000]:
> Also needs to be linked from the autopkgtest results pages right?

If we want to, yes. I think excuses.html is more useful, as on the
a.u.c. history pages it's not entirely clear which of the results are
current (i. e. still in -proposed) and which are just historic
results. There might be anything between zero and like a dozen
"current" results, and not even necessarily consecutive ones.

Martin Pitt (pitti) wrote :
Changed in auto-package-testing:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers