mirror of
https://github.com/sourcegraph/sourcegraph.git
synced 2026-02-06 10:31:54 +00:00
Closes [DINF-51](https://linear.app/sourcegraph/issue/DINF-51/failed-back-compat-doesnt-count-towards-branch-locking-quota) ## Context If a back-compat step on main fails, the build is marked as having failed. However, we don't treat that as a failure in build-tracker, resulting in no #buildkite-main post and not counting towards failed build quota for locking main. The reason why this was happening is that the Backcompat build wasn't linked to the main Sourcegraph build in anyway. However, when a backcompat fails the main build reflects the status of this failure, but we do not use this field when determining the status of a build, so it doesn't work for our use case.  We [instead do a walkthrough of all the jobs associated with a build to figure out](https://sourcegraph.sourcegraph.com/github.com/sourcegraph/sourcegraph/-/blob/dev/build-tracker/main.go?L349-372) if the build has failed, fixed or is passing. With this logic, it means we have to link the steps from child builds that a particular build triggers to it's parent. ## Test plan * Create a build that'll have backcompat failing * The build tracker event associated with the main build will be reported with a state of failed to buildkite.  ## Changelog <!-- OPTIONAL; info at https://www.notion.so/sourcegraph/Writing-a-changelog-entry-dd997f411d524caabf0d8d38a24a878c --> |
||
|---|---|---|
| .. | ||
| BUILD.bazel | ||
| main.go | ||
| OWNERS | ||
| README.md | ||
| run.sh | ||
Bkstats
A crude script to compute simple "red time" statistics from our Buildkite pipelines and post them to Slack. Owned by the DevInfra team.
"Red time" is defined to be the duration from the end of a failed build to the end of the first subsequent green build.
For more detailed analyses over longer periods of time, check out buildchecker history.
Usage
$ go run main.go -buildkite.token $BUILDKITE_API_TOKEN -date 2021-10-22 -buildkite.pipeline sourcegraph
# ...
On 2021-10-22, the pipeline was red for 1h8m32.856s
Buildkite API token
- Go over your personal settings
- Create a new token with the following permissions:
- Check
sourcegraphorganization read_buildsread_pipelines