1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135
|
load("//build:build.bzl", "go_custom_test")
load("@io_bazel_rules_go//go:def.bzl", "go_library")
load("//build:proto.bzl", "go_proto_generate")
go_proto_generate(
src = "grpctool.proto",
deps = [
"//internal/tool/grpctool/automata:proto",
"//internal/tool/prototool:proto",
"@com_github_envoyproxy_protoc_gen_validate//validate:validate_proto",
"@com_google_protobuf//:any_proto",
],
)
go_library(
name = "grpctool",
srcs = [
"client_limiting.go",
"client_validator.go",
"dial_listener.go",
"grpctool.pb.go",
"grpctool.pb.validate.go",
"grpctool_extra.go",
"header_metadata.go",
"http_stream_vititors.go",
"inbound_grpc_to_outbound_http.go",
"inbound_http_to_outbound_grpc.go",
"inbound_stream_to_outbound_stream.go",
"jwt_creds.go",
"jwt_server_auth.go",
"max_conn_age.go",
"pool.go",
"pool_self.go",
"raw_codec.go",
"server_limiting.go",
"stream_visitor.go",
"stream_visitor_lazy.go",
"stream_visitor_options.go",
"token_creds.go",
"tools.go",
],
importpath = "gitlab.com/gitlab-org/cluster-integration/gitlab-agent/v16/internal/tool/grpctool",
visibility = ["//:__subpackages__"],
deps = [
"//internal/api",
"//internal/tool/errz",
"//internal/tool/grpctool/automata",
"//internal/tool/httpz",
"//internal/tool/logz",
"//internal/tool/mathz",
"//internal/tool/memz",
"//internal/tool/prototool",
"@com_github_ash2k_stager//:stager",
"@com_github_envoyproxy_protoc_gen_validate//validate",
"@com_github_golang_jwt_jwt_v5//:jwt",
"@com_github_grpc_ecosystem_go_grpc_middleware_v2//interceptors/auth",
"@io_k8s_utils//clock",
"@org_golang_google_grpc//:grpc",
"@org_golang_google_grpc//codes",
"@org_golang_google_grpc//credentials",
"@org_golang_google_grpc//credentials/insecure",
"@org_golang_google_grpc//encoding/proto",
"@org_golang_google_grpc//keepalive",
"@org_golang_google_grpc//metadata",
"@org_golang_google_grpc//stats",
"@org_golang_google_grpc//status",
"@org_golang_google_protobuf//proto",
"@org_golang_google_protobuf//reflect/protoreflect",
"@org_golang_google_protobuf//reflect/protoregistry",
"@org_golang_google_protobuf//runtime/protoimpl",
"@org_golang_google_protobuf//types/descriptorpb",
"@org_golang_google_protobuf//types/known/anypb",
"@org_uber_go_zap//:zap",
],
)
go_custom_test(
name = "grpctool_test",
srcs = [
"client_validator_test.go",
"dial_listener_test.go",
"grpc_test.go",
"grpctool_extra_test.go",
"header_metadata_test.go",
"inbound_grpc_to_outbound_http_test.go",
"inbound_http_to_outbound_grpc_test.go",
"jwt_creds_test.go",
"jwt_server_auth_test.go",
"max_conn_age_wstunnel_test.go",
"pool_test.go",
"raw_codec_test.go",
"server_limiting_test.go",
"stream_visitor_test.go",
"tools_test.go",
],
data = glob(["testdata/**"]),
embed = [":grpctool"],
deps = [
"//internal/tool/grpctool/test",
"//internal/tool/httpz",
"//internal/tool/prototool",
"//internal/tool/testing/matcher",
"//internal/tool/testing/mock_kubernetes_api",
"//internal/tool/testing/mock_rpc",
"//internal/tool/testing/mock_stdlib",
"//internal/tool/testing/mock_tool",
"//internal/tool/testing/testhelpers",
"//internal/tool/tlstool",
"//internal/tool/wstunnel",
"@com_github_golang_jwt_jwt_v5//:jwt",
"@com_github_golang_mock//gomock",
"@com_github_google_go_cmp//cmp",
"@com_github_stretchr_testify//assert",
"@com_github_stretchr_testify//require",
"@io_k8s_apimachinery//pkg/util/rand",
"@io_k8s_apimachinery//pkg/util/wait",
"@io_k8s_utils//clock/testing",
"@io_nhooyr_websocket//:websocket",
"@org_golang_google_grpc//:grpc",
"@org_golang_google_grpc//codes",
"@org_golang_google_grpc//credentials",
"@org_golang_google_grpc//credentials/insecure",
"@org_golang_google_grpc//encoding",
"@org_golang_google_grpc//keepalive",
"@org_golang_google_grpc//metadata",
"@org_golang_google_grpc//stats",
"@org_golang_google_grpc//status",
"@org_golang_google_protobuf//proto",
"@org_golang_google_protobuf//reflect/protoreflect",
"@org_golang_google_protobuf//testing/protocmp",
"@org_golang_google_protobuf//types/known/anypb",
"@org_uber_go_zap//:zap",
"@org_uber_go_zap//zaptest",
],
)
|