Files
gluetun/internal/updater/providers/cyberghost/servers.go
Quentin McGaw e8e7b83297 Maintenance: refactor servers updater code
- Require at least 80% of number of servers now to pass
- Each provider is in its own package with a common structure
- Unzip package with unzipper interface
- Openvpn package with extraction and download functions
2021-05-08 00:59:42 +00:00

29 lines
703 B
Go

// Package cyberghost contains code to obtain the server information
// for the Cyberghost provider.
package cyberghost
import (
"context"
"github.com/qdm12/gluetun/internal/models"
"github.com/qdm12/gluetun/internal/updater/resolver"
)
func GetServers(ctx context.Context, presolver resolver.Parallel,
minServers int) (servers []models.CyberghostServer, err error) {
possibleServers := getPossibleServers()
possibleHosts := possibleServers.hostsSlice()
hostToIPs, err := resolveHosts(ctx, presolver, possibleHosts, minServers)
if err != nil {
return nil, err
}
possibleServers.adaptWithIPs(hostToIPs)
servers = possibleServers.toSlice()
sortServers(servers)
return servers, nil
}