commit | 645db44032598af97e91de4b4858d67bc691516e | [log] [tgz] |
---|---|---|
author | seanmccullough <seanmccullough@google.com> | Fri Jun 02 13:05:01 2023 -0700 |
committer | SkCQ <skcq-be@skia-corp.google.com.iam.gserviceaccount.com> | Fri Jun 02 22:14:58 2023 +0000 |
tree | 5beb37134bfd4167b7b52f882be2739c6ede6f72 | |
parent | a13543666007c0437c9fabc537087b753efbc130 [diff] |
[cabe] update checker to assert that all tasks actually completed This should handle cases like tasks that failed due to dead bots, as in the case of this example: https://pinpoint-dot-chromeperf.appspot.com/job/12a96491a60000 The checker would previously report only an error about a single task having a missing "StartedTs" value - when the underlying problem was that the bot was dead and the task never even started. Example run of the cli's `check` command, with this change: ``` bazelisk run //cabe/go/cmd/cabe -- check -pinpoint-job 12a96491a60000 INFO: Analyzed target //cabe/go/cmd/cabe:cabe (0 packages loaded, 0 targets configured). INFO: Found 1 target... Target //cabe/go/cmd/cabe:cabe up-to-date: _bazel_bin/cabe/go/cmd/cabe/cabe_/cabe INFO: Elapsed time: 0.729s, Critical Path: 0.60s INFO: 1 process: 1 internal. INFO: Build completed successfully, 1 total action INFO: Build completed successfully, 1 total action E0602 12:55:31.898637 1362392 analyzer.go:485] runInfoForTask: task "6295c04544a30c10" had no StartedTs value E0602 12:55:31.898687 1362392 analyzer.go:313] RunChecker: processPinpointTryjobTasks returned task "6295c04544a30c10" had no StartedTs value E0602 12:55:31.898693 1362392 check.go:48] run checker error: task "6295c04544a30c10" had no StartedTs value Checker returned 5 findings 0 CheckSwarmingTask "6295c04544a30c10": TaskResult is in state "CANCELED" rather than "COMPLETED" 1 CheckSwarmingTask "6295c04347ed0f10": TaskResult is in state "CANCELED" rather than "COMPLETED" 2 CheckSwarmingTask "6295c03facc77910": TaskResult is in state "CANCELED" rather than "COMPLETED" 3 CheckSwarmingTask "6295c012e5aaf210": TaskResult is in state "CANCELED" rather than "COMPLETED" 4 CheckSwarmingTask "6295c00c9dc9b110": TaskResult is in state "CANCELED" rather than "COMPLETED" ``` So we can now at least see that there were multiple tasks with this problem, and they are due to tasks being CANCELED, rather than just a single task missing a single timestamp field. Bug: b:285597819 Change-Id: Ic93c011ad81647a0a36f3ebbe860d2f5637382ea Reviewed-on: https://skia-review.googlesource.com/c/buildbot/+/706454 Commit-Queue: Sean McCullough <seanmccullough@google.com> Reviewed-by: Leina Sun <sunxiaodi@google.com>
This repo contains infrastructure code for Skia.
The main source code repository is a Git repository hosted at https://skia.googlesource.com/buildbot.git. It is possible to check out this repository directly with git clone
or via go get
.
Using git clone
allows you to work in whatever directory you want. You will still need to set GOPATH in order to build some apps (recommended to put this in a cache dir). E.g.:
$ cd ${WORKDIR} $ git clone https://skia.googlesource.com/buildbot.git $ export GOPATH=${HOME}/.cache/gopath/$(basename ${WORKDIR}) $ mkdir $GOPATH $ cd buildbot
Almost all applications are built with Bazel, and bazelisk is the recommended tool to ensure you have the right version of bazel installed:
go install github.com/bazelbuild/bazelisk@latest go install github.com/bazelbuild/buildtools/buildifier@latest go install github.com/kisielk/errcheck@latest go install golang.org/x/tools/cmd/goimports@latest go install github.com/mikefarah/yq/v4@latest go install go.chromium.org/luci/client/cmd/...@latest
sudo apt-get install jq
bazelisk build --config=mayberemote //...
bazelisk test --config=mayberemote //...
To update generated code run the following in any directory:
go generate ./...
Install Cloud SDK.
Use this command to run the presubmit tests:
./run_unittests --small