Documentation ¶
Index ¶
- Variables
- type Compression
- type Config
- type ConfigReference
- type Directory
- type Disk
- type File
- type FileContents
- type Filesystem
- type FilesystemCreate
- type FilesystemFormat
- type FilesystemMount
- type Group
- type Hash
- type Ignition
- type IgnitionConfig
- type IgnitionVersion
- type MkfsOptions
- type Networkd
- type NetworkdUnit
- type NetworkdUnitName
- type Node
- type NodeGroup
- type NodeMode
- type NodeUser
- type Partition
- type PartitionDimension
- type PartitionLabel
- type PartitionTypeGUID
- type Passwd
- type Path
- type Raid
- type Storage
- type Systemd
- type SystemdUnit
- type SystemdUnitDropIn
- type SystemdUnitDropInName
- type SystemdUnitName
- type Timeouts
- type Url
- type User
- type UserCreate
- type Verification
Constants ¶
This section is empty.
Variables ¶
View Source
var ( ErrFilesystemInvalidFormat = errors.New("invalid filesystem format") ErrFilesystemNoMountPath = errors.New("filesystem is missing mount or path") ErrFilesystemMountAndPath = errors.New("filesystem has both mount and path defined") )
View Source
var ( ErrHashMalformed = errors.New("malformed hash specifier") ErrHashWrongSize = errors.New("incorrect size for hash sum") ErrHashUnrecognized = errors.New("unrecognized hash function") )
View Source
var ( ErrOldVersion = errors.New("incorrect config version (too old)") ErrNewVersion = errors.New("incorrect config version (too new)") )
View Source
var ( ErrNoFilesystem = errors.New("no filesystem specified") ErrFileIllegalMode = errors.New("illegal file mode") )
View Source
var (
ErrCompressionInvalid = errors.New("invalid compression method")
)
View Source
var (
ErrInvalidScheme = errors.New("invalid url scheme")
)
View Source
var (
ErrPathRelative = errors.New("path not absolute")
)
View Source
var (
MaxVersion = semver.Version{
Major: 2,
Minor: 1,
PreRelease: "experimental",
}
)
Functions ¶
This section is empty.
Types ¶
type Compression ¶
type Compression string
func (Compression) Validate ¶ added in v0.9.0
func (c Compression) Validate() report.Report
type Config ¶
type ConfigReference ¶
type ConfigReference struct { Source Url `json:"source,omitempty"` Verification Verification `json:"verification,omitempty"` }
type Disk ¶
type File ¶
type File struct { Node Contents FileContents `json:"contents,omitempty"` }
File represents regular files
type FileContents ¶
type FileContents struct { Compression Compression `json:"compression,omitempty"` Source Url `json:"source,omitempty"` Verification Verification `json:"verification,omitempty"` }
type Filesystem ¶
type Filesystem struct { Name string `json:"name,omitempty"` Mount *FilesystemMount `json:"mount,omitempty"` Path *Path `json:"path,omitempty"` }
func (Filesystem) Validate ¶ added in v0.9.0
func (f Filesystem) Validate() report.Report
type FilesystemCreate ¶
type FilesystemCreate struct { Force bool `json:"force,omitempty"` Options MkfsOptions `json:"options,omitempty"` }
type FilesystemFormat ¶
type FilesystemFormat string
func (FilesystemFormat) Validate ¶ added in v0.9.0
func (f FilesystemFormat) Validate() report.Report
type FilesystemMount ¶
type FilesystemMount struct { Device Path `json:"device,omitempty"` Format FilesystemFormat `json:"format,omitempty"` Create *FilesystemCreate `json:"create,omitempty"` }
type Ignition ¶
type Ignition struct { Version IgnitionVersion `json:"version,omitempty" merge:"old"` Config IgnitionConfig `json:"config,omitempty" merge:"new"` Timeouts Timeouts `json:"timeouts,omitempty" merge:"new"` }
type IgnitionConfig ¶
type IgnitionConfig struct { Append []ConfigReference `json:"append,omitempty"` Replace *ConfigReference `json:"replace,omitempty"` }
type IgnitionVersion ¶
func (IgnitionVersion) MarshalJSON ¶
func (v IgnitionVersion) MarshalJSON() ([]byte, error)
func (*IgnitionVersion) UnmarshalJSON ¶
func (v *IgnitionVersion) UnmarshalJSON(data []byte) error
func (IgnitionVersion) Validate ¶ added in v0.9.0
func (v IgnitionVersion) Validate() report.Report
type MkfsOptions ¶
type MkfsOptions []string
type Networkd ¶
type Networkd struct {
Units []NetworkdUnit `json:"units,omitempty"`
}
type NetworkdUnit ¶
type NetworkdUnit struct { Name NetworkdUnitName `json:"name,omitempty"` Contents string `json:"contents,omitempty"` }
func (NetworkdUnit) Validate ¶ added in v0.13.0
func (u NetworkdUnit) Validate() report.Report
type NetworkdUnitName ¶
type NetworkdUnitName string
func (NetworkdUnitName) Validate ¶ added in v0.9.0
func (n NetworkdUnitName) Validate() report.Report
type Node ¶ added in v0.13.0
type Node struct { Filesystem string `json:"filesystem,omitempty"` Path Path `json:"path,omitempty"` Mode NodeMode `json:"mode,omitempty"` User NodeUser `json:"user,omitempty"` Group NodeGroup `json:"group,omitempty"` }
Node represents all common info for files (special types, e.g. directories, included).
type Partition ¶
type Partition struct { Label PartitionLabel `json:"label,omitempty"` Number int `json:"number"` Size PartitionDimension `json:"size"` Start PartitionDimension `json:"start"` TypeGUID PartitionTypeGUID `json:"typeGuid,omitempty"` }
type PartitionDimension ¶
type PartitionDimension uint64
type PartitionLabel ¶
type PartitionLabel string
func (PartitionLabel) Validate ¶ added in v0.9.0
func (n PartitionLabel) Validate() report.Report
type PartitionTypeGUID ¶
type PartitionTypeGUID string
func (PartitionTypeGUID) Validate ¶ added in v0.9.0
func (d PartitionTypeGUID) Validate() report.Report
type Raid ¶
type Storage ¶
type Storage struct { Disks []Disk `json:"disks,omitempty"` Arrays []Raid `json:"raid,omitempty"` Filesystems []Filesystem `json:"filesystems,omitempty"` Files []File `json:"files,omitempty"` Directories []Directory `json:"directories,omitempty"` }
type Systemd ¶
type Systemd struct {
Units []SystemdUnit `json:"units,omitempty"`
}
type SystemdUnit ¶
type SystemdUnit struct { Name SystemdUnitName `json:"name,omitempty"` Enable bool `json:"enable,omitempty"` Mask bool `json:"mask,omitempty"` Contents string `json:"contents,omitempty"` DropIns []SystemdUnitDropIn `json:"dropins,omitempty"` }
func (SystemdUnit) Validate ¶ added in v0.13.0
func (u SystemdUnit) Validate() report.Report
type SystemdUnitDropIn ¶
type SystemdUnitDropIn struct { Name SystemdUnitDropInName `json:"name,omitempty"` Contents string `json:"contents,omitempty"` }
func (SystemdUnitDropIn) Validate ¶ added in v0.13.0
func (u SystemdUnitDropIn) Validate() report.Report
type SystemdUnitDropInName ¶
type SystemdUnitDropInName string
func (SystemdUnitDropInName) Validate ¶ added in v0.9.0
func (n SystemdUnitDropInName) Validate() report.Report
type SystemdUnitName ¶
type SystemdUnitName string
func (SystemdUnitName) Validate ¶ added in v0.9.0
func (n SystemdUnitName) Validate() report.Report
type User ¶
type User struct { Name string `json:"name,omitempty"` PasswordHash string `json:"passwordHash,omitempty"` SSHAuthorizedKeys []string `json:"sshAuthorizedKeys,omitempty"` Create *UserCreate `json:"create,omitempty"` }
type UserCreate ¶
type UserCreate struct { Uid *uint `json:"uid,omitempty"` GECOS string `json:"gecos,omitempty"` Homedir string `json:"homeDir,omitempty"` NoCreateHome bool `json:"noCreateHome,omitempty"` PrimaryGroup string `json:"primaryGroup,omitempty"` Groups []string `json:"groups,omitempty"` NoUserGroup bool `json:"noUserGroup,omitempty"` System bool `json:"system,omitempty"` NoLogInit bool `json:"noLogInit,omitempty"` Shell string `json:"shell,omitempty"` }
type Verification ¶
type Verification struct {
Hash *Hash `json:"hash,omitempty"`
}
Click to show internal directories.
Click to hide internal directories.