From ed760b3ef9ed44d2346e4c9358e530af74dbe3ae Mon Sep 17 00:00:00 2001 From: Romain d'Alverny Date: Tue, 4 Sep 2012 13:42:14 +0000 Subject: new publish_stats_headers() function --- lib.php | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) (limited to 'lib.php') diff --git a/lib.php b/lib.php index 5feb424..e00ed27 100644 --- a/lib.php +++ b/lib.php @@ -134,3 +134,39 @@ function timesort($a, $b) return 0; } } + + +/** + * Publish BS stats as HTTP headers for remote services to adapt. + * + * @param array $stats + * @param array $last_package + * + * @return void +*/ +function publish_stats_headers($stats, $last_package = null) +{ + foreach ($stats as $k => $v) { + header("X-BS-Queue-$k: $v"); + } + + $w = $stats['todo'] - 10; + if ($w < 0) { + $w = 0; + } + $w = $w * 60; + header("X-BS-Throttle: $w"); + + if (!is_null($last_package)) { + header("X-BS-Package-Status: ".$last_package['type']); + } + + $buildtime_total = $buildtime_total / 60; + header(sprintf('X-BS-Buildtime: %d', round($buildtime_total))); + + + $buildtime_avg = ($build_count == 0) ? + 0 : + round($buildtime_total / $build_count, 2); + header(sprintf('X-BS-Buildtime-Average: %5.2f', $buildtime_avg)); +} -- cgit v1.2.1