Documentation ¶
Index ¶
- Variables
- func AllocateIps(ncns []*csi.LogicalNCN, networks map[string]*csi.IPV4Network)
- func Copy(srcFile, dstFile string) error
- func CopyArtifactsToPart(src string, dest string, regex string)
- func CopyDirectory(scrDir, dest string) error
- func CopySymLink(source, dest string) error
- func CreateIfNotExists(dir string, perm os.FileMode) error
- func Execute()
- func Exists(filePath string) bool
- func GetArtifact(dirpath string, url string) (err error)
- func PadRight(str, pad string, lenght int) string
- func PrintConfig(v *viper.Viper)
- func WalkMatch(root, pattern string) ([]string, error)
- type CACerts
- type CloudInitGlobal
- type Customizations
- type Metadata
- type SealedSecret
Constants ¶
This section is empty.
Variables ¶
var UpgradeParamsToAdd = []paramTuple{}
UpgradeParamsToAdd Linux Kernel Parameters to-add for upgrades to 1.2. This is for multiple parameters that need to be added with the same key. e.g. ifname=mgmt0:01:02:03:04:05:06
ifnames Ifnames have changed on nodes that have two NICs.
1.0 --> 1.2 ----------------------------------- OCP port1 mgmt0 mgmt0 OCP port2 mgmt1 sun0 PCIe port1 mgmt2 mgmt1 PCIe port2 mgmt3 sun1
var UpgradeParamsToDelete = []string{
"bond",
"bootdev",
"hwprobe",
"ip",
"rd.peerdns",
"rd.net.dhcp.retry",
"vlan",
}
UpgradeParamsToDelete Linux Kernel Parameters to-remove for upgrades to 1.2.
bond
Remove any bond settings; a more simple bond config is passed-in with UpgradeParamsToSet.
bootdev
This is not necessary to have anymore, it has no effect.
hwprobe
Previously thought to ensure the bond comes up, this actually has no effect.
ip
We do need one of these to exist, so we set it in UpgradeParamsToSet. This ensures we purge all undesirables and start fresh.
rd.peerdns
Cease and desist any unofficial DNS from "peers" and use what the DHCP Authority has given us.
vlan
VLANs are now entirely driven by CSI and cloud-init, thus they no longer exist as hardcodes in kernel parameters. These must be removed to prevent conflicts with any dynamic VLAN changes. These also provide incorrect interface names, relative to CSM 1.2 the VLAN interface names have changed.
var UpgradeParamsToSet = []paramTuple{{ // contains filtered or unexported fields }, { // contains filtered or unexported fields }, { // contains filtered or unexported fields }}
UpgradeParamsToSet Linux Kernel Parameters to-set for upgrades to 1.2.
ip=mgmt0:dhcp
DHCP must be setup. The bond will be formed during cloud-init
rd.peerdns=0
Set to prevent inconsistent DNS resolution (e.g. always use the actual Domain Name Server and not each other).
rd.net.dhcp.retry=5
Set to ensure we wait out STP blocks, at least giving them more chances than 3 (from 1.0).
Functions ¶
func AllocateIps ¶
func AllocateIps(ncns []*csi.LogicalNCN, networks map[string]*csi.IPV4Network)
AllocateIps distributes IP reservations for each of the NCNs within the networks
func CopyArtifactsToPart ¶
CopyArtifactsToPart copies files needed to the PITDATA partition
func CreateIfNotExists ¶
CreateIfNotExists creates it if it doesn't
func Execute ¶
func Execute()
Execute adds all child commands to the root command and sets flags appropriately. This is called by main.main(). It only needs to happen once to the rootCmd.
func GetArtifact ¶
GetArtifact downloads kernels, initrd, and squashfs images
func PrintConfig ¶
PrintConfig : Dump all configuration information as a yaml file on stdout
Types ¶
type CACerts ¶
type CACerts struct { RemoveDefaults bool `json:"remove-defaults"` Trusted []string `json:"trusted"` }
CACerts - For storage of ca-certs cloud-init update
type CloudInitGlobal ¶
type CloudInitGlobal struct { Global struct { Metadata `json:"meta-data"` } }
CloudInitGlobal - Boilerplate for cloud-init hierarchical structure
type Customizations ¶
type Customizations struct { Spec struct { Kubernetes struct { SealedSecrets map[string]SealedSecret `yaml:"sealed_secrets"` } } // contains filtered or unexported fields }
Customizations - Minimum customizations (shasta-cfg) struct to access sealed secrets
Source Files ¶
- automation-ncn-etcd.go
- automation-ncn-kubernetes.go
- automation-ncn-preflight.go
- automation-ncn.go
- automation.go
- common.go
- config.go
- cow.go
- dump.go
- empty.go
- format.go
- gen-sls.go
- get.go
- handoff-bss-metadata.go
- handoff-bss-update_cloud-init.go
- handoff-bss-update_param.go
- handoff-ncn-images.go
- handoff-upload-utils.go
- handoff.go
- init.go
- install.go
- load.go
- loftsman.go
- makedocs.go
- manage_input_files.go
- patch-ca.go
- patch.go
- pit.go
- pitdata.go
- populate.go
- root.go
- shcd.go
- upgrade-metadata.go
- upgrade.go
- upload-sls.go
- validate.go
- verify.go
- version.go