mirror of
https://github.com/qdm12/gluetun.git
synced 2026-07-24 19:36:24 +02:00
gluetun updater only downloads files from gluetun-servers
This commit is contained in:
+13
-38
@@ -10,15 +10,8 @@ import (
|
||||
"strings"
|
||||
"time"
|
||||
|
||||
"github.com/qdm12/dns/v2/pkg/doh"
|
||||
dnsprovider "github.com/qdm12/dns/v2/pkg/provider"
|
||||
"github.com/qdm12/gluetun-servers/pkg/publicip/api"
|
||||
"github.com/qdm12/gluetun-servers/pkg/updaters/resolver"
|
||||
"github.com/qdm12/gluetun-servers/pkg/updaters/unzip"
|
||||
"github.com/qdm12/gluetun/internal/configuration/settings"
|
||||
"github.com/qdm12/gluetun/internal/constants/providers"
|
||||
"github.com/qdm12/gluetun/internal/openvpn/extract"
|
||||
"github.com/qdm12/gluetun/internal/provider"
|
||||
"github.com/qdm12/gluetun/internal/updater"
|
||||
)
|
||||
|
||||
@@ -52,8 +45,19 @@ func (c *CLI) Update(ctx context.Context, args []string, logger UpdaterLogger) e
|
||||
return err
|
||||
}
|
||||
|
||||
if dnsServer != "" {
|
||||
switch {
|
||||
case dnsServer != "":
|
||||
logger.Warn("The -dns flag is no longer used, your DNS will use DoH with Cloudflare and Google")
|
||||
case endUserMode:
|
||||
logger.Warn("The -enduser flag is no longer used and has no effect")
|
||||
case ipToken != "":
|
||||
logger.Warn("The -ip-token flag is no longer used and has no effect")
|
||||
case protonUsername != "":
|
||||
logger.Warn("The -proton-username flag is no longer used and has no effect. Use -proton-email instead.")
|
||||
case protonEmail != "":
|
||||
logger.Warn("The -proton-email flag is no longer used and has no effect")
|
||||
case protonPassword != "":
|
||||
logger.Warn("The -proton-password flag is no longer used and has no effect")
|
||||
}
|
||||
|
||||
if updateAll {
|
||||
@@ -87,38 +91,9 @@ func (c *CLI) Update(ctx context.Context, args []string, logger UpdaterLogger) e
|
||||
return fmt.Errorf("creating servers storage: %w", err)
|
||||
}
|
||||
|
||||
dohSettings := doh.Settings{
|
||||
UpstreamResolvers: []dnsprovider.Provider{
|
||||
dnsprovider.Cloudflare(),
|
||||
dnsprovider.Google(),
|
||||
},
|
||||
}
|
||||
dnsDialer, err := doh.New(dohSettings)
|
||||
if err != nil {
|
||||
return fmt.Errorf("creating DoH dialer: %w", err)
|
||||
}
|
||||
|
||||
const clientTimeout = 10 * time.Second
|
||||
httpClient := &http.Client{Timeout: clientTimeout}
|
||||
unzipper := unzip.New(httpClient)
|
||||
parallelResolver := resolver.NewParallelResolver(dnsDialer)
|
||||
nameTokenPairs := []api.NameToken{
|
||||
{Name: string(api.IPInfo), Token: ipToken},
|
||||
{Name: string(api.IP2Location)},
|
||||
{Name: string(api.IfConfigCo)},
|
||||
}
|
||||
fetchers, err := api.New(nameTokenPairs, httpClient)
|
||||
if err != nil {
|
||||
return fmt.Errorf("creating public IP fetchers: %w", err)
|
||||
}
|
||||
ipFetcher := api.NewResilient(fetchers, logger)
|
||||
|
||||
openvpnFileExtractor := extract.New()
|
||||
|
||||
providers := provider.NewProviders(storage, time.Now, logger, httpClient,
|
||||
unzipper, parallelResolver, ipFetcher, openvpnFileExtractor, options)
|
||||
|
||||
updater := updater.New(httpClient, storage, providers, logger)
|
||||
updater := updater.New(httpClient, storage, logger)
|
||||
err = updater.UpdateServers(ctx, options.Providers, options.MinRatio)
|
||||
if err != nil {
|
||||
return fmt.Errorf("updating server information: %w", err)
|
||||
|
||||
Reference in New Issue
Block a user