mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-28 22:17:14 +00:00
kubeadm: cleanup unnecessary k8sVer parameter for GetStaticPodSpecs
This commit is contained in:
parent
aaad86c210
commit
b23772df80
@ -98,12 +98,14 @@ func runDiff(flags *diffFlags, args []string) error {
|
|||||||
flags.newK8sVersionStr = args[0]
|
flags.newK8sVersionStr = args[0]
|
||||||
}
|
}
|
||||||
|
|
||||||
k8sVer, err := version.ParseSemantic(flags.newK8sVersionStr)
|
_, err = version.ParseSemantic(flags.newK8sVersionStr)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
specs := controlplane.GetStaticPodSpecs(&cfg.ClusterConfiguration, &cfg.LocalAPIEndpoint, k8sVer)
|
cfg.ClusterConfiguration.KubernetesVersion = flags.newK8sVersionStr
|
||||||
|
|
||||||
|
specs := controlplane.GetStaticPodSpecs(&cfg.ClusterConfiguration, &cfg.LocalAPIEndpoint)
|
||||||
for spec, pod := range specs {
|
for spec, pod := range specs {
|
||||||
var path string
|
var path string
|
||||||
switch spec {
|
switch spec {
|
||||||
|
@ -21,7 +21,6 @@ go_test(
|
|||||||
"//pkg/kubeapiserver/authorizer/modes:go_default_library",
|
"//pkg/kubeapiserver/authorizer/modes:go_default_library",
|
||||||
"//staging/src/k8s.io/api/core/v1:go_default_library",
|
"//staging/src/k8s.io/api/core/v1:go_default_library",
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/util/sets:go_default_library",
|
"//staging/src/k8s.io/apimachinery/pkg/util/sets:go_default_library",
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/util/version:go_default_library",
|
|
||||||
],
|
],
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -43,7 +42,6 @@ go_library(
|
|||||||
"//staging/src/k8s.io/api/core/v1:go_default_library",
|
"//staging/src/k8s.io/api/core/v1:go_default_library",
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/util/intstr:go_default_library",
|
"//staging/src/k8s.io/apimachinery/pkg/util/intstr:go_default_library",
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/util/sets:go_default_library",
|
"//staging/src/k8s.io/apimachinery/pkg/util/sets:go_default_library",
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/util/version:go_default_library",
|
|
||||||
"//vendor/github.com/pkg/errors:go_default_library",
|
"//vendor/github.com/pkg/errors:go_default_library",
|
||||||
"//vendor/k8s.io/klog:go_default_library",
|
"//vendor/k8s.io/klog:go_default_library",
|
||||||
"//vendor/k8s.io/utils/net:go_default_library",
|
"//vendor/k8s.io/utils/net:go_default_library",
|
||||||
|
@ -27,7 +27,6 @@ import (
|
|||||||
"github.com/pkg/errors"
|
"github.com/pkg/errors"
|
||||||
"k8s.io/api/core/v1"
|
"k8s.io/api/core/v1"
|
||||||
"k8s.io/apimachinery/pkg/util/intstr"
|
"k8s.io/apimachinery/pkg/util/intstr"
|
||||||
"k8s.io/apimachinery/pkg/util/version"
|
|
||||||
"k8s.io/klog"
|
"k8s.io/klog"
|
||||||
kubeadmapi "k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm"
|
kubeadmapi "k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm"
|
||||||
kubeadmconstants "k8s.io/kubernetes/cmd/kubeadm/app/constants"
|
kubeadmconstants "k8s.io/kubernetes/cmd/kubeadm/app/constants"
|
||||||
@ -47,7 +46,7 @@ func CreateInitStaticPodManifestFiles(manifestDir string, cfg *kubeadmapi.InitCo
|
|||||||
|
|
||||||
// GetStaticPodSpecs returns all staticPodSpecs actualized to the context of the current configuration
|
// GetStaticPodSpecs returns all staticPodSpecs actualized to the context of the current configuration
|
||||||
// NB. this methods holds the information about how kubeadm creates static pod manifests.
|
// NB. this methods holds the information about how kubeadm creates static pod manifests.
|
||||||
func GetStaticPodSpecs(cfg *kubeadmapi.ClusterConfiguration, endpoint *kubeadmapi.APIEndpoint, k8sVersion *version.Version) map[string]v1.Pod {
|
func GetStaticPodSpecs(cfg *kubeadmapi.ClusterConfiguration, endpoint *kubeadmapi.APIEndpoint) map[string]v1.Pod {
|
||||||
// Get the required hostpath mounts
|
// Get the required hostpath mounts
|
||||||
mounts := getHostPathVolumesForTheControlPlane(cfg)
|
mounts := getHostPathVolumesForTheControlPlane(cfg)
|
||||||
|
|
||||||
@ -67,7 +66,7 @@ func GetStaticPodSpecs(cfg *kubeadmapi.ClusterConfiguration, endpoint *kubeadmap
|
|||||||
Name: kubeadmconstants.KubeControllerManager,
|
Name: kubeadmconstants.KubeControllerManager,
|
||||||
Image: images.GetKubernetesImage(kubeadmconstants.KubeControllerManager, cfg),
|
Image: images.GetKubernetesImage(kubeadmconstants.KubeControllerManager, cfg),
|
||||||
ImagePullPolicy: v1.PullIfNotPresent,
|
ImagePullPolicy: v1.PullIfNotPresent,
|
||||||
Command: getControllerManagerCommand(cfg, k8sVersion),
|
Command: getControllerManagerCommand(cfg),
|
||||||
VolumeMounts: staticpodutil.VolumeMountMapToSlice(mounts.GetVolumeMounts(kubeadmconstants.KubeControllerManager)),
|
VolumeMounts: staticpodutil.VolumeMountMapToSlice(mounts.GetVolumeMounts(kubeadmconstants.KubeControllerManager)),
|
||||||
LivenessProbe: livenessProbe(staticpodutil.GetControllerManagerProbeAddress(cfg), kubeadmconstants.InsecureKubeControllerManagerPort, v1.URISchemeHTTP),
|
LivenessProbe: livenessProbe(staticpodutil.GetControllerManagerProbeAddress(cfg), kubeadmconstants.InsecureKubeControllerManagerPort, v1.URISchemeHTTP),
|
||||||
Resources: staticpodutil.ComponentResources("200m"),
|
Resources: staticpodutil.ComponentResources("200m"),
|
||||||
@ -105,15 +104,9 @@ func livenessProbe(host string, port int, scheme v1.URIScheme) *v1.Probe {
|
|||||||
|
|
||||||
// CreateStaticPodFiles creates all the requested static pod files.
|
// CreateStaticPodFiles creates all the requested static pod files.
|
||||||
func CreateStaticPodFiles(manifestDir string, cfg *kubeadmapi.ClusterConfiguration, endpoint *kubeadmapi.APIEndpoint, componentNames ...string) error {
|
func CreateStaticPodFiles(manifestDir string, cfg *kubeadmapi.ClusterConfiguration, endpoint *kubeadmapi.APIEndpoint, componentNames ...string) error {
|
||||||
// TODO: Move the "pkg/util/version".Version object into the internal API instead of always parsing the string
|
|
||||||
k8sVersion, err := version.ParseSemantic(cfg.KubernetesVersion)
|
|
||||||
if err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
// gets the StaticPodSpecs, actualized for the current ClusterConfiguration
|
// gets the StaticPodSpecs, actualized for the current ClusterConfiguration
|
||||||
klog.V(1).Infoln("[control-plane] getting StaticPodSpecs")
|
klog.V(1).Infoln("[control-plane] getting StaticPodSpecs")
|
||||||
specs := GetStaticPodSpecs(cfg, endpoint, k8sVersion)
|
specs := GetStaticPodSpecs(cfg, endpoint)
|
||||||
|
|
||||||
// creates required static pod specs
|
// creates required static pod specs
|
||||||
for _, componentName := range componentNames {
|
for _, componentName := range componentNames {
|
||||||
@ -262,7 +255,7 @@ func calcNodeCidrSize(podSubnet string) string {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// getControllerManagerCommand builds the right controller manager command from the given config object and version
|
// getControllerManagerCommand builds the right controller manager command from the given config object and version
|
||||||
func getControllerManagerCommand(cfg *kubeadmapi.ClusterConfiguration, k8sVersion *version.Version) []string {
|
func getControllerManagerCommand(cfg *kubeadmapi.ClusterConfiguration) []string {
|
||||||
|
|
||||||
kubeconfigFile := filepath.Join(kubeadmconstants.KubernetesDir, kubeadmconstants.ControllerManagerKubeConfigFileName)
|
kubeconfigFile := filepath.Join(kubeadmconstants.KubernetesDir, kubeadmconstants.ControllerManagerKubeConfigFileName)
|
||||||
caFile := filepath.Join(cfg.CertificatesDir, kubeadmconstants.CACertName)
|
caFile := filepath.Join(cfg.CertificatesDir, kubeadmconstants.CACertName)
|
||||||
|
@ -26,7 +26,6 @@ import (
|
|||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"k8s.io/apimachinery/pkg/util/sets"
|
"k8s.io/apimachinery/pkg/util/sets"
|
||||||
"k8s.io/apimachinery/pkg/util/version"
|
|
||||||
kubeadmapi "k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm"
|
kubeadmapi "k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm"
|
||||||
kubeadmconstants "k8s.io/kubernetes/cmd/kubeadm/app/constants"
|
kubeadmconstants "k8s.io/kubernetes/cmd/kubeadm/app/constants"
|
||||||
"k8s.io/kubernetes/cmd/kubeadm/app/phases/certs"
|
"k8s.io/kubernetes/cmd/kubeadm/app/phases/certs"
|
||||||
@ -49,11 +48,7 @@ func TestGetStaticPodSpecs(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Executes GetStaticPodSpecs
|
// Executes GetStaticPodSpecs
|
||||||
|
specs := GetStaticPodSpecs(cfg, &kubeadmapi.APIEndpoint{})
|
||||||
// TODO: Move the "pkg/util/version".Version object into the internal API instead of always parsing the string
|
|
||||||
k8sVersion, _ := version.ParseSemantic(cfg.KubernetesVersion)
|
|
||||||
|
|
||||||
specs := GetStaticPodSpecs(cfg, &kubeadmapi.APIEndpoint{}, k8sVersion)
|
|
||||||
|
|
||||||
var tests = []struct {
|
var tests = []struct {
|
||||||
name string
|
name string
|
||||||
@ -672,7 +667,7 @@ func TestGetControllerManagerCommand(t *testing.T) {
|
|||||||
|
|
||||||
for _, rt := range tests {
|
for _, rt := range tests {
|
||||||
t.Run(rt.name, func(t *testing.T) {
|
t.Run(rt.name, func(t *testing.T) {
|
||||||
actual := getControllerManagerCommand(rt.cfg, version.MustParseSemantic(rt.cfg.KubernetesVersion))
|
actual := getControllerManagerCommand(rt.cfg)
|
||||||
sort.Strings(actual)
|
sort.Strings(actual)
|
||||||
sort.Strings(rt.expected)
|
sort.Strings(rt.expected)
|
||||||
if !reflect.DeepEqual(actual, rt.expected) {
|
if !reflect.DeepEqual(actual, rt.expected) {
|
||||||
@ -848,7 +843,7 @@ func TestGetControllerManagerCommandExternalCA(t *testing.T) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
actual := getControllerManagerCommand(&test.cfg.ClusterConfiguration, version.MustParseSemantic(test.cfg.KubernetesVersion))
|
actual := getControllerManagerCommand(&test.cfg.ClusterConfiguration)
|
||||||
expected := test.expectedArgFunc(tmpdir)
|
expected := test.expectedArgFunc(tmpdir)
|
||||||
sort.Strings(actual)
|
sort.Strings(actual)
|
||||||
sort.Strings(expected)
|
sort.Strings(expected)
|
||||||
|
Loading…
Reference in New Issue
Block a user