Adds a `--config go-short` flag to be used in conjunction to `bazel test
//...` to provide a convenient way of running all short go tests
locally.
TODO JH:
- [ ] update the `go/bazel` link when merging this.
## Test plan
<!-- All pull requests REQUIRE a test plan:
https://docs.sourcegraph.com/dev/background-information/testing_principles
-->
CI + local preview for the docs.
Rather than tagging all `go_test` rules with `timeout = "short"`, we
leverage the wrapped `go_test` macro we already have to set the timeout
to `"short"` unless specified otherwise.
And I've added explicitly the `timeout = "moderate"` on the slower
tests. Only a few warnings remains, but they're unrelated to Go and will
be taken on in another PR.
@keegancsmith before you ask, yes, that's where I'll put an additional
tag for the go unit test as we discussed earlier :) I'll cover the doc
part of this PR then, as I'll extract some Go stuff into its own page.
This PR fixes about 30 warnings.
## Test plan
<!-- All pull requests REQUIRE a test plan:
https://docs.sourcegraph.com/dev/background-information/testing_principles
-->
CI, observing that we don't see the warnings anymore.
The previous approach to enable race detection was too radical and
accidently led to build our binaries with the race flage enabled, which
caused issues when building images down the line.
This happened because putting a `test --something` in bazelrc also sets
it on `build` which is absolutely not what we wanted. Usually folks get
this one working by having a `--stamp` config setting that fixes this
when releasing binaries, which we don't at this stage, as we're still
learning Bazel.
Luckily, this was caught swiftly. The current approach insteads takes a
more granular approach, which makes the `go_test` rule uses our own
variant, which injects the `race = "on"` attribute, but only on
`go_test`.
## Test plan
<!-- All pull requests REQUIRE a test plan:
https://docs.sourcegraph.com/dev/background-information/testing_principles
-->
CI, being a main-dry-run, this will cover the container building jobs,
which were the ones failing.
---------
Co-authored-by: Alex Ostrikov <alex.ostrikov@sourcegraph.com>