Documentation
¶
Index ¶
- type ControllerConfig
- func (c *ControllerConfig) GetClusterTag() string
- func (c *ControllerConfig) GetCreateTimeout() time.Duration
- func (c *ControllerConfig) GetFirewallHealthTimeout() time.Duration
- func (c *ControllerConfig) GetMetal() metalgo.Client
- func (c *ControllerConfig) GetProgressDeadline() time.Duration
- func (c *ControllerConfig) GetSSHKeySecretName() string
- func (c *ControllerConfig) GetSSHKeySecretNamespace() string
- func (c *ControllerConfig) GetSafetyBackoff() time.Duration
- func (c *ControllerConfig) GetSeedAPIServerURL() string
- func (c *ControllerConfig) GetSeedClient() client.Client
- func (c *ControllerConfig) GetSeedConfig() *rest.Config
- func (c *ControllerConfig) GetSeedNamespace() string
- func (c *ControllerConfig) GetShootAPIServerURL() string
- func (c *ControllerConfig) GetShootAccess() *v2.ShootAccess
- func (c *ControllerConfig) GetShootAccessHelper() *helper.ShootAccessHelper
- func (c *ControllerConfig) GetShootClient() client.Client
- func (c *ControllerConfig) GetShootConfig() *rest.Config
- func (c *ControllerConfig) GetShootKubeconfigSecretName() string
- func (c *ControllerConfig) GetShootNamespace() string
- func (c *ControllerConfig) GetShootTokenSecretName() string
- type NewControllerConfig
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ControllerConfig ¶
type ControllerConfig struct {
// contains filtered or unexported fields
}
func New ¶
func New(c *NewControllerConfig) (*ControllerConfig, error)
func (*ControllerConfig) GetClusterTag ¶
func (c *ControllerConfig) GetClusterTag() string
func (*ControllerConfig) GetCreateTimeout ¶
func (c *ControllerConfig) GetCreateTimeout() time.Duration
func (*ControllerConfig) GetFirewallHealthTimeout ¶
func (c *ControllerConfig) GetFirewallHealthTimeout() time.Duration
func (*ControllerConfig) GetMetal ¶
func (c *ControllerConfig) GetMetal() metalgo.Client
func (*ControllerConfig) GetProgressDeadline ¶
func (c *ControllerConfig) GetProgressDeadline() time.Duration
func (*ControllerConfig) GetSSHKeySecretName ¶
func (c *ControllerConfig) GetSSHKeySecretName() string
func (*ControllerConfig) GetSSHKeySecretNamespace ¶ added in v0.2.2
func (c *ControllerConfig) GetSSHKeySecretNamespace() string
func (*ControllerConfig) GetSafetyBackoff ¶
func (c *ControllerConfig) GetSafetyBackoff() time.Duration
func (*ControllerConfig) GetSeedAPIServerURL ¶
func (c *ControllerConfig) GetSeedAPIServerURL() string
func (*ControllerConfig) GetSeedClient ¶
func (c *ControllerConfig) GetSeedClient() client.Client
func (*ControllerConfig) GetSeedConfig ¶
func (c *ControllerConfig) GetSeedConfig() *rest.Config
func (*ControllerConfig) GetSeedNamespace ¶
func (c *ControllerConfig) GetSeedNamespace() string
func (*ControllerConfig) GetShootAPIServerURL ¶
func (c *ControllerConfig) GetShootAPIServerURL() string
func (*ControllerConfig) GetShootAccess ¶
func (c *ControllerConfig) GetShootAccess() *v2.ShootAccess
func (*ControllerConfig) GetShootAccessHelper ¶
func (c *ControllerConfig) GetShootAccessHelper() *helper.ShootAccessHelper
func (*ControllerConfig) GetShootClient ¶
func (c *ControllerConfig) GetShootClient() client.Client
func (*ControllerConfig) GetShootConfig ¶
func (c *ControllerConfig) GetShootConfig() *rest.Config
func (*ControllerConfig) GetShootKubeconfigSecretName ¶
func (c *ControllerConfig) GetShootKubeconfigSecretName() string
func (*ControllerConfig) GetShootNamespace ¶
func (c *ControllerConfig) GetShootNamespace() string
func (*ControllerConfig) GetShootTokenSecretName ¶
func (c *ControllerConfig) GetShootTokenSecretName() string
type NewControllerConfig ¶
type NewControllerConfig struct {
// SeedClient is used by the controllers to access the seed cluster.
SeedClient client.Client
// SeedConfig is the rest config used by the controllers to access the seed cluster.
SeedConfig *rest.Config
// SeedNamespace is the namespace within the seed cluster where the controllers act on.
SeedNamespace string
// SeedAPIServerURL is the endpoint of the seed cluster's api server. this is required
// in order for the firewall-controller to access the seed cluster.
SeedAPIServerURL string
// ShootClient is used by the controllers to access the shoot cluster.
ShootClient client.Client
// ShootConfig is the rest config used by the controllers to access the shoot cluster.
ShootConfig *rest.Config
// ShootNamespace is the namespace within the shoot cluster where the controllers act on.
ShootNamespace string
// ShootAPIServerURL is the endpoint of the shoot cluster's api server. this is required
// in order for the firewall-controller to access the shoot cluster.
ShootAPIServerURL string
// ShootAccess contains information for the firewall-controller to access the shoot cluster.
// it is used by the firewall-controller to dynamically update rotating tokens for the accessing
// the shoot cluster.
ShootAccess *v2.ShootAccess
// ShootAccessHelper wraps the shoot access and provides useful methods for dealing with
// the shoot access secret rotation.
ShootAccessHelper *helper.ShootAccessHelper
// SSHKeySecretNamespace is the namespace that contains the ssh key secret in the seed cluster.
SSHKeySecretNamespace string
// SSHKeySecretName is the name of the ssh key secret in the seed cluster. it is used for
// defaulting the ssh public keys when creating a new firewall.
SSHKeySecretName string
// Metal is the metal client for accessing the metal-api.
Metal metalgo.Client
// ClusterTag is the tag used in the metal-api for new firewalls to associate them with the cluster.
ClusterTag string
// SafetyBackoff is used for guarding the metal-api when it comes to creating new firewalls.
SafetyBackoff time.Duration
// ProgressDeadline is used to indicate unhealthy firewall deployment when it does not finish progressing.
ProgressDeadline time.Duration
// FirewallHealthTimeout is used to indicate an unhealthy firewall when it does not become ready.
FirewallHealthTimeout time.Duration
// CreateTimeout is used in the firewall creation phase to recreate a firewall when it does not become ready.
CreateTimeout time.Duration
// SkipValidation skips configuration validation, use this only for testing purposes
SkipValidation bool
}
Click to show internal directories.
Click to hide internal directories.