types

package
v0.4.1 Latest Latest
Warning

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

Go to latest
Published: Jul 14, 2017 License: Apache-2.0 Imports: 16 Imported by: 0

Documentation

Index

Constants

View Source
const (
	BYTES_PER_SECTOR = 512
)

Variables

View Source
var (
	ErrPlatformUnspecified = fmt.Errorf("platform must be specified to use templating")
	ErrInvalidKey          = errors.New("Key is invalid (wrong type or not found")
	ErrNilNode             = errors.New("Ast node is nil")
	ErrKeyNotFound         = errors.New("Key not found")
)
View Source
var (
	EtcdVersionTooOld      = errors.New("Etcd version specified is not valid (too old)")
	EtcdMinorVersionTooNew = errors.New("Etcd minor version specified is too new, only options available in the previous minor version will be accepted")
	EtcdMajorVersionTooNew = errors.New("Etcd version is not valid (too new)")
	OldestEtcd             = *semver.New("2.3.0")
	EtcdDefaultVersion     = *semver.New("3.0.0")
)
View Source
var (
	ErrFlannelTooOld                  = errors.New("invalid flannel version (too old)")
	ErrFlannelMinorTooNew             = errors.New("flannel minor version too new. Only options available in the previous minor version will be supported")
	ErrNetConfigInvalidJSON           = errors.New("flannel network config doesn't appear to be valid JSON")
	ErrNetConfigProvidedAndKubeMgrSet = errors.New("flannel network config cannot be provided if kube_subnet_mgr is set")
	OldestFlannelVersion              = *semver.New("0.5.0")
	FlannelDefaultVersion             = *semver.New("0.6.0")
)
View Source
var (
	ErrMissingStartOrLength = errors.New("window-start and window-length must both be specified")
	ErrUnknownStrategy      = errors.New("unknown reboot strategy")
	ErrParsingWindowStart   = errors.New("couldn't parse window start")
	ErrUnknownDay           = errors.New("unknown day in window start")
	ErrParsingWindow        = errors.New("couldn't parse window start")
	ErrParsingLength        = errors.New("couldn't parse window length")
)
View Source
var (
	ErrUnknownGroup = errors.New("unknown update group")
)

Functions

func ConvertAs2_0 added in v0.2.0

func ConvertAs2_0(in Config, platform string, ast validate.AstNode) (ignTypes.Config, report.Report)

Types

type Config

type Config struct {
	Ignition  Ignition   `yaml:"ignition"`
	Storage   Storage    `yaml:"storage"`
	Systemd   Systemd    `yaml:"systemd"`
	Networkd  Networkd   `yaml:"networkd"`
	Passwd    Passwd     `yaml:"passwd"`
	Etcd      *Etcd      `yaml:"etcd"`
	Flannel   *Flannel   `yaml:"flannel"`
	Update    *Update    `yaml:"update"`
	Docker    *Docker    `yaml:"docker"`
	Locksmith *Locksmith `yaml:"locksmith"`
}

type ConfigReference

type ConfigReference struct {
	Source       string       `yaml:"source"`
	Verification Verification `yaml:"verification"`
}

type Create

type Create struct {
	Force   bool     `yaml:"force"`
	Options []string `yaml:"options"`
}

type Disk

type Disk struct {
	Device     string      `yaml:"device"`
	WipeTable  bool        `yaml:"wipe_table"`
	Partitions []Partition `yaml:"partitions"`
}

type Docker added in v0.2.0

type Docker struct {
	Flags []string `yaml:"flags"`
}

type Etcd added in v0.2.0

type Etcd struct {
	Version *EtcdVersion `yaml:"version"`
	Options
}

Etcd is a stub for yaml unmarshalling that figures out which of the other Etcd structs to use and unmarshals to that. Options needs to be an embedded type so that the structure of the yaml tree matches the structure of the go config tree

func (*Etcd) UnmarshalYAML added in v0.2.0

func (etcd *Etcd) UnmarshalYAML(unmarshal func(interface{}) error) error

type Etcd2 added in v0.2.0

type Etcd2 struct {
	AdvertiseClientURLs      string `yaml:"advertise_client_urls"         cli:"advertise-client-urls"`
	CAFile                   string `` /* 141-byte string literal not displayed */
	CertFile                 string `yaml:"cert_file"                     cli:"cert-file"`
	ClientCertAuth           bool   `yaml:"client_cert_auth"              cli:"client-cert-auth"`
	CorsOrigins              string `yaml:"cors"                          cli:"cors"`
	DataDir                  string `yaml:"data_dir"                      cli:"data-dir"`
	Debug                    bool   `yaml:"debug"                         cli:"debug"`
	Discovery                string `yaml:"discovery"                     cli:"discovery"`
	DiscoveryFallback        string `yaml:"discovery_fallback"            cli:"discovery-fallback"`
	DiscoverySRV             string `yaml:"discovery_srv"                 cli:"discovery-srv"`
	DiscoveryProxy           string `yaml:"discovery_proxy"               cli:"discovery-proxy"`
	ElectionTimeout          int    `yaml:"election_timeout"              cli:"election-timeout"`
	EnablePprof              bool   `yaml:"enable_pprof"                  cli:"enable-pprof"`
	ForceNewCluster          bool   `yaml:"force_new_cluster"             cli:"force-new-cluster"`
	HeartbeatInterval        int    `yaml:"heartbeat_interval"            cli:"heartbeat-interval"`
	InitialAdvertisePeerURLs string `yaml:"initial_advertise_peer_urls"   cli:"initial-advertise-peer-urls"`
	InitialCluster           string `yaml:"initial_cluster"               cli:"initial-cluster"`
	InitialClusterState      string `yaml:"initial_cluster_state"         cli:"initial-cluster-state"`
	InitialClusterToken      string `yaml:"initial_cluster_token"         cli:"initial-cluster-token"`
	KeyFile                  string `yaml:"key_file"                      cli:"key-file"`
	ListenClientURLs         string `yaml:"listen_client_urls"            cli:"listen-client-urls"`
	ListenPeerURLs           string `yaml:"listen_peer_urls"              cli:"listen-peer-urls"`
	LogPackageLevels         string `yaml:"log_package_levels"            cli:"log-package-levels"`
	MaxSnapshots             int    `yaml:"max_snapshots"                 cli:"max-snapshots"`
	MaxWALs                  int    `yaml:"max_wals"                      cli:"max-wals"`
	Name                     string `yaml:"name"                          cli:"name"`
	PeerCAFile               string `` /* 153-byte string literal not displayed */
	PeerCertFile             string `yaml:"peer_cert_file"                cli:"peer-cert-file"`
	PeerKeyFile              string `yaml:"peer_key_file"                 cli:"peer-key-file"`
	PeerClientCertAuth       bool   `yaml:"peer_client_cert_auth"         cli:"peer-client-cert-auth"`
	PeerTrustedCAFile        string `yaml:"peer_trusted_ca_file"          cli:"peer-trusted-ca-file"`
	Proxy                    string `yaml:"proxy"                         cli:"proxy"                       valid:"^(on|off|readonly)$"`
	ProxyDialTimeout         int    `yaml:"proxy_dial_timeout"            cli:"proxy-dial-timeout"`
	ProxyFailureWait         int    `yaml:"proxy_failure_wait"            cli:"proxy-failure-wait"`
	ProxyReadTimeout         int    `yaml:"proxy_read_timeout"            cli:"proxy-read-timeout"`
	ProxyRefreshInterval     int    `yaml:"proxy_refresh_interval"        cli:"proxy-refresh-interval"`
	ProxyWriteTimeout        int    `yaml:"proxy_write_timeout"           cli:"proxy-write-timeout"`
	SnapshotCount            int    `yaml:"snapshot_count"                cli:"snapshot-count"`
	StrictReconfigCheck      bool   `yaml:"strict_reconfig_check"         cli:"strict-reconfig-check"`
	TrustedCAFile            string `yaml:"trusted_ca_file"               cli:"trusted-ca-file"`
	WalDir                   string `yaml:"wal_dir"                       cli:"wal-dir"`
}

type Etcd3_0 added in v0.2.0

type Etcd3_0 struct {
	Name                     string `yaml:"name"                        cli:"name"`
	DataDir                  string `yaml:"data_dir"                    cli:"data-dir"`
	WalDir                   string `yaml:"wal_dir"                     cli:"wal-dir"`
	SnapshotCount            int    `yaml:"snapshot_count"              cli:"snapshot-count"`
	HeartbeatInterval        int    `yaml:"heartbeat_interval"          cli:"heartbeat-interval"`
	ElectionTimeout          int    `yaml:"election_timeout"            cli:"election-timeout"`
	EnablePprof              bool   `yaml:"enable_pprof"                cli:"enable-pprof"`
	ListenPeerUrls           string `yaml:"listen_peer_urls"            cli:"listen-peer-urls"`
	ListenClientUrls         string `yaml:"listen_client_urls"          cli:"listen-client-urls"`
	MaxSnapshots             int    `yaml:"max_snapshots"               cli:"max-snapshots"`
	MaxWals                  int    `yaml:"max_wals"                    cli:"max-wals"`
	Cors                     string `yaml:"cors"                        cli:"cors"`
	InitialAdvertisePeerUrls string `yaml:"initial_advertise_peer_urls" cli:"initial-advertise-peer-urls"`
	InitialCluster           string `yaml:"initial_cluster"             cli:"initial-cluster"`
	InitialClusterState      string `yaml:"initial_cluster_state"       cli:"initial-cluster-state"`
	InitialClusterToken      string `yaml:"initial_cluster_token"       cli:"initial-cluster-token"`
	AdvertiseClientUrls      string `yaml:"advertise_client_urls"       cli:"advertise-client-urls"`
	Discovery                string `yaml:"discovery"                   cli:"discovery"`
	DiscoverySrv             string `yaml:"discovery_srv"               cli:"discovery-srv"`
	DiscoveryFallback        string `yaml:"discovery_fallback"          cli:"discovery-fallback"`
	DiscoveryProxy           string `yaml:"discovery_proxy"             cli:"discovery-proxy"`
	StrictReconfigCheck      bool   `yaml:"strict_reconfig_check"       cli:"strict-reconfig-check"`
	AutoCompactionRetention  int    `yaml:"auto_compaction_retention"   cli:"auto-compaction-retention"`
	Proxy                    string `yaml:"proxy"                       cli:"proxy"`
	ProxyFailureWait         int    `yaml:"proxy_failure_wait"          cli:"proxy-failure-wait"`
	ProxyRefreshInterval     int    `yaml:"proxy_refresh_interval"      cli:"proxy-refresh-interval"`
	ProxyDialTimeout         int    `yaml:"proxy_dial_timeout"          cli:"proxy-dial-timeout"`
	ProxyWriteTimeout        int    `yaml:"proxy_write_timeout"         cli:"proxy-write-timeout"`
	ProxyReadTimeout         int    `yaml:"proxy_read_timeout"          cli:"proxy-read-timeout"`
	CaFile                   string `` /* 139-byte string literal not displayed */
	CertFile                 string `yaml:"cert_file"                   cli:"cert-file"`
	KeyFile                  string `yaml:"key_file"                    cli:"key-file"`
	ClientCertAuth           bool   `yaml:"client_cert_auth"            cli:"client-cert-auth"`
	TrustedCaFile            string `yaml:"trusted_ca_file"             cli:"trusted-ca-file"`
	AutoTls                  bool   `yaml:"auto_tls"                    cli:"auto-tls"`
	PeerCaFile               string `` /* 151-byte string literal not displayed */
	PeerCertFile             string `yaml:"peer_cert_file"              cli:"peer-cert-file"`
	PeerKeyFile              string `yaml:"peer_key_file"               cli:"peer-key-file"`
	PeerClientCertAuth       bool   `yaml:"peer_client_cert_auth"       cli:"peer-client-cert-auth"`
	PeerTrustedCaFile        string `yaml:"peer_trusted_ca_file"        cli:"peer-trusted-ca-file"`
	PeerAutoTls              bool   `yaml:"peer_auto_tls"               cli:"peer-auto-tls"`
	Debug                    bool   `yaml:"debug"                       cli:"debug"`
	LogPackageLevels         string `yaml:"log_package_levels"          cli:"log-package-levels"`
	ForceNewCluster          bool   `yaml:"force_new_cluster"           cli:"force-new-cluster"`
}

type Etcd3_1 added in v0.2.0

type Etcd3_1 struct {
	Name                     string `yaml:"name"                        cli:"name"`
	DataDir                  string `yaml:"data_dir"                    cli:"data-dir"`
	WalDir                   string `yaml:"wal_dir"                     cli:"wal-dir"`
	SnapshotCount            int    `yaml:"snapshot_count"              cli:"snapshot-count"`
	HeartbeatInterval        int    `yaml:"heartbeat_interval"          cli:"heartbeat-interval"`
	ElectionTimeout          int    `yaml:"election_timeout"            cli:"election-timeout"`
	EnablePprof              bool   `yaml:"enable_pprof"                cli:"enable-pprof"`
	ListenPeerUrls           string `yaml:"listen_peer_urls"            cli:"listen-peer-urls"`
	ListenClientUrls         string `yaml:"listen_client_urls"          cli:"listen-client-urls"`
	MaxSnapshots             int    `yaml:"max_snapshots"               cli:"max-snapshots"`
	MaxWals                  int    `yaml:"max_wals"                    cli:"max-wals"`
	Cors                     string `yaml:"cors"                        cli:"cors"`
	InitialAdvertisePeerUrls string `yaml:"initial_advertise_peer_urls" cli:"initial-advertise-peer-urls"`
	InitialCluster           string `yaml:"initial_cluster"             cli:"initial-cluster"`
	InitialClusterState      string `yaml:"initial_cluster_state"       cli:"initial-cluster-state"`
	InitialClusterToken      string `yaml:"initial_cluster_token"       cli:"initial-cluster-token"`
	AdvertiseClientUrls      string `yaml:"advertise_client_urls"       cli:"advertise-client-urls"`
	Discovery                string `yaml:"discovery"                   cli:"discovery"`
	DiscoverySrv             string `yaml:"discovery_srv"               cli:"discovery-srv"`
	DiscoveryFallback        string `yaml:"discovery_fallback"          cli:"discovery-fallback"`
	DiscoveryProxy           string `yaml:"discovery_proxy"             cli:"discovery-proxy"`
	StrictReconfigCheck      bool   `yaml:"strict_reconfig_check"       cli:"strict-reconfig-check"`
	AutoCompactionRetention  int    `yaml:"auto_compaction_retention"   cli:"auto-compaction-retention"`
	Proxy                    string `yaml:"proxy"                       cli:"proxy"`
	ProxyFailureWait         int    `yaml:"proxy_failure_wait"          cli:"proxy-failure-wait"`
	ProxyRefreshInterval     int    `yaml:"proxy_refresh_interval"      cli:"proxy-refresh-interval"`
	ProxyDialTimeout         int    `yaml:"proxy_dial_timeout"          cli:"proxy-dial-timeout"`
	ProxyWriteTimeout        int    `yaml:"proxy_write_timeout"         cli:"proxy-write-timeout"`
	ProxyReadTimeout         int    `yaml:"proxy_read_timeout"          cli:"proxy-read-timeout"`
	CaFile                   string `` /* 139-byte string literal not displayed */
	CertFile                 string `yaml:"cert_file"                   cli:"cert-file"`
	KeyFile                  string `yaml:"key_file"                    cli:"key-file"`
	ClientCertAuth           bool   `yaml:"client_cert_auth"            cli:"client-cert-auth"`
	TrustedCaFile            string `yaml:"trusted_ca_file"             cli:"trusted-ca-file"`
	AutoTls                  bool   `yaml:"auto_tls"                    cli:"auto-tls"`
	PeerCaFile               string `` /* 151-byte string literal not displayed */
	PeerCertFile             string `yaml:"peer_cert_file"              cli:"peer-cert-file"`
	PeerKeyFile              string `yaml:"peer_key_file"               cli:"peer-key-file"`
	PeerClientCertAuth       bool   `yaml:"peer_client_cert_auth"       cli:"peer-client-cert-auth"`
	PeerTrustedCaFile        string `yaml:"peer_trusted_ca_file"        cli:"peer-trusted-ca-file"`
	PeerAutoTls              bool   `yaml:"peer_auto_tls"               cli:"peer-auto-tls"`
	Debug                    bool   `yaml:"debug"                       cli:"debug"`
	LogPackageLevels         string `yaml:"log_package_levels"          cli:"log-package-levels"`
	ForceNewCluster          bool   `yaml:"force_new_cluster"           cli:"force-new-cluster"`
	Metrics                  string `yaml:"metrics"                     cli:"metrics"`
	LogOutput                string `yaml:"log_output"                  cli:"log-output"`
}

type Etcd3_2 added in v0.4.0

type Etcd3_2 struct {
	Name                     string `yaml:"name"                        cli:"name"`
	DataDir                  string `yaml:"data_dir"                    cli:"data-dir"`
	WalDir                   string `yaml:"wal_dir"                     cli:"wal-dir"`
	SnapshotCount            int    `yaml:"snapshot_count"              cli:"snapshot-count"`
	HeartbeatInterval        int    `yaml:"heartbeat_interval"          cli:"heartbeat-interval"`
	ElectionTimeout          int    `yaml:"election_timeout"            cli:"election-timeout"`
	EnablePprof              bool   `yaml:"enable_pprof"                cli:"enable-pprof"`
	EnableV2                 bool   `yaml:"enable_v2"                   cli:"enable-v2"`
	ListenPeerUrls           string `yaml:"listen_peer_urls"            cli:"listen-peer-urls"`
	ListenClientUrls         string `yaml:"listen_client_urls"          cli:"listen-client-urls"`
	MaxSnapshots             int    `yaml:"max_snapshots"               cli:"max-snapshots"`
	MaxWals                  int    `yaml:"max_wals"                    cli:"max-wals"`
	Cors                     string `yaml:"cors"                        cli:"cors"`
	InitialAdvertisePeerUrls string `yaml:"initial_advertise_peer_urls" cli:"initial-advertise-peer-urls"`
	InitialCluster           string `yaml:"initial_cluster"             cli:"initial-cluster"`
	InitialClusterState      string `yaml:"initial_cluster_state"       cli:"initial-cluster-state"`
	InitialClusterToken      string `yaml:"initial_cluster_token"       cli:"initial-cluster-token"`
	AdvertiseClientUrls      string `yaml:"advertise_client_urls"       cli:"advertise-client-urls"`
	Discovery                string `yaml:"discovery"                   cli:"discovery"`
	DiscoverySrv             string `yaml:"discovery_srv"               cli:"discovery-srv"`
	DiscoveryFallback        string `yaml:"discovery_fallback"          cli:"discovery-fallback"`
	DiscoveryProxy           string `yaml:"discovery_proxy"             cli:"discovery-proxy"`
	StrictReconfigCheck      bool   `yaml:"strict_reconfig_check"       cli:"strict-reconfig-check"`
	AutoCompactionRetention  int    `yaml:"auto_compaction_retention"   cli:"auto-compaction-retention"`
	Proxy                    string `yaml:"proxy"                       cli:"proxy"`
	ProxyFailureWait         int    `yaml:"proxy_failure_wait"          cli:"proxy-failure-wait"`
	ProxyRefreshInterval     int    `yaml:"proxy_refresh_interval"      cli:"proxy-refresh-interval"`
	ProxyDialTimeout         int    `yaml:"proxy_dial_timeout"          cli:"proxy-dial-timeout"`
	ProxyWriteTimeout        int    `yaml:"proxy_write_timeout"         cli:"proxy-write-timeout"`
	ProxyReadTimeout         int    `yaml:"proxy_read_timeout"          cli:"proxy-read-timeout"`
	CaFile                   string `` /* 139-byte string literal not displayed */
	CertFile                 string `yaml:"cert_file"                   cli:"cert-file"`
	KeyFile                  string `yaml:"key_file"                    cli:"key-file"`
	ClientCertAuth           bool   `yaml:"client_cert_auth"            cli:"client-cert-auth"`
	TrustedCaFile            string `yaml:"trusted_ca_file"             cli:"trusted-ca-file"`
	AutoTls                  bool   `yaml:"auto_tls"                    cli:"auto-tls"`
	PeerCaFile               string `` /* 151-byte string literal not displayed */
	PeerCertFile             string `yaml:"peer_cert_file"              cli:"peer-cert-file"`
	PeerKeyFile              string `yaml:"peer_key_file"               cli:"peer-key-file"`
	PeerClientCertAuth       bool   `yaml:"peer_client_cert_auth"       cli:"peer-client-cert-auth"`
	PeerTrustedCaFile        string `yaml:"peer_trusted_ca_file"        cli:"peer-trusted-ca-file"`
	PeerAutoTls              bool   `yaml:"peer_auto_tls"               cli:"peer-auto-tls"`
	AuthToken                string `yaml:"auth_token"                  cli:"auth-token"`
	Debug                    bool   `yaml:"debug"                       cli:"debug"`
	LogPackageLevels         string `yaml:"log_package_levels"          cli:"log-package-levels"`
	ForceNewCluster          bool   `yaml:"force_new_cluster"           cli:"force-new-cluster"`
	Metrics                  string `yaml:"metrics"                     cli:"metrics"`
	LogOutput                string `yaml:"log_output"                  cli:"log-output"`
}

type EtcdVersion added in v0.2.0

type EtcdVersion semver.Version

func (EtcdVersion) String added in v0.2.0

func (e EtcdVersion) String() string

func (*EtcdVersion) UnmarshalYAML added in v0.2.0

func (e *EtcdVersion) UnmarshalYAML(unmarshal func(interface{}) error) error

func (EtcdVersion) Validate added in v0.2.0

func (e EtcdVersion) Validate() report.Report

type File

type File struct {
	Filesystem string       `yaml:"filesystem"`
	Path       string       `yaml:"path"`
	Mode       int          `yaml:"mode"`
	Contents   FileContents `yaml:"contents"`
	User       FileUser     `yaml:"user"`
	Group      FileGroup    `yaml:"group"`
}

type FileContents

type FileContents struct {
	Remote Remote `yaml:"remote"`
	Inline string `yaml:"inline"`
}

type FileGroup

type FileGroup struct {
	Id int `yaml:"id"`
}

type FileUser

type FileUser struct {
	Id int `yaml:"id"`
}

type Filesystem

type Filesystem struct {
	Name  string `yaml:"name"`
	Mount *Mount `yaml:"mount"`
	Path  string `yaml:"path"`
}

type Flannel added in v0.2.0

type Flannel struct {
	Version       *FlannelVersion `yaml:"version"`
	NetworkConfig NetworkConfig   `yaml:"network_config"`
	Options
}

func (*Flannel) UnmarshalYAML added in v0.2.0

func (flannel *Flannel) UnmarshalYAML(unmarshal func(interface{}) error) error

func (*Flannel) Validate added in v0.4.0

func (f *Flannel) Validate() report.Report

type Flannel0_5 added in v0.2.0

type Flannel0_5 struct {
	EtcdEndpoints string `yaml:"etcd_endpoints" cli:"etcd-endpoints"`
	EtcdCAFile    string `yaml:"etcd_cafile"    cli:"etcd-cafile"`
	EtcdCertFile  string `yaml:"etcd_certfile"  cli:"etcd-certfile"`
	EtcdKeyFile   string `yaml:"etcd_keyfile"   cli:"etcd-keyfile"`
	EtcdPrefix    string `yaml:"etcd_prefix"    cli:"etcd-prefix"`
	IPMasq        string `yaml:"ip_masq"        cli:"ip-masq"`
	SubnetFile    string `yaml:"subnet_file"    cli:"subnet-file"`
	Iface         string `yaml:"interface"      cli:"iface"`
	PublicIP      string `yaml:"public_ip"      cli:"public-ip"`
}

type Flannel0_6 added in v0.2.0

type Flannel0_6 struct {
	EtcdUsername  string `yaml:"etcd_username"  cli:"etcd-username"`
	EtcdPassword  string `yaml:"etcd_password"  cli:"etcd-password"`
	EtcdEndpoints string `yaml:"etcd_endpoints" cli:"etcd-endpoints"`
	EtcdCAFile    string `yaml:"etcd_cafile"    cli:"etcd-cafile"`
	EtcdCertFile  string `yaml:"etcd_certfile"  cli:"etcd-certfile"`
	EtcdKeyFile   string `yaml:"etcd_keyfile"   cli:"etcd-keyfile"`
	EtcdPrefix    string `yaml:"etcd_prefix"    cli:"etcd-prefix"`
	IPMasq        string `yaml:"ip_masq"        cli:"ip-masq"`
	SubnetFile    string `yaml:"subnet_file"    cli:"subnet-file"`
	Iface         string `yaml:"interface"      cli:"iface"`
	PublicIP      string `yaml:"public_ip"      cli:"public-ip"`
}

type Flannel0_7 added in v0.2.0

type Flannel0_7 struct {
	EtcdUsername  string `yaml:"etcd_username"   cli:"etcd-username"`
	EtcdPassword  string `yaml:"etcd_password"   cli:"etcd-password"`
	EtcdEndpoints string `yaml:"etcd_endpoints"  cli:"etcd-endpoints"`
	EtcdCAFile    string `yaml:"etcd_cafile"     cli:"etcd-cafile"`
	EtcdCertFile  string `yaml:"etcd_certfile"   cli:"etcd-certfile"`
	EtcdKeyFile   string `yaml:"etcd_keyfile"    cli:"etcd-keyfile"`
	EtcdPrefix    string `yaml:"etcd_prefix"     cli:"etcd-prefix"`
	IPMasq        string `yaml:"ip_masq"         cli:"ip-masq"`
	SubnetFile    string `yaml:"subnet_file"     cli:"subnet-file"`
	Iface         string `yaml:"interface"       cli:"iface"`
	PublicIP      string `yaml:"public_ip"       cli:"public-ip"`
	KubeSubnetMgr bool   `yaml:"kube_subnet_mgr" cli:"kube-subnet-mgr"`
}

Flannel0_7 represents flannel options for version 0.7.x. Don't embed Flannel0_6 because the yaml parser doesn't handle embedded structs

type FlannelVersion added in v0.2.0

type FlannelVersion semver.Version

func (FlannelVersion) String added in v0.2.0

func (fv FlannelVersion) String() string

func (*FlannelVersion) UnmarshalYAML added in v0.2.0

func (v *FlannelVersion) UnmarshalYAML(unmarshal func(interface{}) error) error

func (FlannelVersion) Validate added in v0.2.0

func (fv FlannelVersion) Validate() report.Report

type Group

type Group struct {
	Name         string `yaml:"name"`
	Gid          *uint  `yaml:"gid"`
	PasswordHash string `yaml:"password_hash"`
	System       bool   `yaml:"system"`
}

type Hash

type Hash struct {
	Function string `yaml:"function"`
	Sum      string `yaml:"sum"`
}

type Ignition

type Ignition struct {
	Config IgnitionConfig `yaml:"config"`
}

type IgnitionConfig

type IgnitionConfig struct {
	Append  []ConfigReference `yaml:"append"`
	Replace *ConfigReference  `yaml:"replace"`
}

type Locksmith added in v0.2.0

type Locksmith struct {
	RebootStrategy RebootStrategy `yaml:"reboot_strategy" locksmith:"REBOOT_STRATEGY"`
	WindowStart    WindowStart    `yaml:"window_start"    locksmith:"LOCKSMITHD_REBOOT_WINDOW_START"`
	WindowLength   WindowLength   `yaml:"window_length"   locksmith:"LOCKSMITHD_REBOOT_WINDOW_LENGTH"`
	Group          string         `yaml:"group"           locksmith:"LOCKSMITHD_GROUP"`
	EtcdEndpoints  string         `yaml:"etcd_endpoints"  locksmith:"LOCKSMITHD_ENDPOINT"`
	EtcdCAFile     string         `yaml:"etcd_cafile"     locksmith:"LOCKSMITHD_ETCD_CAFILE"`
	EtcdCertFile   string         `yaml:"etcd_certfile"   locksmith:"LOCKSMITHD_ETCD_CERTFILE"`
	EtcdKeyFile    string         `yaml:"etcd_keyfile"    locksmith:"LOCKSMITHD_ETCD_KEYFILE"`
}

func (Locksmith) Validate added in v0.3.0

func (l Locksmith) Validate() report.Report

type Mount

type Mount struct {
	Device string  `yaml:"device"`
	Format string  `yaml:"format"`
	Create *Create `yaml:"create"`
}

type NetworkConfig added in v0.4.0

type NetworkConfig string

func (NetworkConfig) Validate added in v0.4.0

func (nc NetworkConfig) Validate() report.Report

type Networkd

type Networkd struct {
	Units []NetworkdUnit `yaml:"units"`
}

type NetworkdUnit

type NetworkdUnit struct {
	Name     string `yaml:"name"`
	Contents string `yaml:"contents"`
}

type Options added in v0.2.0

type Options interface{}

Options can be the options for any Etcd version

type Partition

type Partition struct {
	Label    string `yaml:"label"`
	Number   int    `yaml:"number"`
	Size     string `yaml:"size"`
	Start    string `yaml:"start"`
	TypeGUID string `yaml:"type_guid"`
}

type Passwd

type Passwd struct {
	Users  []User  `yaml:"users"`
	Groups []Group `yaml:"groups"`
}

type Raid

type Raid struct {
	Name    string   `yaml:"name"`
	Level   string   `yaml:"level"`
	Devices []string `yaml:"devices"`
	Spares  int      `yaml:"spares"`
}

type RebootStrategy added in v0.2.0

type RebootStrategy string

func (RebootStrategy) Validate added in v0.2.0

func (r RebootStrategy) Validate() report.Report

type Remote

type Remote struct {
	Url          string       `yaml:"url"`
	Compression  string       `yaml:"compression"`
	Verification Verification `yaml:"verification"`
}

type Storage

type Storage struct {
	Disks       []Disk       `yaml:"disks"`
	Arrays      []Raid       `yaml:"raid"`
	Filesystems []Filesystem `yaml:"filesystems"`
	Files       []File       `yaml:"files"`
}

type Systemd

type Systemd struct {
	Units []SystemdUnit `yaml:"units"`
}

type SystemdUnit

type SystemdUnit struct {
	Name     string              `yaml:"name"`
	Enable   bool                `yaml:"enable"`
	Mask     bool                `yaml:"mask"`
	Contents string              `yaml:"contents"`
	DropIns  []SystemdUnitDropIn `yaml:"dropins"`
}

type SystemdUnitDropIn

type SystemdUnitDropIn struct {
	Name     string `yaml:"name"`
	Contents string `yaml:"contents"`
}

type Update added in v0.2.0

type Update struct {
	Group  UpdateGroup  `yaml:"group"`
	Server UpdateServer `yaml:"server"`
}

func (Update) Validate added in v0.2.0

func (u Update) Validate() report.Report

type UpdateGroup added in v0.2.0

type UpdateGroup string

type UpdateServer added in v0.2.0

type UpdateServer string

func (UpdateServer) Validate added in v0.2.0

func (s UpdateServer) Validate() report.Report

type User

type User struct {
	Name              string      `yaml:"name"`
	PasswordHash      string      `yaml:"password_hash"`
	SSHAuthorizedKeys []string    `yaml:"ssh_authorized_keys"`
	Create            *UserCreate `yaml:"create"`
}

type UserCreate

type UserCreate struct {
	Uid          *uint    `yaml:"uid"`
	GECOS        string   `yaml:"gecos"`
	Homedir      string   `yaml:"home_dir"`
	NoCreateHome bool     `yaml:"no_create_home"`
	PrimaryGroup string   `yaml:"primary_group"`
	Groups       []string `yaml:"groups"`
	NoUserGroup  bool     `yaml:"no_user_group"`
	System       bool     `yaml:"system"`
	NoLogInit    bool     `yaml:"no_log_init"`
	Shell        string   `yaml:"shell"`
}

type Verification

type Verification struct {
	Hash Hash `yaml:"hash"`
}

type WindowLength added in v0.3.0

type WindowLength string

func (WindowLength) Validate added in v0.3.0

func (l WindowLength) Validate() report.Report

type WindowStart added in v0.3.0

type WindowStart string

func (WindowStart) Validate added in v0.3.0

func (s WindowStart) Validate() report.Report

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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