catalog

package
v1.0.0 Latest Latest
Warning

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

Go to latest
Published: Feb 21, 2024 License: Apache-2.0 Imports: 13 Imported by: 0

Documentation

Index

Constants

View Source
const ConfigSectionKey = "catalog-cache"

Variables

This section is empty.

Functions

func NewCatalogClient

func NewCatalogClient(ctx context.Context, authOpt ...grpc.DialOption) (catalog.Client, error)

Types

type Config

type Config struct {
	Type         DiscoveryType   `json:"type" pflag:"\"noop\", Catalog Implementation to use"`
	Endpoint     string          `json:"endpoint" pflag:"\"\", Endpoint for catalog service"`
	Insecure     bool            `json:"insecure" pflag:"false, Use insecure grpc connection"`
	MaxCacheAge  config.Duration `json:"max-cache-age" pflag:", Cache entries past this age will incur cache miss. 0 means cache never expires"`
	UseAdminAuth bool            `json:"use-admin-auth" pflag:"false, Use the same gRPC credentials option as the kozmoadmin client"`

	// Set the gRPC service config formatted as a json string https://github.com/grpc/grpc/blob/master/doc/service_config.md
	// eg. {"loadBalancingConfig": [{"round_robin":{}}], "methodConfig": [{"name":[{"service": "foo", "method": "bar"}, {"service": "baz"}], "timeout": "1.000000001s"}]}
	// find the full schema here https://github.com/grpc/grpc-proto/blob/master/grpc/service_config/service_config.proto#L625
	// Note that required packages may need to be preloaded to support certain service config. For example "google.golang.org/grpc/balancer/roundrobin" should be preloaded to have round-robin policy supported.
	DefaultServiceConfig string `json:"default-service-config" pflag:"\"\", Set the default service config for the catalog gRPC client"`
}

func GetConfig

func GetConfig() *Config

GetConfig gets loaded config for Discovery

func (Config) GetPFlagSet

func (cfg Config) GetPFlagSet(prefix string) *pflag.FlagSet

GetPFlagSet will return strongly types pflags for all fields in Config and its nested types. The format of the flags is json-name.json-sub-name... etc.

type DiscoveryType

type DiscoveryType = string
const (
	NoOpDiscoveryType DiscoveryType = "noop"
	DataCatalogType   DiscoveryType = "datacatalog"
)

type NOOPCatalog

type NOOPCatalog struct {
}

func (NOOPCatalog) Get

func (NOOPCatalog) GetOrExtendReservation

func (n NOOPCatalog) GetOrExtendReservation(_ context.Context, _ catalog.Key, _ string, _ time.Duration) (*datacatalog.Reservation, error)

func (NOOPCatalog) Put

func (NOOPCatalog) ReleaseReservation

func (n NOOPCatalog) ReleaseReservation(_ context.Context, _ catalog.Key, _ string) error

func (NOOPCatalog) Update

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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