diff options
author | Pascal Terjan <pterjan@mageia.org> | 2013-01-16 23:41:40 +0000 |
---|---|---|
committer | Pascal Terjan <pterjan@mageia.org> | 2013-01-16 23:41:40 +0000 |
commit | 25e95b2913504ebc2d4f05d4027f68ddf9e89309 (patch) | |
tree | 032e3da2f7ae0d28e80d4313afa1953310a1f743 /autobuild/results.php | |
parent | 69a4e0c876772e4cc2a670de22890d35b7ceedb9 (diff) | |
download | pkgsubmit-25e95b2913504ebc2d4f05d4027f68ddf9e89309.tar pkgsubmit-25e95b2913504ebc2d4f05d4027f68ddf9e89309.tar.gz pkgsubmit-25e95b2913504ebc2d4f05d4027f68ddf9e89309.tar.bz2 pkgsubmit-25e95b2913504ebc2d4f05d4027f68ddf9e89309.tar.xz pkgsubmit-25e95b2913504ebc2d4f05d4027f68ddf9e89309.zip |
Use modification time to detect fixed packages instead of version, to support when it does not get changed
Diffstat (limited to 'autobuild/results.php')
-rw-r--r-- | autobuild/results.php | 23 |
1 files changed, 15 insertions, 8 deletions
diff --git a/autobuild/results.php b/autobuild/results.php index f86db10..eb0f013 100644 --- a/autobuild/results.php +++ b/autobuild/results.php @@ -24,11 +24,12 @@ foreach ($runs as $r) { } $prev = $r; } + $packages = Array(); if ($handle = opendir('/distrib/bootstrap/distrib/cauldron/SRPMS/core/release/')) { while (false !== ($entry = readdir($handle))) { if (preg_match("/(.*)-([^-]*-[^-]*mga)[1-9].src.rpm/", $entry, $matches)) { - $packages[$matches[1]] = $matches[2]; + $packages[$matches[1]] = $entry; } } closedir($handle); @@ -41,7 +42,7 @@ if ($prev) { $status_file = fopen($status_name, "r"); while (!feof($status_file)) { $line = fgets($status_file); - if (preg_match("/^(.*)-[^-]*-[^-]*mga[1-9].src.rpm: (.*)$/", $line, $matches)) { + if (preg_match("/^(.*): (.*)$/", $line, $matches)) { $rpm = $matches[1]; $status = $matches[2]; if ($status != "ok" && $status != "unknown" && $status != "not_on_this_arch") { @@ -66,8 +67,11 @@ if (!file_exists($status_name)) { echo "Invalid run"; exit; } -$status_file = fopen($status_name, "r"); +$stat = stat($status_name); +$end_time = $stat['mtime']; + +$status_file = fopen($status_name, "r"); while (!feof($status_file)) { $line = fgets($status_file); if (preg_match("/^(.*): (.*)$/", $line, $matches)) { @@ -78,12 +82,15 @@ while (!feof($status_file)) { } elseif ($status != "unknown" && $status != "not_on_this_arch"){ $failure[$rpm] = $status; preg_match("/(.*)-([^-]*-[^-]*mga)[1-9].src.rpm/", $rpm, $matches); - if(!$packages[$matches[1]]) { + $package = $matches[1]; + $version = $matches[2]; + if(!$packages[$package]) { $removed[$rpm] = 1; - } elseif ($packages[$matches[1]] > $matches[2]) { - $fixed[$rpm] = 1; - } elseif ($prev_failure[$matches[1]] != 1) { - $broken[$rpm] = 1; + } else { + $stat = stat('/distrib/bootstrap/distrib/cauldron/SRPMS/core/release/'.$packages[$package]); + if ($stat['mtime'] > $end_time) { + $fixed[$rpm] = 1; + } } } } |