ignition

package
v0.9.0-beta.0 Latest Latest
Warning

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

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

Documentation

Overview

Package ignition implements ignition code.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type CaReference

type CaReference struct {
	HTTPHeaders  HTTPHeaders  `json:"httpHeaders,omitempty"`
	Source       string       `json:"source"`
	Verification Verification `json:"verification,omitempty"`
}

CaReference holds the CaReference specific information.

type Config

type Config struct {
	Ignition Ignition `json:"ignition"`
	Networkd Networkd `json:"networkd,omitempty"`
	Passwd   Passwd   `json:"passwd,omitempty"`
	Storage  Storage  `json:"storage,omitempty"`
	Systemd  Systemd  `json:"systemd,omitempty"`
}

Config holds the Config specific information.

type ConfigReference

type ConfigReference struct {
	HTTPHeaders  HTTPHeaders  `json:"httpHeaders,omitempty"`
	Source       string       `json:"source"`
	Verification Verification `json:"verification,omitempty"`
}

ConfigReference holds the ConfigReference specific information.

type Create

type Create struct {
	Force   bool           `json:"force,omitempty"`
	Options []CreateOption `json:"options,omitempty"`
}

Create holds the Create specific information.

type CreateOption

type CreateOption string

CreateOption holds the CreateOption specific information.

type Device

type Device string

Device holds the Device specific information.

type Directory

type Directory struct {
	Node
	DirectoryEmbedded1
}

Directory holds the Directory specific information.

type DirectoryEmbedded1

type DirectoryEmbedded1 struct {
	Mode *int `json:"mode,omitempty"`
}

DirectoryEmbedded1 holds the DirectoryEmbedded1 specific information.

type Disk

type Disk struct {
	Device     string      `json:"device"`
	Partitions []Partition `json:"partitions,omitempty"`
	WipeTable  bool        `json:"wipeTable,omitempty"`
}

Disk holds the Disk specific information.

type File

type File struct {
	Node
	FileEmbedded1
}

File holds the File specific information.

type FileContents

type FileContents struct {
	Compression  string       `json:"compression,omitempty"`
	HTTPHeaders  HTTPHeaders  `json:"httpHeaders,omitempty"`
	Source       string       `json:"source,omitempty"`
	Verification Verification `json:"verification,omitempty"`
}

FileContents holds the FileContents specific information.

type FileEmbedded1

type FileEmbedded1 struct {
	Append   bool         `json:"append,omitempty"`
	Contents FileContents `json:"contents,omitempty"`
	Mode     *int         `json:"mode,omitempty"`
}

FileEmbedded1 holds the FileEmbedded1 specific information.

type Filesystem

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

Filesystem holds the Filesystem specific information.

type Group

type Group string

Group holds the Group specific information.

type HTTPHeader

type HTTPHeader struct {
	Name  string `json:"name"`
	Value string `json:"value"`
}

HTTPHeader holds the HTTPHeader specific information.

type HTTPHeaders

type HTTPHeaders []HTTPHeader

HTTPHeaders holds the HTTPHeaders specific information.

type Ignition

type Ignition struct {
	Config   IgnitionConfig `json:"config,omitempty"`
	Proxy    Proxy          `json:"proxy,omitempty"`
	Security Security       `json:"security,omitempty"`
	Timeouts Timeouts       `json:"timeouts,omitempty"`
	Version  string         `json:"version,omitempty"`
}

Ignition holds the Ignition specific information.

type IgnitionConfig

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

IgnitionConfig holds the IgnitionConfig specific information.

type Link struct {
	Node
	LinkEmbedded1
}

Link holds the Link specific information.

type LinkEmbedded1

type LinkEmbedded1 struct {
	Hard   bool   `json:"hard,omitempty"`
	Target string `json:"target"`
}

LinkEmbedded1 holds the LinkEmbedded1 specific information.

type Mount

type Mount struct {
	Create         *Create       `json:"create,omitempty"`
	Device         string        `json:"device"`
	Format         string        `json:"format"`
	Label          *string       `json:"label,omitempty"`
	Options        []MountOption `json:"options,omitempty"`
	UUID           *string       `json:"uuid,omitempty"`
	WipeFilesystem bool          `json:"wipeFilesystem,omitempty"`
}

Mount holds the Mount specific information.

type MountOption

type MountOption string

MountOption holds the MountOption specific information.

type Networkd

type Networkd struct {
	Units []Networkdunit `json:"units,omitempty"`
}

Networkd holds the Networkd specific information.

type NetworkdDropin

type NetworkdDropin struct {
	Contents string `json:"contents,omitempty"`
	Name     string `json:"name"`
}

NetworkdDropin holds the NetworkdDropin specific information.

type Networkdunit

type Networkdunit struct {
	Contents string           `json:"contents,omitempty"`
	Dropins  []NetworkdDropin `json:"dropins,omitempty"`
	Name     string           `json:"name"`
}

Networkdunit holds the Networkdunit specific information.

type NoProxyItem

type NoProxyItem string

NoProxyItem holds the NoProxyItem specific information.

type Node

type Node struct {
	Filesystem string     `json:"filesystem"`
	Group      *NodeGroup `json:"group,omitempty"`
	Overwrite  *bool      `json:"overwrite,omitempty"`
	Path       string     `json:"path"`
	User       *NodeUser  `json:"user,omitempty"`
}

Node holds the Node specific information.

type NodeGroup

type NodeGroup struct {
	ID   *int   `json:"id,omitempty"`
	Name string `json:"name,omitempty"`
}

NodeGroup holds the NodeGroup specific information.

type NodeUser

type NodeUser struct {
	ID   *int   `json:"id,omitempty"`
	Name string `json:"name,omitempty"`
}

NodeUser holds the NodeUser specific information.

type Partition

type Partition struct {
	GUID               string  `json:"guid,omitempty"`
	Label              *string `json:"label,omitempty"`
	Number             int     `json:"number,omitempty"`
	ShouldExist        *bool   `json:"shouldExist,omitempty"`
	Size               *int    `json:"size,omitempty"`
	SizeMiB            *int    `json:"sizeMiB,omitempty"`
	Start              *int    `json:"start,omitempty"`
	StartMiB           *int    `json:"startMiB,omitempty"`
	TypeGUID           string  `json:"typeGuid,omitempty"`
	WipePartitionEntry bool    `json:"wipePartitionEntry,omitempty"`
}

Partition holds the Partition specific information.

type Passwd

type Passwd struct {
	Groups []PasswdGroup `json:"groups,omitempty"`
	Users  []PasswdUser  `json:"users,omitempty"`
}

Passwd holds the Passwd specific information.

type PasswdGroup

type PasswdGroup struct {
	Gid          *int   `json:"gid,omitempty"` //nolint:stylecheck
	Name         string `json:"name"`
	PasswordHash string `json:"passwordHash,omitempty"`
	System       bool   `json:"system,omitempty"`
}

PasswdGroup holds the PasswdGroup specific information.

type PasswdUser

type PasswdUser struct {
	Create            *Usercreate        `json:"create,omitempty"`
	Gecos             string             `json:"gecos,omitempty"`
	Groups            []Group            `json:"groups,omitempty"`
	HomeDir           string             `json:"homeDir,omitempty"`
	Name              string             `json:"name"`
	NoCreateHome      bool               `json:"noCreateHome,omitempty"`
	NoLogInit         bool               `json:"noLogInit,omitempty"`
	NoUserGroup       bool               `json:"noUserGroup,omitempty"`
	PasswordHash      *string            `json:"passwordHash,omitempty"`
	PrimaryGroup      string             `json:"primaryGroup,omitempty"`
	SSHAuthorizedKeys []SSHAuthorizedKey `json:"sshAuthorizedKeys,omitempty"`
	Shell             string             `json:"shell,omitempty"`
	System            bool               `json:"system,omitempty"`
	UID               *int               `json:"uid,omitempty"`
}

PasswdUser holds the PasswdUser specific information.

type Proxy

type Proxy struct {
	HTTPProxy  string        `json:"httpProxy,omitempty"`
	HTTPSProxy string        `json:"httpsProxy,omitempty"`
	NoProxy    []NoProxyItem `json:"noProxy,omitempty"`
}

Proxy holds the Proxy specific information.

type Raid

type Raid struct {
	Devices []Device     `json:"devices"`
	Level   string       `json:"level"`
	Name    string       `json:"name"`
	Options []RaidOption `json:"options,omitempty"`
	Spares  int          `json:"spares,omitempty"`
}

Raid holds the Raid specific information.

type RaidOption

type RaidOption string

RaidOption holds the RaidOption specific information.

type SSHAuthorizedKey

type SSHAuthorizedKey string

SSHAuthorizedKey holds the SSHAuthorizedKey specific information.

type Security

type Security struct {
	TLS TLS `json:"tls,omitempty"`
}

Security holds the Security specific information.

type Storage

type Storage struct {
	Directories []Directory  `json:"directories,omitempty"`
	Disks       []Disk       `json:"disks,omitempty"`
	Files       []File       `json:"files,omitempty"`
	Filesystems []Filesystem `json:"filesystems,omitempty"`
	Links       []Link       `json:"links,omitempty"`
	Raid        []Raid       `json:"raid,omitempty"`
}

Storage holds the Storage specific information.

type Systemd

type Systemd struct {
	Units []Unit `json:"units,omitempty"`
}

Systemd holds the Systemd specific information.

type SystemdDropin

type SystemdDropin struct {
	Contents string `json:"contents,omitempty"`
	Name     string `json:"name"`
}

SystemdDropin holds the SystemdDropin specific information.

type TLS

type TLS struct {
	CertificateAuthorities []CaReference `json:"certificateAuthorities,omitempty"`
}

TLS holds the TLS specific information.

type Timeouts

type Timeouts struct {
	HTTPResponseHeaders *int `json:"httpResponseHeaders,omitempty"`
	HTTPTotal           *int `json:"httpTotal,omitempty"`
}

Timeouts holds the Timeouts specific information.

type Unit

type Unit struct {
	Contents string          `json:"contents,omitempty"`
	Dropins  []SystemdDropin `json:"dropins,omitempty"`
	Enable   bool            `json:"enable,omitempty"`
	Enabled  *bool           `json:"enabled,omitempty"`
	Mask     bool            `json:"mask,omitempty"`
	Name     string          `json:"name"`
}

Unit holds the Unit specific information.

type Usercreate

type Usercreate struct {
	Gecos        string            `json:"gecos,omitempty"`
	Groups       []UsercreateGroup `json:"groups,omitempty"`
	HomeDir      string            `json:"homeDir,omitempty"`
	NoCreateHome bool              `json:"noCreateHome,omitempty"`
	NoLogInit    bool              `json:"noLogInit,omitempty"`
	NoUserGroup  bool              `json:"noUserGroup,omitempty"`
	PrimaryGroup string            `json:"primaryGroup,omitempty"`
	Shell        string            `json:"shell,omitempty"`
	System       bool              `json:"system,omitempty"`
	UID          *int              `json:"uid,omitempty"`
}

Usercreate holds the Usercreate specific information.

type UsercreateGroup

type UsercreateGroup string

UsercreateGroup holds the UsercreateGroup specific information.

type Verification

type Verification struct {
	Hash *string `json:"hash,omitempty"`
}

Verification holds the Verification specific information.

Jump to

Keyboard shortcuts

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