blob: ba234e7b66889e42d1b96b350e518d2c53f4463a [file] [log] [blame]
Leopold Schabel5c80aca2019-10-22 15:48:58 +02001load("@bazel_gazelle//:def.bzl", "gazelle")
Leopold Schabeleff72172020-01-04 15:07:52 +01002load("@io_bazel_rules_go//go:def.bzl", "go_path", "nogo")
Leopold Schabel5c80aca2019-10-22 15:48:58 +02003
Hendrik Hofstadt0d7c91e2019-10-23 21:44:47 +02004# gazelle:prefix git.monogon.dev/source/nexantic.git
5# gazelle:exclude core/generated
Leopold Schabel60a85b62019-11-17 19:12:41 +01006# gazelle:exclude tools.go
Lorenz Brun04904962019-11-11 15:21:14 +01007# gazelle:exclude core/cmd/kube-controlplane
Leopold Schabel5c80aca2019-10-22 15:48:58 +02008gazelle(name = "gazelle")
Leopold Schabeld868d692019-11-17 17:28:29 +01009
10# Shortcut for the Go SDK
11alias(
12 name = "go",
13 actual = "@go_sdk//:bin/go",
Leopold Schabela4516f92019-12-04 20:27:05 +000014 visibility = ["//visibility:public"],
15)
16
17# Shortcut for kubectl
18alias(
19 name = "kubectl",
20 actual = "@kubernetes//cmd/kubectl:kubectl",
21 visibility = ["//visibility:public"],
Leopold Schabeld868d692019-11-17 17:28:29 +010022)
Leopold Schabel60a85b62019-11-17 19:12:41 +010023
24# nogo linters
25nogo(
26 name = "nogo_vet",
27 config = "nogo_config.json",
28 visibility = ["//visibility:public"],
29 # These deps enable the analyses equivalent to running `go vet`.
30 # Passing vet = True enables only a tiny subset of these (the ones
31 # that are always correct).
32 #
33 # You can see the what `go vet` does by running `go doc cmd/vet`.
34 deps = [
35 "@org_golang_x_tools//go/analysis/passes/asmdecl:go_tool_library",
36 "@org_golang_x_tools//go/analysis/passes/assign:go_tool_library",
37 "@org_golang_x_tools//go/analysis/passes/atomic:go_tool_library",
38 "@org_golang_x_tools//go/analysis/passes/bools:go_tool_library",
39 "@org_golang_x_tools//go/analysis/passes/buildtag:go_tool_library",
40 "@org_golang_x_tools//go/analysis/passes/cgocall:go_tool_library",
41 "@org_golang_x_tools//go/analysis/passes/composite:go_tool_library",
42 "@org_golang_x_tools//go/analysis/passes/copylock:go_tool_library",
43 "@org_golang_x_tools//go/analysis/passes/httpresponse:go_tool_library",
44 "@org_golang_x_tools//go/analysis/passes/loopclosure:go_tool_library",
45 "@org_golang_x_tools//go/analysis/passes/lostcancel:go_tool_library",
46 "@org_golang_x_tools//go/analysis/passes/nilfunc:go_tool_library",
47 "@org_golang_x_tools//go/analysis/passes/printf:go_tool_library",
48 "@org_golang_x_tools//go/analysis/passes/shift:go_tool_library",
49 "@org_golang_x_tools//go/analysis/passes/stdmethods:go_tool_library",
50 "@org_golang_x_tools//go/analysis/passes/structtag:go_tool_library",
51 "@org_golang_x_tools//go/analysis/passes/tests:go_tool_library",
52 "@org_golang_x_tools//go/analysis/passes/unmarshal:go_tool_library",
53 "@org_golang_x_tools//go/analysis/passes/unreachable:go_tool_library",
54 "@org_golang_x_tools//go/analysis/passes/unsafeptr:go_tool_library",
55 "@org_golang_x_tools//go/analysis/passes/unusedresult:go_tool_library",
56 ],
57)
Leopold Schabeleff72172020-01-04 15:07:52 +010058
59# Synthesize a fake GOPATH in bazel-bin/gopath for IDEs without Bazel support
60go_path(
61 name = "gopath",
62 mode = "link",
63 deps = [
Leopold Schabelf1d34d32020-01-07 14:15:44 +010064 # All top-level Go targets that need IDE integration need to be listed here
Leopold Schabeleff72172020-01-04 15:07:52 +010065 "//core/cmd/init",
66 ],
67)