grpc

package
v0.15.7 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 15, 2021 License: Apache-2.0 Imports: 21 Imported by: 1

Documentation

Overview

Package grpc provides gRPC utility functions, complementing the more common ones in the github.com/grpc/grpc-go package

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetGRPCClientConn added in v0.11.0

func GetGRPCClientConn(ctx context.Context, name string, opts *Options) (*grpc.ClientConn, error)

GetGRPCClientConn returns a gRPC client connection for the given name. If a connection for that name has already been established the existing connection will be returned. If any options change for that connection, the existing connection will be closed and a new one established.

func NewGRPCClientConn

func NewGRPCClientConn(ctx context.Context, opts *Options, other ...grpc.DialOption) (*grpc.ClientConn, error)

NewGRPCClientConn returns a new gRPC pomerium service client connection.

func NewHealthCheckServer added in v0.15.0

func NewHealthCheckServer() grpc_health.HealthServer

NewHealthCheckServer returns a basic health checker

Types

type Options

type Options struct {
	// Addrs is the location of the service.  e.g. "service.corp.example:8443"
	Addrs []*url.URL
	// OverrideCertificateName overrides the server name used to verify the hostname on the
	// returned certificates from the server. gRPC internals also use it to override the virtual
	// hosting name if it is set.
	OverrideCertificateName string
	// CA specifies the base64 encoded TLS certificate authority to use.
	CA string
	// CAFile specifies the TLS certificate authority file to use.
	CAFile string
	// RequestTimeout specifies the timeout for individual RPC calls
	RequestTimeout time.Duration
	// ClientDNSRoundRobin enables or disables DNS resolver based load balancing
	ClientDNSRoundRobin bool

	// WithInsecure disables transport security for this ClientConn.
	// Note that transport security is required unless WithInsecure is set.
	WithInsecure bool

	// InstallationID specifies the installation id for telemetry exposition.
	InstallationID string

	// ServiceName specifies the service name for telemetry exposition
	ServiceName string

	// SignedJWTKey is the JWT key to use for signing a JWT attached to metadata.
	SignedJWTKey []byte
}

Options contains options for connecting to a pomerium rpc service.

Directories

Path Synopsis
Package config contains protobuf definitions for config.
Package config contains protobuf definitions for config.
Package crypt contains cryptographic protobuf messages.
Package crypt contains cryptographic protobuf messages.
Package databroker contains databroker protobuf definitions.
Package databroker contains databroker protobuf definitions.
mock_databroker
Package mock_databroker is a generated GoMock package.
Package mock_databroker is a generated GoMock package.
Package directory contains protobuf types for directory users.
Package directory contains protobuf types for directory users.
Package session contains protobuf types for sessions.
Package session contains protobuf types for sessions.
Package user contains protobuf types for users.
Package user contains protobuf types for users.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL