Skip to content

Commit a9480a4

Browse files
committed
update loginoptions field to RequestTimeout of type duration
1 parent ffa2c31 commit a9480a4

File tree

2 files changed

+15
-12
lines changed

2 files changed

+15
-12
lines changed

pkg/cmd/cli/cmd/login/login.go

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ import (
1111

1212
kapierrors "k8s.io/kubernetes/pkg/api/errors"
1313
"k8s.io/kubernetes/pkg/api/unversioned"
14+
kclientcmd "k8s.io/kubernetes/pkg/client/unversioned/clientcmd"
1415
kclientcmdapi "k8s.io/kubernetes/pkg/client/unversioned/clientcmd/api"
1516
kcmdutil "k8s.io/kubernetes/pkg/kubectl/cmd/util"
1617
"k8s.io/kubernetes/pkg/util/term"
@@ -105,7 +106,12 @@ func (o *LoginOptions) Complete(f *osclientcmd.Factory, cmd *cobra.Command, args
105106
o.StartingKubeConfig = kclientcmdapi.NewConfig()
106107
}
107108

108-
o.Timeout = kcmdutil.GetFlagString(cmd, "request-timeout")
109+
unparsedTimeout := kcmdutil.GetFlagString(cmd, "request-timeout")
110+
timeout, err := kclientcmd.ParseTimeout(unparsedTimeout)
111+
if err != nil {
112+
return err
113+
}
114+
o.RequestTimeout = timeout
109115

110116
o.CommandName = commandName
111117
if o.CommandName == "" {

pkg/cmd/cli/cmd/login/loginoptions.go

Lines changed: 8 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -9,14 +9,14 @@ import (
99
"net"
1010
"os"
1111
"path/filepath"
12+
"time"
1213

1314
kapi "k8s.io/kubernetes/pkg/api"
1415
kerrors "k8s.io/kubernetes/pkg/api/errors"
1516
"k8s.io/kubernetes/pkg/api/unversioned"
1617
"k8s.io/kubernetes/pkg/client/restclient"
1718
kclientcmd "k8s.io/kubernetes/pkg/client/unversioned/clientcmd"
1819
kclientcmdapi "k8s.io/kubernetes/pkg/client/unversioned/clientcmd/api"
19-
clientcmdutil "k8s.io/kubernetes/pkg/client/unversioned/clientcmd/util"
2020
"k8s.io/kubernetes/pkg/util/sets"
2121
kterm "k8s.io/kubernetes/pkg/util/term"
2222

@@ -66,8 +66,8 @@ type LoginOptions struct {
6666

6767
PathOptions *kclientcmd.PathOptions
6868

69-
CommandName string
70-
Timeout string
69+
CommandName string
70+
RequestTimeout time.Duration
7171
}
7272

7373
// Gather all required information in a comprehensive order.
@@ -101,6 +101,11 @@ func (o *LoginOptions) getClientConfig() (*restclient.Config, error) {
101101

102102
clientConfig := &restclient.Config{}
103103

104+
// ensure clientConfig has timeout option
105+
if o.RequestTimeout > 0 {
106+
clientConfig.Timeout = o.RequestTimeout
107+
}
108+
104109
// normalize the provided server to a format expected by config
105110
serverNormalized, err := config.NormalizeServerURL(o.Server)
106111
if err != nil {
@@ -170,14 +175,6 @@ func (o *LoginOptions) gatherAuthInfo() error {
170175
return err
171176
}
172177

173-
// ensure clientConfig has timeout option
174-
if len(o.Timeout) > 0 {
175-
err := clientcmdutil.SetTimeout(o.Timeout, directClientConfig)
176-
if err != nil {
177-
return err
178-
}
179-
}
180-
181178
// make a copy and use it to avoid mutating the original
182179
t := *directClientConfig
183180
clientConfig := &t

0 commit comments

Comments
 (0)