5
5
"io"
6
6
7
7
"github.com/spf13/cobra"
8
+ "k8s.io/klog/v2"
8
9
9
10
"github.com/karmada-io/karmada/pkg/karmadactl/cmdinit/kubernetes"
10
11
"github.com/karmada-io/karmada/pkg/version"
@@ -38,6 +39,13 @@ func NewCmdInit(cmdOut io.Writer, parentCommand string) *cobra.Command {
38
39
},
39
40
}
40
41
flags := cmd .PersistentFlags ()
42
+
43
+ releaseVer , err := version .ParseGitVersion (version .Get ().GitVersion )
44
+ if err != nil {
45
+ klog .Infof ("No default release version found. build version: %s" , version .Get ().String ())
46
+ releaseVer = & version.ReleaseVersion {} // initialize to avoid panic
47
+ }
48
+
41
49
// cert
42
50
flags .StringVar (& opts .ExternalIP , "cert-external-ip" , "" , "the external IP of Karmada certificate (e.g 192.168.1.2,172.16.1.2)" )
43
51
flags .StringVar (& opts .ExternalDNS , "cert-external-dns" , "" , "the external DNS of Karmada certificate (e.g localhost,localhost.com)" )
@@ -55,21 +63,21 @@ func NewCmdInit(cmdOut io.Writer, parentCommand string) *cobra.Command {
55
63
flags .StringVarP (& opts .EtcdNodeSelectorLabels , "etcd-node-selector-labels" , "" , "" , "etcd pod select the labels of the node. valid in hostPath mode ( e.g. --etcd-node-selector-labels karmada.io/etcd=true)" )
56
64
flags .StringVarP (& opts .EtcdPersistentVolumeSize , "etcd-pvc-size" , "" , "5Gi" , "etcd data path,valid in pvc mode." )
57
65
// karmada
58
- crdURL := fmt .Sprintf ("https://github.com/karmada-io/karmada/releases/download/%s/crds.tar.gz" , version . Get (). GitVersion )
66
+ crdURL := fmt .Sprintf ("https://github.com/karmada-io/karmada/releases/download/%s/crds.tar.gz" , releaseVer . FirstMinorRelease () )
59
67
flags .StringVar (& opts .CRDs , "crds" , crdURL , "Karmada crds resource.(local file e.g. --crds /root/crds.tar.gz)" )
60
68
flags .Int32VarP (& opts .KarmadaAPIServerNodePort , "port" , "p" , 32443 , "Karmada apiserver service node port" )
61
69
flags .StringVarP (& opts .KarmadaDataPath , "karmada-data" , "d" , "/etc/karmada" , "karmada data path. kubeconfig cert and crds files" )
62
70
flags .StringVarP (& opts .KarmadaAPIServerImage , "karmada-apiserver-image" , "" , "k8s.gcr.io/kube-apiserver:v1.21.7" , "Kubernetes apiserver image" )
63
71
flags .Int32VarP (& opts .KarmadaAPIServerReplicas , "karmada-apiserver-replicas" , "" , 1 , "karmada apiserver replica set" )
64
- flags .StringVarP (& opts .KarmadaSchedulerImage , "karmada-scheduler-image" , "" , "swr.ap-southeast-1.myhuaweicloud.com/karmada/karmada-scheduler:latest" , "karmada scheduler image" )
72
+ flags .StringVarP (& opts .KarmadaSchedulerImage , "karmada-scheduler-image" , "" , fmt . Sprintf ( "swr.ap-southeast-1.myhuaweicloud.com/karmada/karmada-scheduler:%s" , releaseVer . PatchRelease ()) , "karmada scheduler image" )
65
73
flags .Int32VarP (& opts .KarmadaSchedulerReplicas , "karmada-scheduler-replicas" , "" , 1 , "karmada scheduler replica set" )
66
74
flags .StringVarP (& opts .KubeControllerManagerImage , "karmada-kube-controller-manager-image" , "" , "k8s.gcr.io/kube-controller-manager:v1.21.7" , "Kubernetes controller manager image" )
67
75
flags .Int32VarP (& opts .KubeControllerManagerReplicas , "karmada-kube-controller-manager-replicas" , "" , 1 , "karmada kube controller manager replica set" )
68
- flags .StringVarP (& opts .KarmadaControllerManagerImage , "karmada-controller-manager-image" , "" , "swr.ap-southeast-1.myhuaweicloud.com/karmada/karmada-controller-manager:latest" , "karmada controller manager image" )
76
+ flags .StringVarP (& opts .KarmadaControllerManagerImage , "karmada-controller-manager-image" , "" , fmt . Sprintf ( "swr.ap-southeast-1.myhuaweicloud.com/karmada/karmada-controller-manager:%s" , releaseVer . PatchRelease ()) , "karmada controller manager image" )
69
77
flags .Int32VarP (& opts .KarmadaControllerManagerReplicas , "karmada-controller-manager-replicas" , "" , 1 , "karmada controller manager replica set" )
70
- flags .StringVarP (& opts .KarmadaWebhookImage , "karmada-webhook-image" , "" , "swr.ap-southeast-1.myhuaweicloud.com/karmada/karmada-webhook:latest" , "karmada webhook image" )
78
+ flags .StringVarP (& opts .KarmadaWebhookImage , "karmada-webhook-image" , "" , fmt . Sprintf ( "swr.ap-southeast-1.myhuaweicloud.com/karmada/karmada-webhook:%s" , releaseVer . PatchRelease ()) , "karmada webhook image" )
71
79
flags .Int32VarP (& opts .KarmadaWebhookReplicas , "karmada-webhook-replicas" , "" , 1 , "karmada webhook replica set" )
72
- flags .StringVarP (& opts .KarmadaAggregatedAPIServerImage , "karmada-aggregated-apiserver-image" , "" , "swr.ap-southeast-1.myhuaweicloud.com/karmada/karmada-aggregated-apiserver:latest" , "karmada aggregated apiserver image" )
80
+ flags .StringVarP (& opts .KarmadaAggregatedAPIServerImage , "karmada-aggregated-apiserver-image" , "" , fmt . Sprintf ( "swr.ap-southeast-1.myhuaweicloud.com/karmada/karmada-aggregated-apiserver:%s" , releaseVer . PatchRelease ()) , "karmada aggregated apiserver image" )
73
81
flags .Int32VarP (& opts .KarmadaAggregatedAPIServerReplicas , "karmada-aggregated-apiserver-replicas" , "" , 1 , "karmada aggregated apiserver replica set" )
74
82
75
83
return cmd
0 commit comments