INNER CODE UNIT · Go

BuildUpgradeStepConfig

kubesphere/kubekey · builtin/core/upgrade_path.go:224

func BuildUpgradeStepConfig(vfs fs.FS, base map[string]interface{}, kubeVersion string, isFinal bool) (map[string]interface{}, error) {
	cfg := runtime.DeepCopyJSON(base)
	if err := unstructured.SetNestedField(cfg, kubeVersion, "kubernetes", "kube_version"); err != nil {
		return nil, fmt.Errorf("set step kube_version %q: %w", kubeVersion, err)
	}
	if isFinal {
		return cfg, nil
	}
	minor, err := MinorOfVersion(kubeVersion)
	if err != nil {
		return nil, fmt.Errorf("parse intermediate kube_version %q: %w", kubeVersion, err)
	}
	overlay, err := UpgradeVersionOverlay(vfs, minor)
	if err != nil {
		return nil, err
	}
	cfg = combineConfigMaps(cfg, overlay)
	return cfg, nil

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…