hetzner

package
v0.0.0-...-03ae564 Latest Latest
Warning

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

Go to latest
Published: Oct 31, 2024 License: Apache-2.0 Imports: 20 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var DefaultSDConfig = SDConfig{
	Port:             80,
	RefreshInterval:  model.Duration(60 * time.Second),
	HTTPClientConfig: config.DefaultHTTPClientConfig,
}

DefaultSDConfig is the default Hetzner SD configuration.

Functions

func NewDiscovery

func NewDiscovery(conf *SDConfig, logger log.Logger, metrics discovery.DiscovererMetrics) (*refresh.Discovery, error)

NewDiscovery returns a new Discovery which periodically refreshes its targets.

Types

type Discovery

type Discovery struct {
	*refresh.Discovery
}

Discovery periodically performs Hetzner requests. It implements the Discoverer interface.

type Role

type Role string

Role is the Role of the target within the Hetzner Ecosystem.

const (
	// Hetzner Robot Role (Dedicated Server)
	// https://robot.hetzner.com
	HetznerRoleRobot Role = "robot"
	// Hetzner Cloud Role
	// https://console.hetzner.cloud
	HetznerRoleHcloud Role = "hcloud"
)

The valid options for role.

func (*Role) UnmarshalYAML

func (c *Role) UnmarshalYAML(unmarshal func(interface{}) error) error

UnmarshalYAML implements the yaml.Unmarshaler interface.

type SDConfig

type SDConfig struct {
	HTTPClientConfig config.HTTPClientConfig `yaml:",inline"`

	RefreshInterval model.Duration `yaml:"refresh_interval"`
	Port            int            `yaml:"port"`
	Role            Role           `yaml:"role"`
	// contains filtered or unexported fields
}

SDConfig is the configuration for Hetzner based service discovery.

func (*SDConfig) Name

func (*SDConfig) Name() string

Name returns the name of the Config.

func (*SDConfig) NewDiscoverer

func (c *SDConfig) NewDiscoverer(opts discovery.DiscovererOptions) (discovery.Discoverer, error)

NewDiscoverer returns a Discoverer for the Config.

func (*SDConfig) NewDiscovererMetrics

NewDiscovererMetrics implements discovery.Config.

func (*SDConfig) SetDirectory

func (c *SDConfig) SetDirectory(dir string)

SetDirectory joins any relative file paths with dir.

func (*SDConfig) UnmarshalYAML

func (c *SDConfig) UnmarshalYAML(unmarshal func(interface{}) error) error

UnmarshalYAML implements the yaml.Unmarshaler interface.

Jump to

Keyboard shortcuts

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