rev |
line source |
gokhlayeh@186
|
1 <?php
|
gokhlayeh@235
|
2 $version=$_GET["version"];
|
gokhlayeh@235
|
3 if (file_exists("conf-$version.php")) {
|
gokhlayeh@235
|
4 include("conf-$version.php");
|
gokhlayeh@186
|
5 }
|
gokhlayeh@235
|
6 else {
|
gokhlayeh@235
|
7 if (file_exists("conf.php")) {
|
gokhlayeh@235
|
8 include("conf.php");
|
gokhlayeh@235
|
9 }
|
gokhlayeh@235
|
10 }
|
gokhlayeh@267
|
11
|
gokhlayeh@267
|
12 function include_and_link($file)
|
gokhlayeh@267
|
13 {
|
gokhlayeh@267
|
14 global $log_dir, $version;
|
gokhlayeh@267
|
15 if (($fp = fopen($file,"r")) === false) return;
|
gokhlayeh@267
|
16 while (($pkg = fgets($fp)) !== false) {
|
gokhlayeh@267
|
17 $pkg = chop($pkg);
|
gokhlayeh@267
|
18 if (file_exists("$log_dir/$pkg.html"))
|
gokhlayeh@267
|
19 echo "<a href=\"log.php?version=$version&package=$pkg\">$pkg</a>\n";
|
gokhlayeh@267
|
20 else echo "$pkg\n";
|
gokhlayeh@267
|
21 }
|
gokhlayeh@267
|
22 fclose($fp);
|
gokhlayeh@267
|
23 }
|
gokhlayeh@267
|
24
|
gokhlayeh@267
|
25 function list_last_cooked($dir, $suffix)
|
gokhlayeh@267
|
26 {
|
gokhlayeh@267
|
27 global $version;
|
gokhlayeh@267
|
28 $path=basename($dir);
|
gokhlayeh@267
|
29 system("cd $dir && ls -1t *.$suffix | head -20 | \
|
gokhlayeh@267
|
30 while read file; do echo -n \$(stat -c '%y' $dir/\$file | \
|
gokhlayeh@267
|
31 cut -d. -f1); echo ' <a href=\"download.php?version=$version&package=$path/'\$file'\">'\$file'</a>'; done");
|
gokhlayeh@267
|
32 }
|
gokhlayeh@267
|
33
|
gokhlayeh@186
|
34 ?>
|
gokhlayeh@186
|
35 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
gokhlayeh@186
|
36 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
gokhlayeh@186
|
37 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
gokhlayeh@186
|
38 <head>
|
gokhlayeh@186
|
39 <title>SliTaz Build Bot</title>
|
gokhlayeh@186
|
40 <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
|
gokhlayeh@186
|
41 <meta name="description" content="Tazbb web interface" />
|
gokhlayeh@186
|
42 <meta name="robots" content="index nofollow" />
|
gokhlayeh@235
|
43 <link rel="shortcut icon" href="web/favicon.ico" />
|
gokhlayeh@235
|
44 <link rel="stylesheet" type="text/css" href="web/slitaz.css" />
|
gokhlayeh@186
|
45 </head>
|
gokhlayeh@235
|
46 <body>
|
gokhlayeh@186
|
47
|
gokhlayeh@186
|
48 <!-- Header -->
|
gokhlayeh@186
|
49 <div id="header">
|
gokhlayeh@235
|
50 <!-- Access -->
|
gokhlayeh@235
|
51 <div id="access">
|
gokhlayeh@235
|
52 <?php
|
gokhlayeh@235
|
53 $versions_list = fopen('repositories.list', 'r');
|
gokhlayeh@235
|
54 if($versions_list)
|
gokhlayeh@235
|
55 {
|
gokhlayeh@235
|
56 $otherversion = '';
|
gokhlayeh@235
|
57 while(!feof($versions_list))
|
gokhlayeh@235
|
58 {
|
gokhlayeh@235
|
59 $otherversion = fgets($versions_list);
|
gokhlayeh@235
|
60 echo "<a href=\"?version=$otherversion\">$otherversion</a>";
|
gokhlayeh@235
|
61 }
|
gokhlayeh@235
|
62 fclose($versions_list);
|
gokhlayeh@235
|
63 }
|
gokhlayeh@235
|
64 ?>
|
gokhlayeh@235
|
65 </div>
|
gokhlayeh@186
|
66 <a href="http://bb.slitaz.org/"><img id="logo"
|
gokhlayeh@235
|
67 src="web/logo.png"
|
gokhlayeh@235
|
68 title="bb.slitaz.org" alt="bb.slitaz.org" /></a>
|
gokhlayeh@235
|
69 <p id="titre">#!/Build/Bot/<?php echo $version; ?></p>
|
gokhlayeh@186
|
70 </div>
|
gokhlayeh@186
|
71
|
gokhlayeh@186
|
72 <!-- Content -->
|
gokhlayeh@235
|
73 <div id="content-full">
|
gokhlayeh@186
|
74
|
gokhlayeh@235
|
75 <!-- Block begin -->
|
gokhlayeh@235
|
76 <div class="block">
|
gokhlayeh@235
|
77 <!-- Nav block begin -->
|
gokhlayeh@235
|
78 <div id="block_nav">
|
gokhlayeh@235
|
79 <h3><img src="pics/website/development.png" alt="" />Developers</h3>
|
gokhlayeh@235
|
80 <ul>
|
gokhlayeh@235
|
81 <li><a href="http://www.slitaz.org/en/devel/">Website/devel</a></li>
|
gokhlayeh@235
|
82 <li><a href="http://labs.slitaz.org/">Laboratories</a></li>
|
gokhlayeh@235
|
83 <li><a href="http://hg.slitaz.org/">Mercurial Repos</a></li>
|
gokhlayeh@235
|
84 <li><a href="http://people.slitaz.org/">People Stuff</a></li>
|
gokhlayeh@235
|
85 <li><a href="http://scn.slitaz.org/">Community Network</a></li>
|
gokhlayeh@235
|
86 </ul>
|
gokhlayeh@235
|
87 <!-- Nav block end -->
|
gokhlayeh@235
|
88 </div>
|
gokhlayeh@235
|
89 <!-- Top block begin -->
|
gokhlayeh@235
|
90 <div id="block_top">
|
gokhlayeh@235
|
91 <h1>Build Bot</h1>
|
gokhlayeh@235
|
92 <p>
|
gokhlayeh@334
|
93 Tazwok is a <a href="http://www.slitaz.org/">SliTaz GNU/Linux</a>
|
pankso@348
|
94 Build Bot, it automatically cooks and tests packages. SliTaz
|
pankso@348
|
95 <a href="http://pkgs.slitaz.org/">packages</a> are cooked on
|
pankso@348
|
96 <a href="http://tank.slitaz.org">Tank</a>, the project main
|
pankso@348
|
97 server. This web interface gives the current status of the
|
pankso@348
|
98 build bot and the last report about any packages modified by
|
pankso@348
|
99 contributors in the Mercurial repositories, aka
|
gokhlayeh@235
|
100 <a href="http://hg.slitaz.org/">Hg repos</a>.
|
gokhlayeh@235
|
101 </p>
|
pankso@348
|
102 <p>
|
pankso@348
|
103 Note: Flavors/Iso build logs are named "iso-?flavor",
|
pankso@348
|
104 Temporary toolchain logs are named "tmp-toolchain-?package"
|
pankso@348
|
105 and check-incoming log is named "incoming".
|
pankso@348
|
106 </p>
|
gokhlayeh@235
|
107 <!-- Top block end -->
|
gokhlayeh@235
|
108 </div>
|
gokhlayeh@235
|
109 <!-- Block end -->
|
gokhlayeh@235
|
110 </div>
|
gokhlayeh@235
|
111
|
gokhlayeh@235
|
112 <h2>Cooklog</h2>
|
gokhlayeh@186
|
113
|
gokhlayeh@186
|
114 <p>
|
gokhlayeh@235
|
115 <form action="log.php" method="get">
|
gokhlayeh@235
|
116 <input type="hidden" name="version" value="<?php
|
gokhlayeh@235
|
117 echo "$version";
|
gokhlayeh@235
|
118 ?>
|
gokhlayeh@235
|
119 " />
|
gokhlayeh@235
|
120 Show pkg log:<br />
|
pankso@341
|
121 <input type="text" name="package" style="width: 320px;" />
|
gokhlayeh@235
|
122 <!-- <input type="submit" value="Show" /> -->
|
pankso@348
|
123 </form>
|
gokhlayeh@186
|
124 </p>
|
gokhlayeh@186
|
125
|
gokhlayeh@247
|
126 <h2>Summary</h2>
|
pankso@342
|
127 <ul>
|
gokhlayeh@186
|
128 <?php
|
pankso@342
|
129 // Check curent status (update in real time) and display summary.
|
pascal@349
|
130 $status = "Chroot is not mounted";
|
pankso@342
|
131 if (file_exists($lockfile)) {
|
pascal@350
|
132 $status = "Chroot is mounted";
|
pankso@342
|
133 }
|
pascal@349
|
134 if (file_exists("$log_dir/step")) {
|
pascal@349
|
135 $status .= ", ".file_get_contents("$log_dir/step");
|
pascal@349
|
136 if (file_exists("$log_dir/package")) {
|
pascal@349
|
137 $pkg = file_get_contents("$log_dir/package");
|
pascal@349
|
138 if (file_exists("$log_dir/$pkg.html"))
|
pascal@349
|
139 $status .= " <a href=\"log.php?version=$version&package=$pkg\">$pkg</a>";
|
pascal@349
|
140 else $status .= "$pkg";
|
pascal@349
|
141 }
|
pankso@342
|
142 }
|
pascal@349
|
143 echo "<li>Status: $status</li>\n";
|
pankso@344
|
144 //include("$db_dir/summary");
|
gokhlayeh@186
|
145 ?>
|
pankso@342
|
146 <li>Packages in the wok: <?php
|
pankso@342
|
147 system("cd $wok && ls -1 | wc -l"); ?></li>
|
pankso@342
|
148 <li>Packages in the main repository: <?php
|
pankso@344
|
149 system("cd $packages && ls -1t *.tazpkg | wc -l"); ?></li>
|
pankso@342
|
150 <li>Packages in the incoming repository: <?php
|
pankso@344
|
151 system("cd $incoming && ls -1t *.tazpkg | wc -l"); ?></li>
|
pankso@342
|
152 <li>Commited packages: <?php
|
pascal@347
|
153 system("wc -l < $db_dir/commit"); ?></li>
|
pankso@342
|
154 <li>Packages to cook: <?php
|
pascal@347
|
155 system("wc -l < $db_dir/cooklist"); ?></li>
|
pankso@342
|
156 <li>Broken packages: <?php
|
pascal@347
|
157 system("wc -l < $db_dir/broken"); ?></li>
|
pankso@342
|
158 <li>Blocked packages: <?php
|
pascal@347
|
159 system("wc -l < $db_dir/blocked"); ?></li>
|
gokhlayeh@265
|
160 </ul>
|
gokhlayeh@186
|
161
|
gokhlayeh@186
|
162 <h3>Commit</h3>
|
gokhlayeh@186
|
163 <pre class="package">
|
gokhlayeh@186
|
164 <?php
|
gokhlayeh@186
|
165 include("$db_dir/commit");
|
gokhlayeh@186
|
166 ?>
|
gokhlayeh@186
|
167 </pre>
|
gokhlayeh@186
|
168
|
gokhlayeh@186
|
169 <h3>Cooklist</h3>
|
gokhlayeh@186
|
170 <pre class="package">
|
gokhlayeh@186
|
171 <?php
|
gokhlayeh@186
|
172 include("$db_dir/cooklist");
|
gokhlayeh@186
|
173 ?>
|
gokhlayeh@186
|
174 </pre>
|
gokhlayeh@186
|
175
|
gokhlayeh@186
|
176 <h3>Broken</h3>
|
gokhlayeh@186
|
177 <pre class="package">
|
gokhlayeh@186
|
178 <?php
|
gokhlayeh@267
|
179 include_and_link("$db_dir/broken");
|
gokhlayeh@186
|
180 ?>
|
gokhlayeh@186
|
181 </pre>
|
gokhlayeh@186
|
182
|
gokhlayeh@186
|
183 <h3>Blocked</h3>
|
gokhlayeh@186
|
184 <pre class="package">
|
gokhlayeh@186
|
185 <?php
|
gokhlayeh@267
|
186 include_and_link("$db_dir/blocked");
|
gokhlayeh@186
|
187 ?>
|
gokhlayeh@186
|
188 </pre>
|
gokhlayeh@186
|
189
|
gokhlayeh@186
|
190 <h3>Last cooked packages</h3>
|
gokhlayeh@186
|
191 <pre class="package">
|
gokhlayeh@186
|
192 <?php
|
gokhlayeh@267
|
193 list_last_cooked($incoming, "tazpkg");
|
gokhlayeh@267
|
194 ?>
|
gokhlayeh@186
|
195 </pre>
|
gokhlayeh@186
|
196
|
gokhlayeh@186
|
197 <h3>Last removed packages</h3>
|
gokhlayeh@186
|
198 <pre class="package">
|
gokhlayeh@186
|
199 <?php
|
gokhlayeh@186
|
200 include("$db_dir/removed");
|
gokhlayeh@186
|
201 ?>
|
gokhlayeh@186
|
202 </pre>
|
gokhlayeh@186
|
203
|
gokhlayeh@186
|
204 <h3>Last cooked flavors</h3>
|
gokhlayeh@186
|
205 <pre class="package">
|
gokhlayeh@186
|
206 <?php
|
gokhlayeh@267
|
207 list_last_cooked($packages, "flavor");
|
gokhlayeh@267
|
208 ?>
|
gokhlayeh@186
|
209 </pre>
|
gokhlayeh@186
|
210
|
gokhlayeh@235
|
211 <!-- End of content -->
|
gokhlayeh@186
|
212 </div>
|
gokhlayeh@186
|
213
|
gokhlayeh@235
|
214 <!-- Footer -->
|
gokhlayeh@235
|
215 <div id="footer">
|
gokhlayeh@235
|
216 <div class="right_box">
|
gokhlayeh@235
|
217 <h4>SliTaz Network</h4>
|
gokhlayeh@235
|
218 <ul>
|
gokhlayeh@235
|
219 <li><a href="http://www.slitaz.org/">Main Website</a></li>
|
gokhlayeh@235
|
220 <li><a href="http://doc.slitaz.org/">Documentation</a></li>
|
gokhlayeh@235
|
221 <li><a href="http://forum.slitaz.org/">Support Forum</a></li>
|
gokhlayeh@235
|
222 <li><a href="http://scn.slitaz.org/">Community Network</a></li>
|
gokhlayeh@235
|
223 <li><a href="http://labs.slitaz.org/">Laboratories</a></li>
|
gokhlayeh@235
|
224 <li><a href="http://twitter.com/slitaz">SliTaz on Twitter</a></li>
|
pankso@344
|
225 <li><a href="http://www.facebook.com/slitaz">SliTaz on Facebook</a></li>
|
gokhlayeh@235
|
226 </ul>
|
gokhlayeh@235
|
227 </div>
|
gokhlayeh@235
|
228 <h4>SliTaz Website</h4>
|
gokhlayeh@235
|
229 <ul>
|
gokhlayeh@235
|
230 <li><a href="#header">Top of the page</a></li>
|
gokhlayeh@235
|
231 <li>Copyright © <span class="year"></span>
|
gokhlayeh@235
|
232 <a href="http://www.slitaz.org/">SliTaz</a></li>
|
gokhlayeh@235
|
233 <li><a href="http://www.slitaz.org/en/about/">About the project</a></li>
|
gokhlayeh@235
|
234 <li><a href="http://www.slitaz.org/netmap.php">Network Map</a></li>
|
gokhlayeh@235
|
235 <li>Page modified the <?php echo (date( "d M Y", getlastmod())); ?></li>
|
gokhlayeh@235
|
236 <li><a href="http://validator.w3.org/check?uri=referer"><img
|
gokhlayeh@235
|
237 src="pics/website/xhtml10.png" alt="Valid XHTML 1.0"
|
gokhlayeh@235
|
238 title="Code validé XHTML 1.0"
|
gokhlayeh@235
|
239 style="width: 80px; height: 15px; vertical-align: middle;" /></a></li>
|
gokhlayeh@235
|
240 </ul>
|
gokhlayeh@186
|
241 </div>
|
gokhlayeh@186
|
242
|
gokhlayeh@186
|
243 </body>
|
gokhlayeh@186
|
244 </html>
|