Update Bazel BUILD files and go_repositories.bzl with Gazelle.

Change-Id: I3228cd632761fb9a1342ee4bcca4e52cbc672243
Reviewed-on: https://skia-review.googlesource.com/c/buildbot/+/371501
Reviewed-by: Leandro Lovisolo <lovisolo@google.com>
diff --git a/autoroll/go/autoroll-fe/BUILD.bazel b/autoroll/go/autoroll-fe/BUILD.bazel
index ff53fa6..03bf5c1 100644
--- a/autoroll/go/autoroll-fe/BUILD.bazel
+++ b/autoroll/go/autoroll-fe/BUILD.bazel
@@ -18,14 +18,21 @@
         "//go/common",
         "//go/ds",
         "//go/firestore",
+        "//go/gerrit",
+        "//go/git",
+        "//go/gitiles",
         "//go/httputils",
         "//go/login",
         "//go/sklog",
         "//go/util",
+        "@com_github_google_uuid//:uuid",
         "@com_github_gorilla_mux//:mux",
         "@com_google_cloud_go_datastore//:datastore",
         "@org_golang_google_api//option",
+        "@org_golang_google_protobuf//encoding/protojson",
         "@org_golang_google_protobuf//encoding/prototext",
+        "@org_golang_x_oauth2//:oauth2",
+        "@org_golang_x_oauth2//google",
     ],
 )
 
diff --git a/autoroll/go/config/BUILD.bazel b/autoroll/go/config/BUILD.bazel
index aa2ae4a..2435139 100644
--- a/autoroll/go/config/BUILD.bazel
+++ b/autoroll/go/config/BUILD.bazel
@@ -14,9 +14,7 @@
         "//go/skerr",
         "//go/util",
         "@com_github_golang_protobuf//proto:go_default_library",
-        "@io_bazel_rules_go//proto/wkt:duration_go_proto",
         "@org_golang_google_protobuf//reflect/protoreflect",
         "@org_golang_google_protobuf//runtime/protoimpl",
-        "@org_golang_google_protobuf//types/known/durationpb",
     ],
 )
diff --git a/autoroll/go/roller/BUILD.bazel b/autoroll/go/roller/BUILD.bazel
index 2eebb75..da31c04 100644
--- a/autoroll/go/roller/BUILD.bazel
+++ b/autoroll/go/roller/BUILD.bazel
@@ -35,6 +35,7 @@
         "//go/gerrit",
         "//go/github",
         "//go/httputils",
+        "//go/human",
         "//go/metrics2",
         "//go/notifier",
         "//go/rotations",
diff --git a/go/baseapp/BUILD.bazel b/go/baseapp/BUILD.bazel
index f22a3c7..c304f48 100644
--- a/go/baseapp/BUILD.bazel
+++ b/go/baseapp/BUILD.bazel
@@ -1,3 +1,4 @@
+load("//bazel/go:go_test.bzl", "go_test")
 load("@io_bazel_rules_go//go:def.bzl", "go_library")
 
 go_library(
@@ -13,3 +14,13 @@
         "@com_github_unrolled_secure//:secure",
     ],
 )
+
+go_test(
+    name = "baseapp_test",
+    srcs = ["baseapp_test.go"],
+    embed = [":baseapp"],
+    deps = [
+        "//go/testutils/unittest",
+        "@com_github_stretchr_testify//require",
+    ],
+)
diff --git a/go/config/BUILD.bazel b/go/config/BUILD.bazel
index 4cb2f68..fb98d4a 100644
--- a/go/config/BUILD.bazel
+++ b/go/config/BUILD.bazel
@@ -8,7 +8,6 @@
     visibility = ["//visibility:public"],
     deps = [
         "//go/skerr",
-        "//go/sklog",
         "@com_github_flynn_json5//:json5",
     ],
 )
diff --git a/go/gerrit/mocks/BUILD.bazel b/go/gerrit/mocks/BUILD.bazel
index 2bfafe0..0a3bce3 100644
--- a/go/gerrit/mocks/BUILD.bazel
+++ b/go/gerrit/mocks/BUILD.bazel
@@ -5,7 +5,6 @@
     srcs = [
         "GerritInterface.go",
         "generate.go",
-        "simple_mock_gerrit.go",
     ],
     importpath = "go.skia.org/infra/go/gerrit/mocks",
     visibility = ["//visibility:public"],
diff --git a/go_repositories.bzl b/go_repositories.bzl
index 3eb25ff..bedd2ec 100644
--- a/go_repositories.bzl
+++ b/go_repositories.bzl
@@ -661,6 +661,12 @@
         sum = "h1:NfhRXXFDPxcF5Cwo06DzeIaE7uuJtAUhsDwH3LNsjos=",
         version = "v0.0.0-20200620013148-b91950f658ec",
     )
+    go_repository(
+        name = "com_github_dgraph_io_ristretto",
+        importpath = "github.com/dgraph-io/ristretto",
+        sum = "h1:jh22xisGBjrEVnRZ1DVTpBVQm0Xndu8sMl0CWDzSIBI=",
+        version = "v0.0.3",
+    )
 
     go_repository(
         name = "com_github_dgrijalva_jwt_go",
@@ -668,6 +674,12 @@
         sum = "h1:7qlOGliEKZXTDg6OTjfoBKDXWrumCAMpl/TFQ4/5kLM=",
         version = "v3.2.0+incompatible",
     )
+    go_repository(
+        name = "com_github_dgryski_go_farm",
+        importpath = "github.com/dgryski/go-farm",
+        sum = "h1:tdlZCpZ/P9DhczCTSixgIKmwPv6+wP5DGjqLYw5SUiA=",
+        version = "v0.0.0-20190423205320-6a90982ecee2",
+    )
 
     go_repository(
         name = "com_github_dgryski_go_sip13",
diff --git a/golden/cmd/diffcalculator/BUILD.bazel b/golden/cmd/diffcalculator/BUILD.bazel
new file mode 100644
index 0000000..dd5d769
--- /dev/null
+++ b/golden/cmd/diffcalculator/BUILD.bazel
@@ -0,0 +1,49 @@
+load("@io_bazel_rules_go//go:def.bzl", "go_binary", "go_library")
+load("//bazel/go:go_test.bzl", "go_test")
+
+go_library(
+    name = "diffcalculator_lib",
+    srcs = ["diffcalculator.go"],
+    importpath = "go.skia.org/infra/golden/cmd/diffcalculator",
+    visibility = ["//visibility:private"],
+    deps = [
+        "//go/common",
+        "//go/httputils",
+        "//go/metrics2",
+        "//go/skerr",
+        "//go/sklog",
+        "//go/util",
+        "//golden/go/config",
+        "//golden/go/diff",
+        "//golden/go/diff/worker",
+        "//golden/go/sql",
+        "//golden/go/tracing",
+        "//golden/go/types",
+        "@com_github_bradfitz_gomemcache//memcache",
+        "@com_github_jackc_pgx_v4//pgxpool",
+        "@com_google_cloud_go_pubsub//:pubsub",
+        "@com_google_cloud_go_storage//:storage",
+        "@io_opencensus_go//trace",
+    ],
+)
+
+go_binary(
+    name = "diffcalculator",
+    embed = [":diffcalculator_lib"],
+    visibility = ["//visibility:public"],
+)
+
+go_test(
+    name = "diffcalculator_test",
+    srcs = ["diffcalculator_test.go"],
+    embed = [":diffcalculator_lib"],
+    deps = [
+        "//go/paramtools",
+        "//go/skerr",
+        "//go/testutils",
+        "//go/testutils/unittest",
+        "//golden/go/diff/mocks",
+        "//golden/go/types",
+        "@com_github_stretchr_testify//assert",
+    ],
+)
diff --git a/golden/cmd/pubsubtool/BUILD.bazel b/golden/cmd/pubsubtool/BUILD.bazel
new file mode 100644
index 0000000..95868d6
--- /dev/null
+++ b/golden/cmd/pubsubtool/BUILD.bazel
@@ -0,0 +1,19 @@
+load("@io_bazel_rules_go//go:def.bzl", "go_binary", "go_library")
+
+go_library(
+    name = "pubsubtool_lib",
+    srcs = ["pubsubtool.go"],
+    importpath = "go.skia.org/infra/golden/cmd/pubsubtool",
+    visibility = ["//visibility:private"],
+    deps = [
+        "//go/skerr",
+        "//go/sklog",
+        "@com_google_cloud_go_pubsub//:pubsub",
+    ],
+)
+
+go_binary(
+    name = "pubsubtool",
+    embed = [":pubsubtool_lib"],
+    visibility = ["//visibility:public"],
+)
diff --git a/golden/cmd/skiacorrectness/BUILD.bazel b/golden/cmd/skiacorrectness/BUILD.bazel
index af1d1ce..c675b1f 100644
--- a/golden/cmd/skiacorrectness/BUILD.bazel
+++ b/golden/cmd/skiacorrectness/BUILD.bazel
@@ -17,6 +17,8 @@
         "//go/httputils",
         "//go/login",
         "//go/metrics2",
+        "//go/paramtools",
+        "//go/skerr",
         "//go/sklog",
         "//go/util",
         "//go/vcsinfo",
@@ -53,10 +55,12 @@
         "//golden/go/tjstore/fs_tjstore",
         "//golden/go/tjstore/sqltjstore",
         "//golden/go/tracestore/bt_tracestore",
+        "//golden/go/types",
         "//golden/go/warmer",
         "//golden/go/web",
         "@com_github_gorilla_mux//:mux",
         "@com_github_jackc_pgx_v4//pgxpool",
+        "@com_google_cloud_go_pubsub//:pubsub",
         "@org_golang_google_api//storage/v1:storage",
         "@org_golang_google_grpc//:go_default_library",
         "@org_golang_x_oauth2//:oauth2",
diff --git a/golden/go/diff/BUILD.bazel b/golden/go/diff/BUILD.bazel
index 927882d..4efa7d2 100644
--- a/golden/go/diff/BUILD.bazel
+++ b/golden/go/diff/BUILD.bazel
@@ -8,6 +8,7 @@
     visibility = ["//visibility:public"],
     deps = [
         "//go/metrics2",
+        "//go/paramtools",
         "//go/sklog",
         "//go/util",
         "//golden/go/types",
diff --git a/golden/go/diff/mocks/BUILD.bazel b/golden/go/diff/mocks/BUILD.bazel
new file mode 100644
index 0000000..75337e7
--- /dev/null
+++ b/golden/go/diff/mocks/BUILD.bazel
@@ -0,0 +1,17 @@
+load("@io_bazel_rules_go//go:def.bzl", "go_library")
+
+go_library(
+    name = "mocks",
+    srcs = [
+        "Calculator.go",
+        "ImageSource.go",
+        "generate.go",
+    ],
+    importpath = "go.skia.org/infra/golden/go/diff/mocks",
+    visibility = ["//visibility:public"],
+    deps = [
+        "//go/paramtools",
+        "//golden/go/types",
+        "@com_github_stretchr_testify//mock",
+    ],
+)
diff --git a/golden/go/diff/worker/BUILD.bazel b/golden/go/diff/worker/BUILD.bazel
new file mode 100644
index 0000000..a5e4fda
--- /dev/null
+++ b/golden/go/diff/worker/BUILD.bazel
@@ -0,0 +1,50 @@
+load("@io_bazel_rules_go//go:def.bzl", "go_library")
+load("//bazel/go:go_test.bzl", "go_test")
+
+go_library(
+    name = "worker",
+    srcs = ["worker.go"],
+    importpath = "go.skia.org/infra/golden/go/diff/worker",
+    visibility = ["//visibility:public"],
+    deps = [
+        "//go/metrics2",
+        "//go/paramtools",
+        "//go/skerr",
+        "//go/sklog",
+        "//go/util",
+        "//golden/go/diff",
+        "//golden/go/sql",
+        "//golden/go/sql/schema",
+        "//golden/go/types",
+        "@com_github_dgraph_io_ristretto//:ristretto",
+        "@com_github_jackc_pgtype//:pgtype",
+        "@com_github_jackc_pgx_v4//pgxpool",
+        "@com_github_patrickmn_go_cache//:go-cache",
+        "@io_opencensus_go//trace",
+        "@org_golang_x_sync//errgroup",
+    ],
+)
+
+go_test(
+    name = "worker_test",
+    srcs = ["worker_test.go"],
+    embed = [":worker"],
+    deps = [
+        "//go/metrics2",
+        "//go/paramtools",
+        "//go/repo_root",
+        "//go/testutils",
+        "//go/testutils/unittest",
+        "//gold-client/go/mocks",
+        "//golden/go/diff/mocks",
+        "//golden/go/sql",
+        "//golden/go/sql/databuilder",
+        "//golden/go/sql/datakitchensink",
+        "//golden/go/sql/schema",
+        "//golden/go/sql/sqltest",
+        "//golden/go/types",
+        "@com_github_jackc_pgx_v4//pgxpool",
+        "@com_github_stretchr_testify//assert",
+        "@com_github_stretchr_testify//require",
+    ],
+)
diff --git a/golden/go/indexer/BUILD.bazel b/golden/go/indexer/BUILD.bazel
index 026fa94..cdf9f64 100644
--- a/golden/go/indexer/BUILD.bazel
+++ b/golden/go/indexer/BUILD.bazel
@@ -50,6 +50,7 @@
         "//golden/go/clstore",
         "//golden/go/clstore/mocks",
         "//golden/go/code_review",
+        "//golden/go/diff/mocks",
         "//golden/go/diffstore/mocks",
         "//golden/go/digest_counter",
         "//golden/go/expectations",
diff --git a/golden/go/tracing/BUILD.bazel b/golden/go/tracing/BUILD.bazel
new file mode 100644
index 0000000..0654e46
--- /dev/null
+++ b/golden/go/tracing/BUILD.bazel
@@ -0,0 +1,13 @@
+load("@io_bazel_rules_go//go:def.bzl", "go_library")
+
+go_library(
+    name = "tracing",
+    srcs = ["tracing.go"],
+    importpath = "go.skia.org/infra/golden/go/tracing",
+    visibility = ["//visibility:public"],
+    deps = [
+        "//go/skerr",
+        "@io_opencensus_go//trace",
+        "@io_opencensus_go_contrib_exporter_stackdriver//:stackdriver",
+    ],
+)
diff --git a/kube/go/auth-proxy/BUILD.bazel b/kube/go/auth-proxy/BUILD.bazel
index a8c12b0..4607451 100644
--- a/kube/go/auth-proxy/BUILD.bazel
+++ b/kube/go/auth-proxy/BUILD.bazel
@@ -1,3 +1,4 @@
+load("//bazel/go:go_test.bzl", "go_test")
 load("@io_bazel_rules_go//go:def.bzl", "go_binary", "go_library")
 
 go_library(
@@ -19,3 +20,13 @@
     embed = [":auth-proxy_lib"],
     visibility = ["//visibility:public"],
 )
+
+go_test(
+    name = "auth-proxy_test",
+    srcs = ["main_test.go"],
+    embed = [":auth-proxy_lib"],
+    deps = [
+        "//go/testutils/unittest",
+        "@com_github_stretchr_testify//require",
+    ],
+)
diff --git a/perf/go/regression/BUILD.bazel b/perf/go/regression/BUILD.bazel
index 175d0e0..e261d92 100644
--- a/perf/go/regression/BUILD.bazel
+++ b/perf/go/regression/BUILD.bazel
@@ -43,6 +43,7 @@
         "//go/paramtools",
         "//go/testutils/unittest",
         "//go/vec32",
+        "//perf/go/alerts",
         "//perf/go/clustering2",
         "//perf/go/dataframe",
         "//perf/go/dataframe/mocks",
diff --git a/shaders/go/shaders/BUILD.bazel b/shaders/go/shaders/BUILD.bazel
new file mode 100644
index 0000000..131dd8d
--- /dev/null
+++ b/shaders/go/shaders/BUILD.bazel
@@ -0,0 +1,24 @@
+load("@io_bazel_rules_go//go:def.bzl", "go_binary", "go_library")
+
+go_library(
+    name = "shaders_lib",
+    srcs = ["main.go"],
+    importpath = "go.skia.org/infra/shaders/go/shaders",
+    visibility = ["//visibility:private"],
+    deps = [
+        "//go/baseapp",
+        "//go/httputils",
+        "//go/skerr",
+        "//go/sklog",
+        "//scrap/go/client",
+        "//scrap/go/scrap",
+        "@com_github_gorilla_mux//:mux",
+        "@com_github_unrolled_secure//:secure",
+    ],
+)
+
+go_binary(
+    name = "shaders",
+    embed = [":shaders_lib"],
+    visibility = ["//visibility:public"],
+)
diff --git a/shaders/go/ts/BUILD.bazel b/shaders/go/ts/BUILD.bazel
new file mode 100644
index 0000000..56e5edc
--- /dev/null
+++ b/shaders/go/ts/BUILD.bazel
@@ -0,0 +1,20 @@
+load("@io_bazel_rules_go//go:def.bzl", "go_binary", "go_library")
+
+go_library(
+    name = "ts_lib",
+    srcs = ["main.go"],
+    importpath = "go.skia.org/infra/shaders/go/ts",
+    visibility = ["//visibility:private"],
+    deps = [
+        "//go/sklog",
+        "//go/util",
+        "//scrap/go/scrap",
+        "@com_github_skia_dev_go2ts//:go2ts",
+    ],
+)
+
+go_binary(
+    name = "ts",
+    embed = [":ts_lib"],
+    visibility = ["//visibility:public"],
+)
diff --git a/skottie/go/skottie/BUILD.bazel b/skottie/go/skottie/BUILD.bazel
index db14de6..c06ff53 100644
--- a/skottie/go/skottie/BUILD.bazel
+++ b/skottie/go/skottie/BUILD.bazel
@@ -6,9 +6,9 @@
     importpath = "go.skia.org/infra/skottie/go/skottie",
     visibility = ["//visibility:private"],
     deps = [
-        "//go/allowed",
         "//go/auth",
         "//go/common",
+        "//go/config",
         "//go/httputils",
         "//go/login",
         "//go/skerr",