controllers

package
v1.0.0-beta3 Latest Latest
Warning

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

Go to latest
Published: Apr 12, 2022 License: MIT Imports: 39 Imported by: 0

Documentation

Index

Constants

View Source
const (
	APIFinalizer = "gateway.kusk.io/apifinalizer"
)
View Source
const (
	StaticRouteFinalizer = "gateway.kusk.io/srfinalizer"
)

Variables

This section is empty.

Functions

func UpdateConfigFromAPIOpts

func UpdateConfigFromAPIOpts(envoyConfiguration *config.EnvoyConfiguration, mockingConfiguration *mocking.MockConfig, proxy *validation.Proxy, opts *options.Options, spec *openapi3.T) error

UpdateConfigFromAPIOpts updates Envoy configuration from OpenAPI spec and x-kusk options

func UpdateConfigFromOpts

func UpdateConfigFromOpts(envoyConfiguration *config.EnvoyConfiguration, opts *options.StaticOptions) error

UpdateConfigFromOpts updates Envoy configuration from Options only

Types

type APIReconciler

type APIReconciler struct {
	client.Client
	Scheme        *runtime.Scheme
	ConfigManager *KubeEnvoyConfigManager
}

APIReconciler reconciles a API object

func (*APIReconciler) Reconcile

func (r *APIReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error)

Reconcile is part of the main kubernetes reconciliation loop which aims to move the current state of the cluster closer to the desired state. For more details, check Reconcile and its Result here: - https://pkg.go.dev/sigs.k8s.io/controller-runtime@v0.8.3/pkg/reconcile

func (*APIReconciler) SetupWithManager

func (r *APIReconciler) SetupWithManager(mgr ctrl.Manager) error

SetupWithManager sets up the controller with the Manager.

type EnvoyFleetReconciler

type EnvoyFleetReconciler struct {
	client.Client
	Scheme        *runtime.Scheme
	ConfigManager *KubeEnvoyConfigManager
}

EnvoyFleetReconciler reconciles a EnvoyFleet object

func (*EnvoyFleetReconciler) Reconcile

func (r *EnvoyFleetReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error)

Reconcile is part of the main kubernetes reconciliation loop which aims to move the current state of the cluster closer to the desired state. For more details, check Reconcile and its Result here: - https://pkg.go.dev/sigs.k8s.io/controller-runtime@v0.8.3/pkg/reconcile

func (*EnvoyFleetReconciler) SetupWithManager

func (r *EnvoyFleetReconciler) SetupWithManager(mgr ctrl.Manager) error

SetupWithManager sets up the controller with the Manager.

type EnvoyFleetResources

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

EnvoyFleetResources is a collection of related Envoy Fleet K8s resources

func NewEnvoyFleetResources

func NewEnvoyFleetResources(ctx context.Context, client client.Client, ef *gateway.EnvoyFleet) (*EnvoyFleetResources, error)

func (*EnvoyFleetResources) CreateOrUpdate

func (e *EnvoyFleetResources) CreateOrUpdate(ctx context.Context) error

type KubeEnvoyConfigManager

type KubeEnvoyConfigManager struct {
	client.Client
	Scheme       *runtime.Scheme
	EnvoyManager *manager.EnvoyConfigManager
	AgentManager *agentManagement.ConfigManager
	Validator    *validation.Proxy

	WatchedSecretsChan chan *v1.Secret
	SecretToEnvoyFleet map[string]gateway.EnvoyFleetID
	// contains filtered or unexported fields
}

KubeEnvoyConfigManager manages all Envoy configurations parsing from CRDs

func (*KubeEnvoyConfigManager) UpdateConfiguration

func (c *KubeEnvoyConfigManager) UpdateConfiguration(ctx context.Context, fleetID gateway.EnvoyFleetID) error

UpdateConfiguration is the main method to gather all routing configs and to create and apply Envoy config

func (*KubeEnvoyConfigManager) WatchSecrets

func (c *KubeEnvoyConfigManager) WatchSecrets(stopCh <-chan struct{})

type ServiceReconciler

type ServiceReconciler struct {
	client.Client
	Scheme *runtime.Scheme
}

ServiceReconciler reconciles a Pod object

func (*ServiceReconciler) Reconcile

func (r *ServiceReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error)

+kubebuilder:rbac:groups=core,resources=pods,verbs=get;list;watch;create;update;patch;delete +kubebuilder:rbac:groups=core,resources=pods/status,verbs=get;update;patch +kubebuilder:rbac:groups=core,resources=pods/finalizers,verbs=update

func (*ServiceReconciler) SetupWithManager

func (r *ServiceReconciler) SetupWithManager(mgr ctrl.Manager) error

SetupWithManager sets up the controller with the Manager.

type StaticRouteReconciler

type StaticRouteReconciler struct {
	client.Client
	Scheme        *runtime.Scheme
	ConfigManager *KubeEnvoyConfigManager
}

StaticRouteReconciler reconciles a StaticRoute object

func (*StaticRouteReconciler) Reconcile

func (r *StaticRouteReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error)

Reconcile is part of the main kubernetes reconciliation loop which aims to move the current state of the cluster closer to the desired state. For more details, check Reconcile and its Result here: - https://pkg.go.dev/sigs.k8s.io/controller-runtime@v0.10.0/pkg/reconcile

func (*StaticRouteReconciler) SetupWithManager

func (r *StaticRouteReconciler) SetupWithManager(mgr ctrl.Manager) error

SetupWithManager sets up the controller with the Manager.

Jump to

Keyboard shortcuts

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