config

package
v0.0.8 Latest Latest
Warning

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

Go to latest
Published: Mar 7, 2024 License: MIT Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type App

type App struct {
	Name          string         `yaml:"name"`
	ImageName     string         `yaml:"image"`
	Registry      RegistryConfig `yaml:"registry"`
	ContainerPort int            `yaml:"container_port"`
	Network       string         `yaml:"network"`
	ENV           []string       `yaml:"env"`
	PortRange     PortRange      `yaml:"port_range"`
}

type CaddyConfig

type CaddyConfig struct {
	AdminAPI string        `yaml:"admin_api"`
	Global   GlobalOptions `yaml:"global"`
	Rules    []Rule        `yaml:"rules"`
}

type DeploymentConfig

type DeploymentConfig struct {
	App         App         `yaml:"app"`
	Caddy       CaddyConfig `yaml:"caddy"`
	HealthCheck HealthCheck `yaml:"health_check"`
}

func LoadConfig

func LoadConfig(path string) (DeploymentConfig, error)

type GlobalOptions added in v0.0.6

type GlobalOptions struct {
	Email       string            `yaml:"email"`
	OnDemandTls OnDemandTlsConfig `yaml:"on_demand_tls"`
}

type Handle added in v0.0.6

type Handle struct {
	Path       string   `yaml:"path"`
	Directives []string `yaml:"directives"`
}

type HealthCheck

type HealthCheck struct {
	Endpoint        string `yaml:"endpoint"`
	TimeoutSeconds  int    `yaml:"timeout_seconds"`
	IntervalSeconds int    `yaml:"interval_seconds"`
	MaxRetries      int    `yaml:"max_retries"`
}

type OnDemandTlsConfig added in v0.0.6

type OnDemandTlsConfig struct {
	Ask      string `yaml:"ask"`
	Interval string `yaml:"interval"`
	Burst    string `yaml:"burst"`
}

type PortRange

type PortRange struct {
	Start int `yaml:"start"`
	End   int `yaml:"end"`
}

type RegistryConfig

type RegistryConfig struct {
	Username string `yaml:"username"`
	Password string `yaml:"password"`
}

type ReverseProxy

type ReverseProxy struct {
	Path string `yaml:"path"`
	To   string `yaml:"to"`
}

type Rule

type Rule struct {
	Match        string         `yaml:"match"`
	Tls          string         `yaml:"tls"`
	ReverseProxy []ReverseProxy `yaml:"reverse_proxy"`
	Handle       []Handle       `yaml:"handle"`
}

Jump to

Keyboard shortcuts

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