61 - sources_short (VALUE) |
61 - sources_short (VALUE) |
62 - envinfo (TOOL,VERSION) |
62 - envinfo (TOOL,VERSION) |
63 - failure (CATEGORY,COUNT) |
63 - failure (CATEGORY,COUNT) |
64 - report (NAME,URL,TYPE) |
64 - report (NAME,URL,TYPE) |
65 - content (NAME,URL,REVISION) |
65 - content (NAME,URL,REVISION) |
|
66 - baseline (TYPE,PATH) |
66 - label (VALUE) |
67 - label (VALUE) |
67 _EOH |
68 _EOH |
68 exit(0); |
69 exit(0); |
69 } |
70 } |
70 |
71 |
204 { |
206 { |
205 print "ERROR: Could not understand value of content: \"$value\"\n"; |
207 print "ERROR: Could not understand value of content: \"$value\"\n"; |
206 return 1; |
208 return 1; |
207 } |
209 } |
208 } |
210 } |
|
211 elsif ($attr =~ /^(baseline)$/i) |
|
212 { |
|
213 $attr = lc($attr); |
|
214 if ($value =~ /([^,]*),([^,]*)/) |
|
215 { |
|
216 my $type = $1; |
|
217 my $path = $2; |
|
218 |
|
219 if (!$type || !$path) |
|
220 { |
|
221 print "ERROR: Type or path empty: \"$value\"\n"; |
|
222 return 1; |
|
223 } |
|
224 print " found ($type,$path) for table 'baselines'\n" if ($verbose); |
|
225 push(@{$baselines}, {type=>$type, path=>$path}); |
|
226 } |
|
227 else |
|
228 { |
|
229 print "ERROR: Could not understand value of baseline: \"$value\"\n"; |
|
230 return 1; |
|
231 } |
|
232 } |
209 elsif ($attr =~ /^(label)$/i) |
233 elsif ($attr =~ /^(label)$/i) |
210 { |
234 { |
211 print " found ($attr,$value) for table 'labels'\n" if ($verbose); |
235 print " found ($attr,$value) for table 'labels'\n" if ($verbose); |
212 push(@{$labels}, {label=>$value}); |
236 push(@{$labels}, {label=>$value}); |
213 } |
237 } |
328 print " execute '$name, $url, $revision'\n" if ($verbose); |
352 print " execute '$name, $url, $revision'\n" if ($verbose); |
329 $query->execute($name, $url, $revision) |
353 $query->execute($name, $url, $revision) |
330 or print "WARNING: Couldn't execute insert into content ($name,$url,$revision): " . $db->errstr() . "\n" if (!$dryrun); |
354 or print "WARNING: Couldn't execute insert into content ($name,$url,$revision): " . $db->errstr() . "\n" if (!$dryrun); |
331 } |
355 } |
332 } |
356 } |
|
357 if (@{$baselines}) |
|
358 { |
|
359 print " prepare_cached 'insert into baselines (build_id,type,path) values ($newbuildid,?,?)'\n" if ($verbose); |
|
360 my $query = $db->prepare_cached("insert into baselines (build_id,type,path) values ($newbuildid,?,?)") |
|
361 or die("Couldn't prepare query insert into baselines: " . $db->errstr()) if (!$dryrun); |
|
362 |
|
363 for my $entry (@{$baselines}) |
|
364 { |
|
365 my $type = $entry->{type}; |
|
366 my $path = $entry->{path}; |
|
367 |
|
368 print " execute '$type, $path'\n" if ($verbose); |
|
369 $query->execute($type, $path) |
|
370 or print "WARNING: Couldn't execute insert into baselines ($type,$path): " . $db->errstr() . "\n" if (!$dryrun); |
|
371 } |
|
372 } |
333 if (@{$labels}) |
373 if (@{$labels}) |
334 { |
374 { |
335 print " prepare_cached 'insert into labels (build_id,label) values ($newbuildid,?)'\n" if ($verbose); |
375 print " prepare_cached 'insert into labels (build_id,label) values ($newbuildid,?)'\n" if ($verbose); |
336 my $query = $db->prepare_cached("insert into labels (build_id,label) values ($newbuildid,?)") |
376 my $query = $db->prepare_cached("insert into labels (build_id,label) values ($newbuildid,?)") |
337 or die("Couldn't prepare query insert into labels: " . $db->errstr()) if (!$dryrun); |
377 or die("Couldn't prepare query insert into labels: " . $db->errstr()) if (!$dryrun); |
466 print " execute '$name,$url,$revision'\n" if ($verbose); |
506 print " execute '$name,$url,$revision'\n" if ($verbose); |
467 $query->execute($name, $url, $revision) |
507 $query->execute($name, $url, $revision) |
468 or print "WARNING: Couldn't execute insert into content ($name,$url,$revision): " . $db->errstr() . "\n" if (!$dryrun); |
508 or print "WARNING: Couldn't execute insert into content ($name,$url,$revision): " . $db->errstr() . "\n" if (!$dryrun); |
469 } |
509 } |
470 } |
510 } |
|
511 if (@{$baselines}) |
|
512 { |
|
513 print " prepare 'delete from baselines where build_id=$id'\n" if ($verbose); |
|
514 my $delete_query = $db->prepare("delete from baselines where build_id=$id") |
|
515 or die("Couldn't prepare query delete from baselines: " . $db->errstr()) if (!$dryrun); |
|
516 |
|
517 print " execute ''\n" if ($verbose); |
|
518 $delete_query->execute() |
|
519 or print "WARNING: Couldn't execute delete from baselines: " . $db->errstr() . "\n" if (!$dryrun); |
|
520 |
|
521 print " prepare 'insert into baselines (build_id,type,path) values ($id,?,?)'\n" if ($verbose); |
|
522 my $query = $db->prepare_cached("insert into baselines (build_id,type,path) values ($id,?,?)") |
|
523 or die("Couldn't prepare query insert into baselines: " . $db->errstr()) if (!$dryrun); |
|
524 |
|
525 for my $entry (@{$baselines}) |
|
526 { |
|
527 my $type = $entry->{type}; |
|
528 my $path = $entry->{path}; |
|
529 |
|
530 print " execute '$type,$path'\n" if ($verbose); |
|
531 $query->execute($type, $path) |
|
532 or print "WARNING: Couldn't execute insert into baselines ($type,$path): " . $db->errstr() . "\n" if (!$dryrun); |
|
533 } |
|
534 } |
471 if (@{$labels}) |
535 if (@{$labels}) |
472 { |
536 { |
473 print " prepare 'delete from labels where build_id=$id'\n" if ($verbose); |
537 print " prepare 'delete from labels where build_id=$id'\n" if ($verbose); |
474 my $delete_query = $db->prepare("delete from labels where build_id=$id") |
538 my $delete_query = $db->prepare("delete from labels where build_id=$id") |
475 or die("Couldn't prepare query delete from labels: " . $db->errstr()) if (!$dryrun); |
539 or die("Couldn't prepare query delete from labels: " . $db->errstr()) if (!$dryrun); |