mirror of
https://github.com/dart-lang/sdk
synced 2024-10-03 12:21:36 +00:00
83956f4059
This reverts commit 9fd914e450
.
Reason for revert: There needs to be a check if this is an experimental job, or a tryjob, and accept blank fields in that case.
I meant to put it in if I made the code return 1, but forgot.
Even in this case, the results need to be returned, for tryjobs to work.
Original change's description:
> [infra] Add error check when adding builder data to test results.
>
> Change-Id: Ia59b8dcb711839e90d222679362d145b332c45b2
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/107510
> Reviewed-by: Jonas Termansen <sortie@google.com>
TBR=whesse@google.com,sortie@google.com
Change-Id: I37a48d78265e9630a7c562a46083e5234abba1aa
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/107512
Reviewed-by: William Hesse <whesse@google.com>
Commit-Queue: William Hesse <whesse@google.com>
56 lines
2.1 KiB
Dart
56 lines
2.1 KiB
Dart
// Copyright (c) 2019, the Dart project authors. Please see the AUTHORS file
|
|
// for details. All rights reserved. Use of this source code is governed by a
|
|
// BSD-style license that can be found in the LICENSE file.
|
|
|
|
// Add fields with data about the test run and the commit tested, and
|
|
// with the result on the last build tested, to the test results file.
|
|
|
|
import 'dart:convert';
|
|
import 'dart:io';
|
|
|
|
import 'results.dart';
|
|
|
|
main(List<String> args) async {
|
|
final resultsPath = args[0];
|
|
final priorResultsPath = args[1];
|
|
final flakyPath = args[2];
|
|
final priorFlakyPath = args[3];
|
|
final builderName = args[4];
|
|
final buildNumber = args[5];
|
|
final commitTime = int.parse(args[6]);
|
|
final commitHash = args[7];
|
|
final newResultsPath = args[8];
|
|
// Load the input and the flakiness data if specified.
|
|
final results = await loadResultsMap(resultsPath);
|
|
final priorResults = await loadResultsMap(priorResultsPath);
|
|
final flakes = await loadResultsMap(flakyPath);
|
|
final priorFlakes = await loadResultsMap(priorFlakyPath);
|
|
|
|
for (final String key in results.keys) {
|
|
final Map<String, dynamic> result = results[key];
|
|
final Map<String, dynamic> priorResult = priorResults[key];
|
|
final Map<String, dynamic> flaky = flakes[key];
|
|
final Map<String, dynamic> priorFlaky = priorFlakes[key];
|
|
result['commit_hash'] = commitHash;
|
|
result['commit_time'] = commitTime;
|
|
result['build_number'] = buildNumber;
|
|
result['builder_name'] = builderName;
|
|
result['flaky'] = (flaky != null);
|
|
result['previous_flaky'] = (priorFlaky != null);
|
|
if (priorResult != null) {
|
|
result['previous_result'] = priorResult['result'];
|
|
result['previous_commit_hash'] = priorResult['commit_hash'];
|
|
result['previous_commit_time'] = priorResult['commit_time'];
|
|
result['previous_build_number'] = priorResult['build_number'];
|
|
}
|
|
result['changed'] = (result['result'] != result['previous_result'] ||
|
|
result['flaky'] != result['previous_flaky']);
|
|
}
|
|
final sink = new File(newResultsPath).openWrite();
|
|
final sorted = results.keys.toList()..sort();
|
|
for (final key in sorted) {
|
|
sink.writeln(jsonEncode(results[key]));
|
|
}
|
|
sink.close();
|
|
}
|