sync

package
v0.10.4 Latest Latest
Warning

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

Go to latest
Published: Oct 28, 2024 License: Apache-2.0 Imports: 1 Imported by: 8

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type DataSync

type DataSync struct {
	FlagData string
	Source   string
	Selector string
	Type
}

DataSync is the data contract between Runtime and sync implementations

type ISync

type ISync interface {
	// Init is used by the sync provider to initialize its data structures and external dependencies.
	Init(ctx context.Context) error

	// Sync is the contract between Runtime and sync implementation.
	// Note that, it is expected to return the first data sync as soon as possible to fill the store.
	Sync(ctx context.Context, dataSync chan<- DataSync) error

	// ReSync is used to fetch the full flag configuration from the sync
	// This method should trigger an ALL sync operation then exit
	ReSync(ctx context.Context, dataSync chan<- DataSync) error

	// IsReady shall return true if the provider is ready to communicate with the Runtime
	IsReady() bool
}

ISync implementations watch for changes in the flag sources (HTTP backend, local file, K8s CRDs ...),fetch the latest value and communicate to the Runtime with DataSync channel

type SourceConfig

type SourceConfig struct {
	URI      string `json:"uri"`
	Provider string `json:"provider"`

	BearerToken string `json:"bearerToken,omitempty"`
	AuthHeader  string `json:"authHeader,omitempty"`
	CertPath    string `json:"certPath,omitempty"`
	TLS         bool   `json:"tls,omitempty"`
	ProviderID  string `json:"providerID,omitempty"`
	Selector    string `json:"selector,omitempty"`
	Interval    uint32 `json:"interval,omitempty"`
	MaxMsgSize  int    `json:"maxMsgSize,omitempty"`
}

SourceConfig is configuration option for flagd. This maps to startup parameter sources

type Type

type Type int
const (
	// ALL - All flags of sync provider. This is the default if unset due to primitive default
	ALL Type = iota
	// ADD - Additional flags from sync provider
	ADD
	// UPDATE - Update for flag(s) previously provided
	UPDATE
	// DELETE - Delete for flag(s) previously provided
	DELETE
)

Type of the sync operation

func (Type) String

func (t Type) String() string

Directories

Path Synopsis
mock
Package middlewaremocksyncbuildermock is a generated GoMock package.
Package middlewaremocksyncbuildermock is a generated GoMock package.
credentials/mock
Package credendialsmock is a generated GoMock package.
Package credendialsmock is a generated GoMock package.
mock
Package grpcmock is a generated GoMock package.
Package grpcmock is a generated GoMock package.
mock
Package syncmock is a generated GoMock package.
Package syncmock is a generated GoMock package.

Jump to

Keyboard shortcuts

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