Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func IsCloudConfig ¶
Types ¶
type CloudConfig ¶
type CloudConfig struct { SSHAuthorizedKeys []string `yaml:"ssh_authorized_keys,omitempty"` WriteFiles []File `yaml:"write_files,omitempty"` Hostname string `yaml:"hostname,omitempty"` Users []User `yaml:"users,omitempty"` RunCmd []string `yaml:"runcmd,omitempty"` Partitioning GrowPart `yaml:"growpart"` // this one is legacy, can be removed when no more kip controllers use it MilpaFiles []File `yaml:"milpa_files,omitempty"` }
CloudConfig encapsulates the entire cloud-config configuration file and maps directly to YAML. Fields that cannot be set in the cloud-config (fields used for internal use) have the YAML tag '-' so that they aren't marshalled.
func NewCloudConfig ¶
func NewCloudConfig(contents string) (*CloudConfig, error)
NewCloudConfig instantiates a new CloudConfig from the given contents (a string of YAML), returning any error encountered. It will ignore unknown fields but log encountering them.
type File ¶
type File struct { Encoding string `yaml:"encoding,omitempty" valid:"^(base64|b64|gz|gzip|gz\\+base64|gzip\\+base64|gz\\+b64|gzip\\+b64)$"` Content string `yaml:"content,omitempty"` Owner string `yaml:"owner,omitempty"` Path string `yaml:"path,omitempty"` RawFilePermissions string `yaml:"permissions,omitempty" valid:"^0?[0-7]{3,4}$"` }
type User ¶
type User struct { Name string `yaml:"name,omitempty"` PasswordHash string `yaml:"passwd,omitempty"` SSHAuthorizedKeys []string `yaml:"ssh_authorized_keys,omitempty"` SSHImportGithubUser string `` /* 139-byte string literal not displayed */ SSHImportGithubUsers []string `` /* 139-byte string literal not displayed */ SSHImportURL string `` /* 139-byte string literal not displayed */ GECOS string `yaml:"gecos,omitempty"` Homedir string `yaml:"homedir,omitempty"` NoCreateHome bool `yaml:"no_create_home,omitempty"` PrimaryGroup string `yaml:"primary_group,omitempty"` Groups []string `yaml:"groups,omitempty"` NoUserGroup bool `yaml:"no_user_group,omitempty"` System bool `yaml:"system,omitempty"` NoLogInit bool `yaml:"no_log_init,omitempty"` Shell string `yaml:"shell,omitempty"` LockPasswd bool `yaml:"lock_passwd"` UID string `yaml:"uid"` }
Click to show internal directories.
Click to hide internal directories.