mirror of
https://github.com/qdm12/gluetun.git
synced 2026-05-09 20:29:23 +02:00
4a78989d9d
- main reason being it's a burden to always define sentinel errors at global scope, wrap them with `%w` instead of using a string directly - only use sentinel errors when it has to be checked using `errors.Is` - replace all usage of these sentinel errors in `fmt.Errorf` with direct strings that were in the sentinel error - exclude the sentinel error definition requirement from .golangci.yml - update unit tests to use ContainersError instead of ErrorIs so it stays as a "not a change detector test" without requiring a sentinel error
29 lines
722 B
Go
29 lines
722 B
Go
package updater
|
|
|
|
import (
|
|
"fmt"
|
|
|
|
"github.com/qdm12/gluetun/internal/provider/surfshark/servers"
|
|
)
|
|
|
|
func getHostInformation(host string, hostnameToLocation map[string]servers.ServerLocation) (
|
|
data servers.ServerLocation, err error,
|
|
) {
|
|
locationData, ok := hostnameToLocation[host]
|
|
if !ok {
|
|
return locationData, fmt.Errorf("hostname %s not found in hostname to location mapping", host)
|
|
}
|
|
|
|
return locationData, nil
|
|
}
|
|
|
|
func hostToLocation(locationData []servers.ServerLocation) (
|
|
hostToLocation map[string]servers.ServerLocation,
|
|
) {
|
|
hostToLocation = make(map[string]servers.ServerLocation, len(locationData))
|
|
for _, data := range locationData {
|
|
hostToLocation[data.Hostname] = data
|
|
}
|
|
return hostToLocation
|
|
}
|