Hello,
currently the watched taglist for koji watcher looks like this:
taglist = set(('dist-f10-updates-candidate', 'dist-f11-updates-candidate', 'dist-f12-updates-candidate', ))
I'm new to Koji, but I have discussed these things with Daniel Mach and I think the current koji watcher implementation isn't right. The problem is that the dist-fxx-updates-candidate tag is valid for only a while. After that it is changed to dist-fxx-updates tag (build goes directly to stable updates) or it is changed to dist-fxx-updates-testing (build goes to testing updates). If we have not detected that new build in the meantime, we have lost that information and won't know about it anymore.
One solution is to check all new builds for dist-fxx-updates-candidate, dist-fxx-updates-testing and dist-fxx-updates tags.
Another (better) solution is to check for all new builds and filter for only those packages, which have dist-fxx-updates-candidate tag in *their history* (not necessarily as current tag, which does current implementation). To see the concept have a look at: $ koji list-tag-history --build wormux-0.8.3-1.fc11
There is certainly some API to achieve that. Will, if you want, I can try to provide a patch for that.
Daniel also suggested a few alternative mechanisms for new build notification. If our tests would be quick, we could modify koji tasks (example here: http://koji.fedoraproject.org/koji/taskinfo?taskID=1789344 ) and add a Descendant Task to test the package. If our tests would take longer (which I assume in the longer run) we could modify the koji tasks and add at least a notification to our autoqa server that a new build has been done. This way we wouldn't have to query periodically but we would be notified immediately.
That was just a remark about alternative notification method. The important issue was the first one.
On Tue, 2009-11-10 at 11:54 -0500, Kamil Paral wrote:
I'm new to Koji, but I have discussed these things with Daniel Mach and I think the current koji watcher implementation isn't right. The problem is that the dist-fxx-updates-candidate tag is valid for only a while. [...] If we have not detected that new build in the meantime, we have lost that information and won't know about it anymore.
Good catch - yeah, if something got moved to -updates or -testing before the watcher fired, we'd miss it.
Another (better) solution is to check for all new builds and filter for only those packages, which have dist-fxx-updates-candidate tag in *their history* (not necessarily as current tag, which does current implementation).
Good idea. I've added tag_history() to SimpleKojiClientSession and modified the watcher to use that instead of list_tags().
Daniel also suggested a few alternative mechanisms for new build notification.
[snip]
We have plans to use the (planned) kojihub plugin feature to send out notifications of new builds over the (planned) Fedora Message Bus Thingy. Eventually all the current watchers should be replaced by simple listeners on the message bus.
-w
----- "Will Woods" wwoods@redhat.com wrote:
Another (better) solution is to check for all new builds and filter for only those packages, which have
dist-fxx-updates-candidate
tag in *their history* (not necessarily as current tag, which does current implementation).
Good idea. I've added tag_history() to SimpleKojiClientSession and modified the watcher to use that instead of list_tags().
Perfect, handled then.
Daniel also suggested a few alternative mechanisms for new build notification.
[snip]
We have plans to use the (planned) kojihub plugin feature to send out notifications of new builds over the (planned) Fedora Message Bus Thingy. Eventually all the current watchers should be replaced by simple listeners on the message bus.
Yes, I mentioned that too. But according to Daniel's words the message bus is still several (light) years away :)
Anyway, current implementation seems good enough to me.
autoqa-devel@lists.fedorahosted.org