1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
|
<?php
/*
* This generator expect only log from autobuilder in simple format:
* TIME_OF_BUILD BUILD_TARGET BUILD_MODE MACHINE
*
* where TIME_OF_BUILD is epoch
*
* All what it does is parsing log and output it in reverse order (new builds
* first) in RSS 2.0 format.
*
* (C) 2007 Marcin Juszkiewicz
*
* License: MIT
*
*/
$build_link_base = 'http://www.angstrom-distribution.org/unstable/autobuild/';
$builder_log_date = file('autobuilder.log');
if(empty($builder_log_date))
die("No logs\n");
$builder_log_date = array_reverse($builder_log_date);
$rss_xml = new xmlWriter();
if(!$rss_xml)
die("Unable to create XML Writer\n");
$rss_xml->openMemory();
$rss_xml->startDocument('1.0','utf-8');
$rss_xml->startElement('rss');
$rss_xml->writeAttribute('version', '2.0');
$rss_xml->startElement('channel');
$rss_xml->writeElement('title', 'Ångström autobuilder updates');
$rss_xml->writeElement('link', $build_link_base);
$rss_xml->writeElement('description', 'Ångström autobuilder updates list');
foreach($builder_log_date as $build)
{
$build = str_replace("\n", "", $build);
$data = explode(' ', $build);
$rss_xml->startElement('item');
$rss_xml->writeElement('title', "{$data[1]} ({$data[2]}) built for {$data[3]} (" . date('c', $data[0]) . ")");
$rss_xml->writeElement('link', "{$build_link_base}{$data[3]}/");
$rss_xml->writeElement('pubDate', date('r', $data[0]));
$rss_xml->endElement();
}
$rss_xml->endElement();
$rss_xml->endElement();
echo $rss_xml->outputMemory(true);
echo "\n";
?>
|