[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: RSS packaging feeds?

On Wed, 28 Jan 2009 17:30:01 +0100
Michelle Konzack <linux4michelle@tamay-dogan.net> wrote:

> First the head:
> <rss version="2.0">
>   <channel>
>     <title>Emdebian - Crush</title>
>     <link>http://www.emdebian.org/crush/</link>
>     <description>Stuff about Crusj</description>

      <description>Crush update details</description>

or auto-process to say:
$count packages updated in Crush

>     <pubDate>Wed, 28 Jan 2009 17:18:43 +0100</pubDate>
>     <lastBuildDate>Wed, 28 Jan 2009 17:18:43 +0100</lastBuildDate>
>     <category>Neils Crush Uploads</category>

      <category>Crush Uploads for ARM</category>

>     <image>
>       <title>Emdebian - Crush</title>
>       <link>http://www.emdebian.org/crush/</link>
>       <url>http://www.emdebian.org/crush/emdebian_logo.png</url>
>     </image>

Interesting idea - we've only got one logo right now. I dare say that a
logo for Crush and Grip could be useful.
> and now the uploaded items:
>     <item>
>       <title>some package name</title>
>       <link>ftp://ftp.emdebian.org/debian/pool/main/LETTER/PKG/*.dsc</link>

Probably don't want the .dsc in this link, more likely (for Crush) is a
link to the build log:


>       <description>short describtion</description>

Something like $version, link to the patches maybe. For unsuccessful
builds, a summary of why it failed. For a testing migration, something
close to the message you currently get from Britney in Debian, if

>       <pubDate>Wed, 28 Jan 2009 07:22:48 +0100</pubDate>    
>       <guid>link to packages.debian.org maybe</guid>
>       <content:encoded>
>           long Describtion
>       </content:encoded>
>     </item>

The repeated for each package uploaded since the last run of the feed
generator script.

> and close
>   </channel>
> </rss>
> If you want, tell me what the exact input file is (send an  examle)  and
> how the feed should look, and I will make the script.

Hmm, yes please.

For Crush, all the data you should need (apart from the Packages file
itself) is in the build log:

The parsing code (in PHP) is in the emdebian-tools package:
emdebian-qa: /usr/share/emdebian-tools/buildd.php 

(The idea is that every process reporting on Crush uses solely the
build logs.) The .changes file itself is duplicated into the build log.

For Grip, there are update logs too but those aren't so easy to parse.

Again, parsing code is in PHP:
emdebian-grip-server: /usr/share/emdebian-tools/logs.php

As for the amount of content, personally, I really don't like RSS feeds
that are overly brief but a including more than a third of the build
log is probably a bit much! :-)

If there are markers or tags that you would like within future build
logs, I can add those but all build logs are ASCII text so there is a
limited scope for unique tags. (Report bugs against emdebian-tools for
that support.)

Don't forget to use Debian::Packages::Compare if that is useful too -
and file bugs if things don't work.

All that data is permanently available online so it should be possible
to create the feed locally and then work out a way of implementing it
on the Emdebian website later. (PHP is relatively simple to insert,
perl is the simplest to add to the emdebian-grip-server package
if that is worth doing, I think someone will be able to add a python
version if necessary.)

The website content is in Emdebian SVN:

Thanks for looking into this.


Neil Williams

Attachment: pgp8BE_lmvuot.pgp
Description: PGP signature

Reply to: