/[d-i]/trunk/scripts/daily-build-aggregator
ViewVC logotype

Contents of /trunk/scripts/daily-build-aggregator

Parent Directory Parent Directory | Revision Log Revision Log


Revision 37867 - (show annotations) (download)
Tue Jun 6 22:02:07 2006 UTC (6 years, 11 months ago) by joeyh
File size: 5976 byte(s)
update Q_'s email
1 #!/usr/bin/perl
2 # This program downloads summary log files for the daily image builds, and
3 # constructs a web page overview of the d-i builds. If you run a daily
4 # build, add the info for your build to the list.
5 #
6 # The url field points to the url your build can be downloaded from, the
7 # email address is a contact address, the description is a breif
8 # description of the build. The logurl points to wherever log files are.
9 # The logext is an extention that is appended to the log filename.
10 #
11 # In the log directory you should have a summary$logext file, that contains
12 # lines in the following format:
13 # arch (date) user@host ident status
14 #
15 # Where ident describes what is being built, arch is the architecture that
16 # it is being built for, date is the output of the date command at the end
17 # of the build (in the C locale), user@host is who did the build, and
18 # status describes how it went (usually "success" or "failed"). A log file
19 # for the build should in in the file named ident$logext in the log directory.
20 #
21 # Example:
22 # i386 (Thu Apr 22 21:08:03 EDT 2004) joey@kite build_floppy_boot success
23 # i386 (Thu Apr 22 21:08:33 EDT 2004) joey@kite build_floppy_speakup success
24 # i386 (Thu Apr 22 21:09:29 EDT 2004) joey@kite build_floppy_root success
25
26 # Note: only add items to the end of the list, do not reorder items or it
27 # will mess up the stats file used for the graph.
28 my @buildlist = (
29 {
30 url => 'http://people.debian.org/~vorlon/d-i/alpha/daily/',
31 logurl => 'http://people.debian.org/~vorlon/d-i/alpha/daily/',
32 email => 'vorlon@debian.org',
33 description => 'daily alpha images build',
34 logext => ".log",
35 frequency => 1,
36 notes => '',
37 },
38
39 {
40 url => 'http://amd64.debian.net/debian-installer/daily/',
41 logurl => 'http://amd64.debian.net/debian-installer/daily/',
42 email => 'kurt@roeckx.be',
43 description => 'daily amd64 images build',
44 logext => ".log",
45 frequency => 1,
46 notes => '',
47 },
48
49 {
50 url => 'http://people.debian.org/~kmuto/d-i/images/daily/',
51 logurl => 'http://people.debian.org/~kmuto/d-i/images/daily/',
52 email => 'kmuto@debian.org',
53 description => 'daily arm images build',
54 logext => ".log",
55 frequency => 1,
56 notes => '',
57 },
58
59 {
60 url => 'http://people.debian.org/~kyle/d-i/hppa/daily/',
61 logurl => 'http://people.debian.org/~kyle/d-i/hppa/daily/',
62 email => 'kyle@debian.org',
63 description => 'daily hppa images build',
64 logext => ".log",
65 frequency => 1,
66 notes => '',
67 },
68
69 {
70 url => 'http://people.debian.org/~joeyh/d-i/images/daily/',
71 logurl => 'http://people.debian.org/~joeyh/d-i/images/daily/',
72 email => 'joeyh@debian.org',
73 description => 'daily i386 images build',
74 logext => ".log",
75 frequency => 1,
76 notes => '',
77 },
78
79 {
80 url => 'http://people.debian.org/~jbailey/d-i/ia64/daily/',
81 logurl => 'http://people.debian.org/~jbailey/d-i/ia64/daily/',
82 email => 'jbailey@debian.org',
83 description => 'daily ia64 images build',
84 logext => ".log",
85 frequency => 1,
86 notes => '',
87 },
88
89 {
90 url => 'http://people.debian.org/~smarenka/d-i/images-m68k/daily/',
91 logurl => 'http://people.debian.org/~smarenka/d-i/images-m68k/daily/',
92 email => 'smarenka@debian.org',
93 description => 'daily m68k images build',
94 logext => ".log",
95 frequency => 1,
96 notes => '',
97 },
98
99 {
100 url => 'http://people.debian.org/~ths/d-i/images/daily/',
101 logurl => 'http://people.debian.org/~ths/d-i/images/daily/',
102 email => 'ths@debian.org',
103 description => 'daily mips images build',
104 logext => ".log",
105 frequency => 1,
106 notes => '',
107 },
108
109 {
110 url => 'http://people.debian.org/~ths/d-i/mipsel/images/daily/',
111 logurl => 'http://people.debian.org/~ths/d-i/mipsel/images/daily/',
112 email => 'ths@debian.org',
113 description => 'daily mipsel images build',
114 logext => ".log",
115 frequency => 1,
116 notes => '',
117 },
118
119 {
120 url => 'http://people.debian.org/~cjwatson/d-i/images/daily/',
121 logurl => 'http://people.debian.org/~cjwatson/d-i/images/daily/',
122 email => 'cjwatson@debian.org',
123 description => 'daily powerpc images build',
124 logext => ".log",
125 frequency => 1,
126 notes => '',
127 },
128
129 {
130 url => 'http://lophos.multibuild.org/d-i/images/daily/',
131 logurl => 'http://lophos.multibuild.org/d-i/images/daily/',
132 email => 'waldi@debian.org',
133 description => 'daily s390 images build',
134 logext => ".log",
135 frequency => 1,
136 notes => '',
137 },
138
139 {
140 url => 'http://people.debian.org/~stappers/d-i/images/daily/',
141 logurl => 'http://people.debian.org/~stappers/d-i/images/daily/',
142 email => 'stappers@debian.org',
143 description => 'daily sparc images build',
144 logext => ".log",
145 frequency => 1,
146 notes => '',
147 },
148
149 {
150 url => 'http://cdimage.debian.org/pub/cdimage-testing/',
151 logurl => 'http://cd-builder.debian.net/log/',
152 email => 'manty@debian.org',
153 description => 'CD image builds',
154 logext => "",
155 frequency => 7, # some build only weekly
156 notes => '',
157 },
158
159 # {
160 # url => 'http://somehost/',
161 # logurl => 'http://somehost/',
162 # email => 'you@debian.org',
163 # description => 'put something informative here',
164 # logext => ".log",
165 # frequency => 1,
166 # },
167 );
168
169 use warnings;
170 use strict;
171 require "aggregator.pl";
172
173 my $basename=shift;
174 if (! defined $basename) {
175 die "usage: $0 basename\n";
176 }
177
178 open (OUT, ">$basename.html.new") || die "$basename.html.new: $!";
179
180 print OUT <<EOS;
181 <html>
182 <head>
183 <title>debian-installer build overview</title>
184 </head>
185 <body>
186 <ul>
187 EOS
188
189 my ($total, $failed, $success, $old) = aggregate(*OUT, $basename, @buildlist);
190
191 my $date=`LANG=C TZ=GMT date`;
192 my ($basebasename)=($basename)=~m/(?:.*\/)?(.*)/;
193 chomp $date;
194 print OUT <<"EOS";
195 </ul>
196
197 Totals: $total builds ($failed failed, $old old)
198
199 <p>
200 <img src="$basebasename.png" alt=graph>
201
202 <hr>
203
204 See also: <a href="http://buildd.debian.org/build.php?arch=&pkg=debian-installer">d-i autobuild logs</a>
205 and <a href="http://people.debian.org/~igloo/status.php?packages=debian-installer">d-i buildd status</a>
206
207 <hr>
208 $date
209 </body>
210 </html>
211 EOS
212
213 close OUT;
214 rename("$basename.html.new", "$basename.html") || die "rename: $!";

Properties

Name Value
svn:executable *

  ViewVC Help
Powered by ViewVC 1.1.5