go

RuleDescription
go_proto_compileGenerates *.go protobuf artifacts
go_grpc_compileGenerates *.go protobuf+gRPC artifacts
go_proto_libraryGenerates *.go protobuf library
go_grpc_libraryGenerates *.go protobuf+gRPC library

go_proto_compile

Generates *.go protobuf artifacts

WORKSPACE

load("@build_stack_rules_proto//go:deps.bzl", "go_proto_compile")

go_proto_compile()

load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies")

go_rules_dependencies()

go_register_toolchains()

BUILD.bazel

load("@build_stack_rules_proto//go:go_proto_compile.bzl", "go_proto_compile")

go_proto_compile(
    name = "person_go_proto",
    deps = ["@build_stack_rules_proto//example/proto:person_proto"],
)

Mandatory Attributes

NameTypeDefaultDescription
depslist<ProtoInfo>[]List of labels that provide a ProtoInfo (such as native.proto_library)

Optional Attributes

NameTypeDefaultDescription
verboseint0The verbosity level. Supported values and results are 1: show command, 2: show command and sandbox after running protoc, 3: show command and sandbox before and after running protoc, 4. show env, command, expected outputs and sandbox before and after running protoc

go_grpc_compile

Generates *.go protobuf+gRPC artifacts

WORKSPACE

load("@build_stack_rules_proto//go:deps.bzl", "go_grpc_compile")

go_grpc_compile()

load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies")

go_rules_dependencies()

go_register_toolchains()

BUILD.bazel

load("@build_stack_rules_proto//go:go_grpc_compile.bzl", "go_grpc_compile")

go_grpc_compile(
    name = "greeter_go_grpc",
    deps = ["@build_stack_rules_proto//example/proto:greeter_grpc"],
)

Mandatory Attributes

NameTypeDefaultDescription
depslist<ProtoInfo>[]List of labels that provide a ProtoInfo (such as native.proto_library)

Optional Attributes

NameTypeDefaultDescription
verboseint0The verbosity level. Supported values and results are 1: show command, 2: show command and sandbox after running protoc, 3: show command and sandbox before and after running protoc, 4. show env, command, expected outputs and sandbox before and after running protoc

go_proto_library

Generates *.go protobuf library

WORKSPACE

load("@build_stack_rules_proto//go:deps.bzl", "go_proto_library")

go_proto_library()

load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies")

go_rules_dependencies()

go_register_toolchains()

BUILD.bazel

load("@build_stack_rules_proto//go:go_proto_library.bzl", "go_proto_library")

go_proto_library(
    name = "person_go_library",
    go_deps = [
        "@com_github_golang_protobuf//ptypes/any:go_default_library",
    ],
    importpath = "github.com/stackb/rules_proto/go/example/go_proto_library/person",
    deps = ["@build_stack_rules_proto//example/proto:person_proto"],
)

Mandatory Attributes

NameTypeDefaultDescription
depslist<ProtoInfo>[]List of labels that provide a ProtoInfo (such as native.proto_library)

Optional Attributes

NameTypeDefaultDescription
verboseint0The verbosity level. Supported values and results are 1: show command, 2: show command and sandbox after running protoc, 3: show command and sandbox before and after running protoc, 4. show env, command, expected outputs and sandbox before and after running protoc
importpathstringNoneImportpath for the generated artifacts

go_grpc_library

Generates *.go protobuf+gRPC library

WORKSPACE

load("@build_stack_rules_proto//go:deps.bzl", "go_grpc_library")

go_grpc_library()

load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies")

go_rules_dependencies()

go_register_toolchains()

BUILD.bazel

load("@build_stack_rules_proto//go:go_grpc_library.bzl", "go_grpc_library")

go_grpc_library(
    name = "greeter_go_library",
    go_deps = [
        "@com_github_golang_protobuf//ptypes/any:go_default_library",
    ],
    importpath = "github.com/stackb/rules_proto/go/example/go_grpc_library/greeter",
    deps = ["@build_stack_rules_proto//example/proto:greeter_grpc"],
)

Mandatory Attributes

NameTypeDefaultDescription
depslist<ProtoInfo>[]List of labels that provide a ProtoInfo (such as native.proto_library)

Optional Attributes

NameTypeDefaultDescription
verboseint0The verbosity level. Supported values and results are 1: show command, 2: show command and sandbox after running protoc, 3: show command and sandbox before and after running protoc, 4. show env, command, expected outputs and sandbox before and after running protoc
importpathstringNoneImportpath for the generated artifacts