Documentation
¶
Index ¶
- Constants
- func NewRestart(params libfsm.ExecutorParams, operator libbasephase.LocalClusterGetter, ...) (libfsm.PhaseExecutor, error)
- func NewUpdateConfig(params libfsm.ExecutorParams, operator operator, operation ops.SiteOperation, ...) (libfsm.PhaseExecutor, error)
- type Final
- type Init
- type Services
Constants ¶
const ( // InitPhase identifies the initialization phase that resets services // back to their original values on rollback InitPhase = "init" // FiniPhase identifies the finalization phase that commits // changes after a successful operation FiniPhase = "fini" )
Variables ¶
This section is empty.
Functions ¶
func NewRestart ¶
func NewRestart( params libfsm.ExecutorParams, operator libbasephase.LocalClusterGetter, operation ops.SiteOperation, apps appGetter, backend storage.Backend, packages pack.PackageService, localPackages update.LocalPackageService, logger log.FieldLogger, ) (libfsm.PhaseExecutor, error)
NewRestart returns a new executor to restart the runtime container to apply the environment variables update
func NewUpdateConfig ¶
func NewUpdateConfig( params libfsm.ExecutorParams, operator operator, operation ops.SiteOperation, apps appGetter, packages, hostPackages packageService, logger log.FieldLogger, ) (libfsm.PhaseExecutor, error)
NewUpdateConfig returns a new executor to update runtime configuration on the specified node
Types ¶
type Final ¶
type Final struct { log.FieldLogger // contains filtered or unexported fields }
Final implements the last step for the cluster configuration update operation. On the happy path, it will remove the temporary DNS services. During rollback, it removes the active DNS services which will be recreated by the planet agent service after the container reverts to the previous configuration
func NewFinal ¶
func NewFinal(params fsm.ExecutorParams, client corev1.CoreV1Interface, logger log.FieldLogger) (*Final, error)
NewFinal returns a new instance of the last configuration step
func (*Final) Execute ¶
Execute renames the new DNS services so they persist and removes the old services
type Init ¶
type Init struct { log.FieldLogger // contains filtered or unexported fields }
Init implements the init step for the cluster configuration upgrade operation
func NewInit ¶
func NewInit(params fsm.ExecutorParams, client corev1.CoreV1Interface, logger log.FieldLogger) (*Init, error)
NewInit returns a new init step implementation
func (*Init) Execute ¶
Execute renames the existing DNS services to keep them available for nodes that have not been upgraded to the new service subnet so the Pods scheduled on these nodes can still resolve cluster addresses using the old DNS service
type Services ¶
type Services struct { log.FieldLogger // contains filtered or unexported fields }
Services implements the services step for the cluster configuration upgrade operation. On the happy path, its job is to recreate the services of type clusterIP with the address from the new service CIDR. During rollback, it will remove the temporary DNS services created as part of the configuration update
func NewServices ¶
func NewServices(params fsm.ExecutorParams, client corev1.CoreV1Interface, logger log.FieldLogger) (*Services, error)
NewServices returns a new services step implementation
func (*Services) Execute ¶
Execute resets the clusterIP for all the cluster services of type ClusterIP except services it does not need to handle/manage (eg kubernetes api server service and DNS/headless services)