controllers

package
v0.9.1 Latest Latest
Warning

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

Go to latest
Published: Jun 17, 2021 License: Apache-2.0 Imports: 16 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AutonegConfig

type AutonegConfig struct {
	Name string  `json:"name"`
	Rate float64 `json:"max_rate_per_endpoint"`
}

AutonegConfig specifies the intended configuration of autoneg stored in the anthos.cft.dev/autoneg annotation

type AutonegStatus

type AutonegStatus struct {
	AutonegConfig
	NEGStatus
}

AutonegStatus specifies the reconciled status of autoneg stored in the anthos.cft.dev/autoneg-status annotation

func (AutonegStatus) Backend

func (s AutonegStatus) Backend(group string) compute.Backend

Backend returns a compute.Backend struct specified with a backend group and the embedded AutonegConfig

type BackendController

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

BackendController manages operations on a GCLB backend service

func NewBackendController

func NewBackendController(project string, s *compute.Service) *BackendController

NewBackendController takes the project name and an initialized *compute.Service

func (*BackendController) ReconcileBackends

func (b *BackendController) ReconcileBackends(actual, intended AutonegStatus) (err error)

ReconcileBackends takes the actual and intended AutonegStatus and attempts to apply the intended status or return an error

type Backends

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

Backends specifies a name and list of compute.Backends

func ReconcileStatus

func ReconcileStatus(project string, actual AutonegStatus, intended AutonegStatus) (remove, upsert Backends)

ReconcileStatus takes the actual and intended AutonegStatus and returns sets of backends to remove, and to upsert

type NEGStatus

type NEGStatus struct {
	NEGs  map[string]string `json:"network_endpoint_groups"`
	Zones []string          `json:"zones"`
}

NEGStatus specifies the output of the GKE NEG controller stored in the cloud.google.com/neg-status annotation

type ServiceReconciler

type ServiceReconciler struct {
	client.Client
	*BackendController
	Recorder record.EventRecorder
	Log      logr.Logger
}

ServiceReconciler reconciles a Service object

func (*ServiceReconciler) Reconcile

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

func (*ServiceReconciler) SetupWithManager

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

type Statuses

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

Statuses represents the autoneg-relevant structs fetched from annotations

Jump to

Keyboard shortcuts

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