Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Bios ¶ added in v0.2.3
type Bios struct {
Dell *Dell `yaml:"dell"`
}
Bios struct holds bios configuration for each vendor.
type BladeBmcAccount ¶ added in v0.2.3
BladeBmcAccount declares attributes for a Blade BMC user to be managed through the chassis.
type Dell ¶ added in v0.2.2
type Dell struct {
Idrac9BiosSettings *Idrac9BiosSettings `yaml:"idrac9bios"`
}
Dell holds configuration parameters for Dell assets.
type HTTPSCert ¶ added in v0.2.4
type HTTPSCert struct {
// Renew cert if it will expire in this time period.
RenewBeforeExpiry time.Duration `yaml:"renewBeforeExpiry"`
// Validate these attributes when renewing certs
ValidateAttributes []string `yaml:"validateAttributes"`
Attributes *HTTPSCertAttributes `yaml:"attributes"`
}
HTTPSCert struct holds BMC HTTPs cert configuration.
type HTTPSCertAttributes ¶ added in v0.2.4
type HTTPSCertAttributes struct {
CommonName string `yaml:"commonName"`
OrganizationName string `yaml:"organizationName"`
OrganizationUnit string `yaml:"organizationUnit"`
Locality string `yaml:"locality"`
StateName string `yaml:"stateName"`
CountryCode string `yaml:"countryCode"`
Email string `yaml:"email"`
SubjectAltName string `yaml:"subjectAltName"`
}
HTTPSCertAttributes declares attributes that are part of a cert.
type Idrac9BiosSettings ¶ added in v0.2.2
type Idrac9BiosSettings struct {
PxeDev1EnDis string `json:"PxeDev1EnDis,omitempty" yaml:"PxeDev1EnDis,omitempty" validate:"oneof=Enabled Disabled"`
PxeDev2EnDis string `json:"PxeDev2EnDis,omitempty" yaml:"PxeDev2EnDis,omitempty" validate:"oneof=Enabled Disabled"`
PxeDev3EnDis string `json:"PxeDev3EnDis,omitempty" yaml:"PxeDev3EnDis,omitempty" validate:"oneof=Enabled Disabled"`
PxeDev4EnDis string `json:"PxeDev4EnDis,omitempty" yaml:"PxeDev4EnDis,omitempty" validate:"oneof=Enabled Disabled"`
}
Idrac9BiosSettings holds configuration parameters for Idrac9 bios.
type Ldap ¶
type Ldap struct {
Server string `yaml:"server"`
Port int `yaml:"port"`
Enable bool `yaml:"enable"`
Role string `yaml:"role"`
BaseDn string `yaml:"baseDn"` //BaseDN is the starting point of the LDAP tree search.
BindDn string `yaml:"bindDn"` //BindDN is used to gain access to the LDAP tree.
Group string `yaml:"group"`
GroupBaseDn string `yaml:"groupBaseDn"`
UserAttribute string `yaml:"userAttribute"`
GroupAttribute string `yaml:"groupAttribute"`
SearchFilter string `yaml:"searchFilter"`
}
Ldap struct holds BMC LDAP configuration.
type LdapGroup ¶
type LdapGroup struct {
Role string `yaml:"role"`
Group string `yaml:"group"`
GroupBaseDn string `yaml:"groupBaseDn"`
Enable bool `yaml:"enable"`
}
LdapGroup struct holds BMC LDAP role group configuration.
type License ¶ added in v0.2.2
type License struct {
Key string `yaml:"key"`
}
License struct holds BMC licencing configuration.
type Network ¶
type Network struct {
Hostname string `yaml:"hostname"`
DNSFromDHCP bool `yaml:"dnsFromDhcp"`
SSHEnable bool `yaml:"sshEnable"`
SSHPort int `yaml:"sshPort"`
SolEnable bool `yaml:"solEnable"` //Serial over lan
IpmiEnable bool `yaml:"ipmiEnable"`
DhcpEnable bool `yaml:"dhcpEnable"`
IpmiPort int `yaml:"ipmiPort"`
KVMMediaPort int `yaml:"kvmMediaPort"`
KVMConsolePort int `yaml:"kvmConsolePort"`
DDNSEnable bool `yaml:"ddnsEnable"`
}
Network struct holds BMC network configuration.
type Ntp ¶
type Ntp struct {
Enable bool `yaml:"enable"`
Server1 string `yaml:"server1"`
Server2 string `yaml:"server2"`
Server3 string `yaml:"server3"`
Timezone string `yaml:"timezone"`
}
Ntp struct holds BMC NTP configuration.
type ResourcesConfig ¶
type ResourcesConfig struct {
Ldap *Ldap `yaml:"ldap"`
LdapGroup []*LdapGroup `yaml:"ldapGroup"`
License *License `yaml:"license"`
Network *Network `yaml:"network"`
Syslog *Syslog `yaml:"syslog"`
User []*User `yaml:"user"`
HTTPSCert *HTTPSCert `yaml:"httpsCert"`
Ntp *Ntp `yaml:"ntp"`
Bios *Bios `yaml:"bios"`
Supermicro *Supermicro `yaml:"supermicro"` //supermicro specific config, example of issue #34
SetupChassis *SetupChassis `yaml:"setupChassis"`
}
ResourcesConfig struct holds all the configuration to be applied.
type SetupChassis ¶ added in v0.2.2
type SetupChassis struct {
FlexAddress *flexAddress `yaml:"flexAddress"`
IpmiOverLan *ipmiOverLan `yaml:"ipmiOverLan"`
DynamicPower *dynamicPower `yaml:"dynamicPower"`
BladesPower *bladesPower `yaml:"bladesPower"`
AddBladeBmcAdmins []*BladeBmcAccount `yaml:"addBladeBmcAdmins"`
RemoveBladeBmcUsers []*BladeBmcAccount `yaml:"removeBladeBmcUsers"`
}
SetupChassis struct holds attributes for one time chassis setup.
type Supermicro ¶
type Supermicro struct {
NetworkCfg *SupermicroNetworkCfg `yaml:"network"`
}
Supermicro holds configuration for supermicro assets.
type SupermicroNetworkCfg ¶
type SupermicroNetworkCfg struct {
Web string `yaml:"web"`
WebSsl int `yaml:"webSsl"`
IkvmServerPort int `yaml:"ikvmServerPort"`
VirtualMediaPort int `yaml:"virtualMediaPort"`
SSHPort int `yaml:"sshPort"`
}
SupermicroNetworkCfg holds configuration for supermicro network. this is an example for issue #34