compassconnection

package
v0.0.0-...-6cc5b44 Latest Latest
Warning

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

Go to latest
Published: Apr 15, 2024 License: Apache-2.0 Imports: 28 Imported by: 0

Documentation

Index

Constants

View Source
const (
	ConnectorTokenHeader = "Connector-Token"
)
View Source
const (
	DefaultCompassConnectionName = "compass-connection"
)

Variables

This section is empty.

Functions

func InitCompassConnectionController

func InitCompassConnectionController(
	mgr manager.Manager,
	supervisior Supervisor,
	minimalConfigSyncTime time.Duration,
	configProvider config.Provider) error

Types

type Client

type Client interface {
	Get(ctx context.Context, key client.ObjectKey, obj client.Object, opts ...client.GetOption) error
	Update(ctx context.Context, obj client.Object, opts ...client.UpdateOption) error
	Delete(ctx context.Context, obj client.Object, opts ...client.DeleteOption) error
}

type Connector

type Connector interface {
	EstablishConnection(ctx context.Context, connectorURL, token string) (EstablishedConnection, error)
	MaintainConnection(ctx context.Context, renewCert bool, credentialsExist bool) (*certificates.Credentials, v1alpha1.ManagementInfo, error)
}

func NewCompassConnector

func NewCompassConnector(
	csrProvider certificates.CSRProvider,
	clientsProvider compass.ClientsProvider,
) Connector

type DependencyConfig

type DependencyConfig struct {
	K8sConfig         *rest.Config
	ControllerManager manager.Manager

	ClientsProvider        compass.ClientsProvider
	CredentialsManager     certificates.Manager
	SynchronizationService kyma.Service
	ConfigProvider         config.Provider
	ConnectionDataCache    cache.ConnectionDataCache

	RuntimeURLsConfig            director.RuntimeURLsConfig
	CertValidityRenewalThreshold float64
	MinimalCompassSyncTime       time.Duration
}

func (DependencyConfig) InitializeController

func (config DependencyConfig) InitializeController() (Supervisor, error)

type EstablishedConnection

type EstablishedConnection struct {
	Credentials    certificates.Credentials
	ManagementInfo v1alpha1.ManagementInfo
}

type Reconciler

type Reconciler struct {
	// contains filtered or unexported fields
}

Reconciler reconciles a CompassConnection object

func (*Reconciler) Reconcile

func (r *Reconciler) Reconcile(ctx context.Context, request reconcile.Request) (reconcile.Result, error)

type Supervisor

type Supervisor interface {
	InitializeCompassConnection(ctx context.Context) (*v1alpha1.CompassConnection, error)
	SynchronizeWithCompass(ctx context.Context, connection *v1alpha1.CompassConnection) (*v1alpha1.CompassConnection, error)
	MaintainCompassConnection(ctx context.Context, connection *v1alpha1.CompassConnection) error
}

func NewSupervisor

func NewSupervisor(
	connector Connector,
	crManager CRManager,
	credManager certificates.Manager,
	clientsProvider compass.ClientsProvider,
	syncService kyma.Service,
	configProvider config.Provider,
	certValidityRenewalThreshold float64,
	minimalCompassSyncTime time.Duration,
	runtimeURLsConfig director.RuntimeURLsConfig,
	connectionDataCache cache.ConnectionDataCache,
) Supervisor

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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