internal

package
v0.0.0-...-664ceaa Latest Latest
Warning

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

Go to latest
Published: Oct 23, 2023 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func UpdateConfiguration

func UpdateConfiguration(endpoints []string, traefikConfigFile string) error

UpdateConfiguration updates the list of control plane endpoints in the traefik provider configuration file.

Types

type Configuration

type Configuration struct {
	Listen    string
	Endpoints []string
	ChangedCh chan struct{}
}

Configuration is configuration for the apiserver proxy

func LoadConfiguration

func LoadConfiguration(ctx context.Context, traefikConfigFile string) (*Configuration, error)

LoadConfiguration loads traefik-compatible configuration for the API server proxy.

type EntryPoint

type EntryPoint struct {
	Address string `yaml:"address"`
}

EntryPoint is traefik-compatible configuration.

type ExpectedEntryPoints

type ExpectedEntryPoints struct {
	APIServer EntryPoint `yaml:"apiserver"`
}

ExpectedEntryPoints is traefik-compatible configuration.

type ExpectedProviders

type ExpectedProviders struct {
	File FileProvider `yaml:"file"`
}

ExpectedProviders is traefik-compatible configuration.

type ExpectedRouters

type ExpectedRouters struct {
	Router1 Router `yaml:"Router-1"`
}

ExpectedRouters is traefik-compatible configuration.

type ExpectedServices

type ExpectedServices struct {
	APIServer Service `yaml:"kube-apiserver"`
}

ExpectedServices is traefik-compatible configuration.

type FileProvider

type FileProvider struct {
	Filename string `yaml:"filename"`
	Watch    bool   `yaml:"watch"`
}

FileProvider is traefik-compatible configuration.

type LoadBalancerService

type LoadBalancerService struct {
	Servers []Server `yaml:"servers"`
}

LoadBalancerService is traefik-compatible configuration.

type ProviderConfiguration

type ProviderConfiguration struct {
	TCP TCPProviderConfiguration `yaml:"tcp"`
}

ProviderConfiguration is traefik-compatible configuration.

type Router

type Router struct {
	Rule    string    `yaml:"rule"`
	Service string    `yaml:"service"`
	TLS     RouterTLS `yaml:"tls"`
}

Router is traefik-compatible configuration.

type RouterTLS

type RouterTLS struct {
	Passthrough bool `yaml:"passthrough"`
}

RouterTLS is traefik-compatible configuration.

type Server

type Server struct {
	Address string `yaml:"address"`
}

Server is traefik-compatible configuration.

type Service

type Service struct {
	LoadBalancer LoadBalancerService `yaml:"loadBalancer"`
}

Service is traefik-compatible configuration.

type TCPProviderConfiguration

type TCPProviderConfiguration struct {
	Routers  ExpectedRouters  `yaml:"routers"`
	Services ExpectedServices `yaml:"services"`
}

TCPProviderConfiguration is traefik-compatible configuration.

type TraefikConfiguration

type TraefikConfiguration struct {
	EntryPoints ExpectedEntryPoints `yaml:"entryPoints"`
	Providers   ExpectedProviders   `yaml:"providers"`
}

TraefikConfiguration is traefik-compatible configuration.

Jump to

Keyboard shortcuts

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