diff --git a/pkg/karmadactl/cmdinit/cmdinit.go b/pkg/karmadactl/cmdinit/cmdinit.go index b14bf7514..8ae1d7185 100644 --- a/pkg/karmadactl/cmdinit/cmdinit.go +++ b/pkg/karmadactl/cmdinit/cmdinit.go @@ -8,6 +8,7 @@ import ( "k8s.io/klog/v2" "k8s.io/kubectl/pkg/util/templates" + "github.com/karmada-io/karmada/pkg/karmadactl/cmdinit/cert" "github.com/karmada-io/karmada/pkg/karmadactl/cmdinit/kubernetes" "github.com/karmada-io/karmada/pkg/karmadactl/util" "github.com/karmada-io/karmada/pkg/version" @@ -102,6 +103,7 @@ func NewCmdInit(parentCommand string) *cobra.Command { // cert flags.StringVar(&opts.ExternalIP, "cert-external-ip", "", "the external IP of Karmada certificate (e.g 192.168.1.2,172.16.1.2)") flags.StringVar(&opts.ExternalDNS, "cert-external-dns", "", "the external DNS of Karmada certificate (e.g localhost,localhost.com)") + flags.DurationVar(&opts.CertValidity, "cert-validity-period", cert.Duration365d, "the validity period of Karmada certificate (e.g 8760h0m0s, that is 365 days)") // Kubernetes flags.StringVarP(&opts.Namespace, "namespace", "n", "karmada-system", "Kubernetes namespace") flags.StringVar(&opts.StorageClassesName, "storage-classes-name", "", "Kubernetes StorageClasses Name") diff --git a/pkg/karmadactl/cmdinit/kubernetes/deploy.go b/pkg/karmadactl/cmdinit/kubernetes/deploy.go index 86b6e9961..bae675ca3 100644 --- a/pkg/karmadactl/cmdinit/kubernetes/deploy.go +++ b/pkg/karmadactl/cmdinit/kubernetes/deploy.go @@ -121,6 +121,7 @@ type CommandInitOption struct { CRDs string ExternalIP string ExternalDNS string + CertValidity time.Duration KubeClientSet kubernetes.Interface CertAndKeyFileData map[string][]byte RestConfig *rest.Config @@ -218,7 +219,7 @@ func initializeDirectory(path string) error { // genCerts create ca etcd karmada cert func (i *CommandInitOption) genCerts() error { - notAfter := time.Now().Add(cert.Duration365d).UTC() + notAfter := time.Now().Add(i.CertValidity).UTC() etcdServerCertDNS := []string{ "localhost",