Documentation
¶
Index ¶
- type Chef
- type Chpasswd
- type ChpasswdUser
- type CloudInit
- type DiskSetup
- type FSSetup
- type Group
- type MetaData
- type Nameservers
- type NetworkConfig
- type NetworkConfigEntry
- type NetworkDevice
- type NetworkMatch
- type NetworkMetaData
- type NetworkRoute
- type NetworkSubnet
- type PowerState
- type Puppet
- type SSHKeys
- type User
- type UserData
- type WriteFile
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Chef ¶
type Chef struct {
InstallType *string `json:"install_type,omitempty" yaml:"install_type,omitempty"`
ForceInstall *bool `json:"force_install,omitempty" yaml:"force_install,omitempty"`
ServerURL *string `json:"server_url,omitempty" yaml:"server_url,omitempty"`
NodeName *string `json:"node_name,omitempty" yaml:"node_name,omitempty"`
Environment *string `json:"environment,omitempty" yaml:"environment,omitempty"`
ValidationName *string `json:"validation_name,omitempty" yaml:"validation_name,omitempty"`
ValidationKey *string `json:"validation_key,omitempty" yaml:"validation_key,omitempty"`
RunList []string `json:"run_list,omitempty" yaml:"run_list,omitempty"`
}
type Chpasswd ¶
type Chpasswd struct {
Expire *bool `json:"expire,omitempty" yaml:"expire,omitempty"`
Users []ChpasswdUser `json:"users,omitempty" yaml:"users,omitempty"`
List interface{} `json:"list,omitempty" yaml:"list,omitempty"`
}
type ChpasswdUser ¶
type CloudInit ¶
type CloudInit struct {
MetaData *MetaData `json:"meta_data,omitempty" yaml:"meta_data,omitempty"`
UserData *UserData `json:"user_data,omitempty" yaml:"user_data,omitempty"`
NetworkConfig *NetworkConfig `json:"network_config,omitempty" yaml:"network_config,omitempty"`
}
type FSSetup ¶
type FSSetup struct {
Label *string `json:"label,omitempty" yaml:"label,omitempty"`
Filesystem *string `json:"filesystem,omitempty" yaml:"filesystem,omitempty"`
Device string `json:"device" yaml:"device"`
Partition *string `json:"partition,omitempty" yaml:"partition,omitempty"`
Overwrite *bool `json:"overwrite,omitempty" yaml:"overwrite,omitempty"`
ReplaceFS *string `json:"replace_fs,omitempty" yaml:"replace_fs,omitempty"`
}
type MetaData ¶
type MetaData struct {
InstanceID string `json:"instance-id" yaml:"instance-id"`
LocalHostname *string `json:"local-hostname,omitempty" yaml:"local-hostname,omitempty"`
Hostname *string `json:"hostname,omitempty" yaml:"hostname,omitempty"`
FQDN *string `json:"fqdn,omitempty" yaml:"fqdn,omitempty"`
AvailabilityZone *string `json:"availability-zone,omitempty" yaml:"availability-zone,omitempty"`
Region *string `json:"region,omitempty" yaml:"region,omitempty"`
PlacementRegion *string `json:"placement-region,omitempty" yaml:"placement-region,omitempty"`
CloudName *string `json:"cloud-name,omitempty" yaml:"cloud-name,omitempty"`
CloudID *string `json:"cloud-id,omitempty" yaml:"cloud-id,omitempty"`
Platform *string `json:"platform,omitempty" yaml:"platform,omitempty"`
SubPlatform *string `json:"subplatform,omitempty" yaml:"subplatform,omitempty"`
PublicKeys map[string]string `json:"public-keys,omitempty" yaml:"public-keys,omitempty"`
Network *NetworkMetaData `json:"network,omitempty" yaml:"network,omitempty"`
Tags map[string]string `json:"tags,omitempty" yaml:"tags,omitempty"`
}
type Nameservers ¶
type NetworkConfig ¶
type NetworkConfig struct {
Version int `json:"version" yaml:"version"`
Config []NetworkConfigEntry `json:"config,omitempty" yaml:"config,omitempty"` // version 1
Ethernets map[string]NetworkDevice `json:"ethernets,omitempty" yaml:"ethernets,omitempty"` // version 2
Wifis map[string]NetworkDevice `json:"wifis,omitempty" yaml:"wifis,omitempty"` // version 2
Bonds map[string]NetworkDevice `json:"bonds,omitempty" yaml:"bonds,omitempty"` // version 2
Bridges map[string]NetworkDevice `json:"bridges,omitempty" yaml:"bridges,omitempty"` // version 2
Vlans map[string]NetworkDevice `json:"vlans,omitempty" yaml:"vlans,omitempty"` // version 2
Routes []NetworkRoute `json:"routes,omitempty" yaml:"routes,omitempty"` // version 2
}
type NetworkConfigEntry ¶
type NetworkConfigEntry struct {
Type string `json:"type" yaml:"type"`
Name *string `json:"name,omitempty" yaml:"name,omitempty"`
MacAddress *string `json:"mac_address,omitempty" yaml:"mac_address,omitempty"`
MTU *int `json:"mtu,omitempty" yaml:"mtu,omitempty"`
Subnets []NetworkSubnet `json:"subnets,omitempty" yaml:"subnets,omitempty"`
Params map[string]any `json:"params,omitempty" yaml:"params,omitempty"`
}
type NetworkDevice ¶
type NetworkDevice struct {
DHCP4 *bool `json:"dhcp4,omitempty" yaml:"dhcp4,omitempty"`
DHCP6 *bool `json:"dhcp6,omitempty" yaml:"dhcp6,omitempty"`
Addresses []string `json:"addresses,omitempty" yaml:"addresses,omitempty"`
Gateway4 *string `json:"gateway4,omitempty" yaml:"gateway4,omitempty"`
Gateway6 *string `json:"gateway6,omitempty" yaml:"gateway6,omitempty"`
MTU *int `json:"mtu,omitempty" yaml:"mtu,omitempty"`
Nameservers *Nameservers `json:"nameservers,omitempty" yaml:"nameservers,omitempty"`
Routes []NetworkRoute `json:"routes,omitempty" yaml:"routes,omitempty"`
MacAddress *string `json:"macaddress,omitempty" yaml:"macaddress,omitempty"`
Match *NetworkMatch `json:"match,omitempty" yaml:"match,omitempty"`
Optional *bool `json:"optional,omitempty" yaml:"optional,omitempty"`
Interfaces []string `json:"interfaces,omitempty" yaml:"interfaces,omitempty"`
Parameters map[string]any `json:"parameters,omitempty" yaml:"parameters,omitempty"`
ID *int `json:"id,omitempty" yaml:"id,omitempty"`
Link *string `json:"link,omitempty" yaml:"link,omitempty"`
AccessPoints map[string]any `json:"access-points,omitempty" yaml:"access-points,omitempty"`
}
type NetworkMatch ¶
type NetworkMetaData ¶
type NetworkRoute ¶
type NetworkSubnet ¶
type NetworkSubnet struct {
Type string `json:"type" yaml:"type"`
Address *string `json:"address,omitempty" yaml:"address,omitempty"`
Gateway *string `json:"gateway,omitempty" yaml:"gateway,omitempty"`
DNSNameservers []string `json:"dns_nameservers,omitempty" yaml:"dns_nameservers,omitempty"`
DNSSearch []string `json:"dns_search,omitempty" yaml:"dns_search,omitempty"`
}
type PowerState ¶
type PowerState struct {
Delay *string `json:"delay,omitempty" yaml:"delay,omitempty"`
Mode *string `json:"mode,omitempty" yaml:"mode,omitempty"` // "reboot", "halt", "poweroff"
Message *string `json:"message,omitempty" yaml:"message,omitempty"`
Timeout *int `json:"timeout,omitempty" yaml:"timeout,omitempty"`
Condition *string `json:"condition,omitempty" yaml:"condition,omitempty"`
}
type Puppet ¶
type Puppet struct {
Install *bool `json:"install,omitempty" yaml:"install,omitempty"`
Version *string `json:"version,omitempty" yaml:"version,omitempty"`
CollectionName *string `json:"collection,omitempty" yaml:"collection,omitempty"`
AIOInstallURL *string `json:"aio_install_url,omitempty" yaml:"aio_install_url,omitempty"`
Cleanup *bool `json:"cleanup,omitempty" yaml:"cleanup,omitempty"`
StartService *bool `json:"start_service,omitempty" yaml:"start_service,omitempty"`
ServerName *string `json:"server,omitempty" yaml:"server,omitempty"`
}
type SSHKeys ¶
type SSHKeys struct {
RSAPrivate *string `json:"rsa_private,omitempty" yaml:"rsa_private,omitempty"`
RSAPublic *string `json:"rsa_public,omitempty" yaml:"rsa_public,omitempty"`
Ed25519Private *string `json:"ed25519_private,omitempty" yaml:"ed25519_private,omitempty"`
Ed25519Public *string `json:"ed25519_public,omitempty" yaml:"ed25519_public,omitempty"`
}
type User ¶
type User struct {
Name string `json:"name" yaml:"name"`
Gecos *string `json:"gecos,omitempty" yaml:"gecos,omitempty"`
Groups []string `json:"groups,omitempty" yaml:"groups,omitempty"`
HomeDir *string `json:"homedir,omitempty" yaml:"homedir,omitempty"`
Shell *string `json:"shell,omitempty" yaml:"shell,omitempty"`
Sudo *string `json:"sudo,omitempty" yaml:"sudo,omitempty"`
LockPasswd *bool `json:"lock_passwd,omitempty" yaml:"lock_passwd,omitempty"`
Passwd *string `json:"passwd,omitempty" yaml:"passwd,omitempty"`
SSHAuthorizedKeys []string `json:"ssh_authorized_keys,omitempty" yaml:"ssh_authorized_keys,omitempty"`
SSHImportID []string `json:"ssh_import_id,omitempty" yaml:"ssh_import_id,omitempty"`
System *bool `json:"system,omitempty" yaml:"system,omitempty"`
NoCreateHome *bool `json:"no_create_home,omitempty" yaml:"no_create_home,omitempty"`
NoUserGroup *bool `json:"no_user_group,omitempty" yaml:"no_user_group,omitempty"`
Inactive *bool `json:"inactive,omitempty" yaml:"inactive,omitempty"`
Expiredate *string `json:"expiredate,omitempty" yaml:"expiredate,omitempty"`
PrimaryGroup *string `json:"primary_group,omitempty" yaml:"primary_group,omitempty"`
UID *int `json:"uid,omitempty" yaml:"uid,omitempty"`
}
type UserData ¶
type UserData struct {
Hostname *string `json:"hostname,omitempty" yaml:"hostname,omitempty"`
FQDN *string `json:"fqdn,omitempty" yaml:"fqdn,omitempty"`
Locale *string `json:"locale,omitempty" yaml:"locale,omitempty"`
Timezone *string `json:"timezone,omitempty" yaml:"timezone,omitempty"`
Users []User `json:"users,omitempty" yaml:"users,omitempty"`
Groups []Group `json:"groups,omitempty" yaml:"groups,omitempty"`
SSHAuthorizedKeys []string `json:"ssh_authorized_keys,omitempty" yaml:"ssh_authorized_keys,omitempty"`
SSHKeys *SSHKeys `json:"ssh_keys,omitempty" yaml:"ssh_keys,omitempty"`
DisableRoot *bool `json:"disable_root,omitempty" yaml:"disable_root,omitempty"`
SSHPwAuth *bool `json:"ssh_pwauth,omitempty" yaml:"ssh_pwauth,omitempty"`
PackageUpdate *bool `json:"package_update,omitempty" yaml:"package_update,omitempty"`
PackageUpgrade *bool `json:"package_upgrade,omitempty" yaml:"package_upgrade,omitempty"`
PackageRebootIfRequired *bool `json:"package_reboot_if_required,omitempty" yaml:"package_reboot_if_required,omitempty"`
Packages []string `json:"packages,omitempty" yaml:"packages,omitempty"`
WriteFiles []WriteFile `json:"write_files,omitempty" yaml:"write_files,omitempty"`
BootCMD []interface{} `json:"bootcmd,omitempty" yaml:"bootcmd,omitempty"`
RunCMD []interface{} `json:"runcmd,omitempty" yaml:"runcmd,omitempty"`
FinalMessage *string `json:"final_message,omitempty" yaml:"final_message,omitempty"`
Mounts [][]string `json:"mounts,omitempty" yaml:"mounts,omitempty"`
DiskSetup map[string]DiskSetup `json:"disk_setup,omitempty" yaml:"disk_setup,omitempty"`
FSSetup []FSSetup `json:"fs_setup,omitempty" yaml:"fs_setup,omitempty"`
ManageEtcHosts *bool `json:"manage_etc_hosts,omitempty" yaml:"manage_etc_hosts,omitempty"`
PowerState *PowerState `json:"power_state,omitempty" yaml:"power_state,omitempty"`
Chef *Chef `json:"chef,omitempty" yaml:"chef,omitempty"`
Puppet *Puppet `json:"puppet,omitempty" yaml:"puppet,omitempty"`
Chpasswd *Chpasswd `json:"chpasswd,omitempty" yaml:"chpasswd,omitempty"`
}
type WriteFile ¶
type WriteFile struct {
Path string `json:"path" yaml:"path"`
Content *string `json:"content,omitempty" yaml:"content,omitempty"`
Owner *string `json:"owner,omitempty" yaml:"owner,omitempty"`
Permissions *string `json:"permissions,omitempty" yaml:"permissions,omitempty"`
Encoding *string `json:"encoding,omitempty" yaml:"encoding,omitempty"`
Append *bool `json:"append,omitempty" yaml:"append,omitempty"`
Defer *bool `json:"defer,omitempty" yaml:"defer,omitempty"`
}
Click to show internal directories.
Click to hide internal directories.