Skip to content

Commit 43dd782

Browse files
settings: add connection_timeout
1 parent 6dbff9f commit 43dd782

File tree

2 files changed

+8
-0
lines changed

2 files changed

+8
-0
lines changed

Diff for: internal/cli/configuration/defaults.go

+1
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,7 @@ func SetDefaults(settings *Settings) {
7171
// network settings
7272
setKeyTypeSchema("network.proxy", "")
7373
setKeyTypeSchema("network.user_agent_ext", "")
74+
setKeyTypeSchema("network.connection_timeout", 0)
7475

7576
// locale
7677
setKeyTypeSchema("locale", "")

Diff for: internal/cli/configuration/network.go

+7
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ import (
2222
"net/url"
2323
"os"
2424
"runtime"
25+
"time"
2526

2627
"github.com/arduino/arduino-cli/commands/cmderrors"
2728
"github.com/arduino/arduino-cli/internal/i18n"
@@ -58,6 +59,11 @@ func (settings *Settings) ExtraUserAgent() string {
5859
return settings.GetString("network.user_agent_ext")
5960
}
6061

62+
func (settings *Settings) ConnectionTimeout() time.Duration {
63+
timeout := settings.GetInt("network.connection_timeout")
64+
return time.Duration(timeout) * time.Second
65+
}
66+
6167
// NetworkProxy returns the proxy configuration (mainly used by HTTP clients)
6268
func (settings *Settings) NetworkProxy() (*url.URL, error) {
6369
if proxyConfig, ok, _ := settings.GetStringOk("network.proxy"); !ok {
@@ -82,6 +88,7 @@ func (settings *Settings) NewHttpClient() (*http.Client, error) {
8288
},
8389
userAgent: settings.UserAgent(),
8490
},
91+
Timeout: settings.ConnectionTimeout(),
8592
}, nil
8693
}
8794

0 commit comments

Comments
 (0)