Files
gluetun/internal/configuration/purevpn.go

40 lines
1.1 KiB
Go
Raw Normal View History

2021-02-06 11:05:50 -05:00
package configuration
import (
"fmt"
2021-02-06 11:05:50 -05:00
"github.com/qdm12/gluetun/internal/constants"
)
func (settings *Provider) readPurevpn(r reader) (err error) {
settings.Name = constants.Purevpn
servers := r.servers.GetPurevpn()
2021-02-06 11:05:50 -05:00
settings.ServerSelection.TargetIP, err = readTargetIP(r.env)
if err != nil {
return err
}
settings.ServerSelection.Regions, err = r.env.CSVInside("REGION", constants.PurevpnRegionChoices(servers))
2021-02-06 11:05:50 -05:00
if err != nil {
return fmt.Errorf("environment variable REGION: %w", err)
2021-02-06 11:05:50 -05:00
}
settings.ServerSelection.Countries, err = r.env.CSVInside("COUNTRY", constants.PurevpnCountryChoices(servers))
2021-02-06 11:05:50 -05:00
if err != nil {
return fmt.Errorf("environment variable COUNTRY: %w", err)
2021-02-06 11:05:50 -05:00
}
settings.ServerSelection.Cities, err = r.env.CSVInside("CITY", constants.PurevpnCityChoices(servers))
2021-02-06 11:05:50 -05:00
if err != nil {
return fmt.Errorf("environment variable CITY: %w", err)
2021-02-06 11:05:50 -05:00
}
settings.ServerSelection.Hostnames, err = r.env.CSVInside("SERVER_HOSTNAME", constants.PurevpnHostnameChoices(servers))
if err != nil {
return fmt.Errorf("environment variable SERVER_HOSTNAME: %w", err)
}
return settings.ServerSelection.OpenVPN.readProtocolOnly(r.env)
2021-02-06 11:05:50 -05:00
}