Help us shape the future of Go! Take the 2026 Go Developer Survey

router

package
v1.2.2 Latest Latest
Warning

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

Go to latest
Published: Oct 18, 2016 License: Apache-2.0 Imports: 26 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewCommandF5Router added in v1.0.6

func NewCommandF5Router(name string) *cobra.Command

NewCommandF5Router provides CLI handler for the F5 router sync plugin.

func NewCommandTemplateRouter

func NewCommandTemplateRouter(name string) *cobra.Command

NewCommndTemplateRouter provides CLI handler for the template router backend

Types

type F5Router added in v1.0.6

type F5Router struct {
	RouterName string

	// Host specifies the hostname or IP address of the F5 BIG-IP host.
	Host string

	// Username specifies the username with which the plugin should authenticate
	// with the F5 BIG-IP host.
	Username string

	// Password specifies the password with which the plugin should authenticate
	// with the F5 BIG-IP host.
	Password string

	// HttpVserver specifies the name of the vserver object in F5 BIG-IP that the
	// plugin will configure for HTTP connections.
	HttpVserver string

	// HttpsVserver specifies the name of the vserver object in F5 BIG-IP that the
	// plugin will configure for HTTPS connections.
	HttpsVserver string

	// PrivateKey specifies the filename of an SSH private key for
	// authenticating with F5.  This key is required to copy certificates
	// to the F5 BIG-IP host.
	PrivateKey string

	// Insecure specifies whether the F5 plugin should perform strict certificate
	// validation for connections to the F5 BIG-IP host.
	Insecure bool

	// PartitionPath specifies the path to the F5 partition. This is
	// normally used to create access control boundaries for users
	// and applications.
	PartitionPath string
}

F5Router is the config necessary to start an F5 router plugin.

func (*F5Router) Bind added in v1.0.6

func (o *F5Router) Bind(flag *pflag.FlagSet)

Bind binds F5Router arguments to flags

func (*F5Router) Validate added in v1.0.6

func (o *F5Router) Validate() error

Validate verifies the required F5 flags are present

type F5RouterOptions added in v1.0.6

type F5RouterOptions struct {
	Config *clientcmd.Config

	F5Router
	RouterSelection
}

F5RouterOptions represent the complete structure needed to start an F5 router sync process.

func (*F5RouterOptions) Complete added in v1.0.6

func (o *F5RouterOptions) Complete() error

func (*F5RouterOptions) Run added in v1.0.6

func (o *F5RouterOptions) Run() error

Run launches an F5 route sync process using the provided options. It never exits.

func (*F5RouterOptions) Validate added in v1.0.6

func (o *F5RouterOptions) Validate() error

type RouterSelection added in v1.0.6

type RouterSelection struct {
	ResyncInterval time.Duration

	HostnameTemplate string
	OverrideHostname bool

	LabelSelector string
	Labels        labels.Selector
	FieldSelector string
	Fields        fields.Selector

	Namespace              string
	NamespaceLabelSelector string
	NamespaceLabels        labels.Selector

	ProjectLabelSelector string
	ProjectLabels        labels.Selector

	IncludeUDP bool
}

RouterSelection controls what routes and resources on the server are considered part of this router.

func (*RouterSelection) Bind added in v1.0.6

func (o *RouterSelection) Bind(flag *pflag.FlagSet)

Bind sets the appropriate labels

func (*RouterSelection) Complete added in v1.0.6

func (o *RouterSelection) Complete() error

Complete converts string representations of field and label selectors to their parsed equivalent, or returns an error.

func (*RouterSelection) NewFactory added in v1.0.6

NewFactory initializes a factory that will watch the requested routes

func (*RouterSelection) RouteSelectionFunc added in v1.1.1

func (o *RouterSelection) RouteSelectionFunc() controller.RouteHostFunc

RouteSelectionFunc returns a func that identifies the host for a route.

type RouterStats added in v1.0.6

type RouterStats struct {
	StatsPortString string
	StatsPassword   string
	StatsUsername   string

	StatsPort int
}

func (*RouterStats) Bind added in v1.0.6

func (o *RouterStats) Bind(flag *pflag.FlagSet)

type TemplateRouter added in v1.0.6

type TemplateRouter struct {
	RouterName             string
	WorkingDir             string
	TemplateFile           string
	ReloadScript           string
	ReloadInterval         time.Duration
	DefaultCertificate     string
	DefaultCertificatePath string
	RouterService          *ktypes.NamespacedName
}

func (*TemplateRouter) Bind added in v1.0.6

func (o *TemplateRouter) Bind(flag *pflag.FlagSet)

type TemplateRouterOptions added in v1.0.6

type TemplateRouterOptions struct {
	Config *clientcmd.Config

	TemplateRouter
	RouterStats
	RouterSelection
}

func (*TemplateRouterOptions) Complete added in v1.0.6

func (o *TemplateRouterOptions) Complete() error

func (*TemplateRouterOptions) Run added in v1.0.6

func (o *TemplateRouterOptions) Run() error

Run launches a template router using the provided options. It never exits.

func (*TemplateRouterOptions) Validate added in v1.0.6

func (o *TemplateRouterOptions) Validate() error

Source Files

  • f5.go
  • router.go
  • template.go

Jump to

Keyboard shortcuts

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