]> git.donarmstrong.com Git - wannabuild.git/commitdiff
packages loose one priority point per hour (packages without recorded build time...
authorAndreas Barth <aba@not.so.argh.org>
Fri, 11 Feb 2011 19:41:09 +0000 (19:41 +0000)
committerAndreas Barth <aba@not.so.argh.org>
Fri, 11 Feb 2011 19:41:09 +0000 (19:41 +0000)
bin/wanna-build
etc/yaml/wanna-build.yaml

index 2101f18b1f7e09c47005440bc8401cdc7c06fcb0..91d05df91f8c7c346941d69e1303a6aa0caba1f3 100755 (executable)
@@ -1939,6 +1939,13 @@ sub calculate_prio {
        my $scale = $priomap->{'waitingdays'}->{'scale'} || 1;
        $pkg->{'calprio'} += $days * $scale;
 
+        my $btime = max($pkg->{'anytime'}, $pkg->{'successtime'});
+        my $bhours = defined($btime) ? int($btime/3600) : ($priomap->{'buildhours'}->{'default'} || 2);
+       $bhours = $priomap->{'buildhours'}->{'min'} if $priomap->{'buildhours'}->{'min'} and $bhours < $priomap->{'buildhours'}->{'min'};
+       $bhours = $priomap->{'buildhours'}->{'max'} if $priomap->{'buildhours'}->{'max'} and $bhours > $priomap->{'buildhours'}->{'max'};
+       $scale = $priomap->{'buildhours'}->{'scale'} || 1;
+        $pkg->{'calprio'} -= $bhours * $scale;
+
        $pkg->{'calprio'} += $pkg->{'permbuildpri'} if  $pkg->{'permbuildpri'};
        $pkg->{'calprio'} += $pkg->{'buildpri'} if  $pkg->{'buildpri'};
 
index 9d5f24d15ba323c79277c722ab9fbf8a314a76c1..ebcb22919d9941b17d5a8ef6f3ff1dbe589663e8 100644 (file)
@@ -20,6 +20,10 @@ priority:
         min: 0
         max: 6
         scale: 2
+    buildhours:
+        default: 2
+        min: 0
+        max: 15
 list-order:
     default: PScpsn
     failed: fPcpsn