Cyberghost support (#168)
* Host finder CLI for cyberghost * Resolver program updated with Cyberghost data * Gluetun cli clientkey subcommand
This commit is contained in:
29
internal/params/cyberghost.go
Normal file
29
internal/params/cyberghost.go
Normal file
@@ -0,0 +1,29 @@
|
||||
package params
|
||||
|
||||
import (
|
||||
"strings"
|
||||
|
||||
libparams "github.com/qdm12/golibs/params"
|
||||
"github.com/qdm12/private-internet-access-docker/internal/constants"
|
||||
"github.com/qdm12/private-internet-access-docker/internal/models"
|
||||
)
|
||||
|
||||
// GetCyberghostGroup obtains the server group for the Cyberghost server from the
|
||||
// environment variable CYBERGHOST_GROUP
|
||||
func (p *reader) GetCyberghostGroup() (region models.CyberghostGroup, err error) {
|
||||
s, err := p.envParams.GetValueIfInside("CYBERGHOST_GROUP", constants.CyberghostGroupChoices())
|
||||
return models.CyberghostGroup(strings.ToLower(s)), err
|
||||
}
|
||||
|
||||
// GetCyberghostRegion obtains the country name for the Cyberghost server from the
|
||||
// environment variable REGION
|
||||
func (p *reader) GetCyberghostRegion() (region models.CyberghostRegion, err error) {
|
||||
s, err := p.envParams.GetValueIfInside("REGION", constants.CyberghostRegionChoices())
|
||||
return models.CyberghostRegion(strings.ToLower(s)), err
|
||||
}
|
||||
|
||||
// GetCyberghostClientKey obtains the one line client key to use for openvpn from the
|
||||
// environment variable CLIENT_KEY
|
||||
func (p *reader) GetCyberghostClientKey() (clientKey string, err error) {
|
||||
return p.envParams.GetEnv("CLIENT_KEY", libparams.Compulsory(), libparams.CaseSensitiveValue())
|
||||
}
|
||||
@@ -69,6 +69,11 @@ type Reader interface {
|
||||
// Surfshark getters
|
||||
GetSurfsharkRegion() (country models.SurfsharkRegion, err error)
|
||||
|
||||
// Cyberghost getters
|
||||
GetCyberghostGroup() (region models.CyberghostGroup, err error)
|
||||
GetCyberghostRegion() (region models.CyberghostRegion, err error)
|
||||
GetCyberghostClientKey() (clientKey string, err error)
|
||||
|
||||
// Shadowsocks getters
|
||||
GetShadowSocks() (activated bool, err error)
|
||||
GetShadowSocksLog() (activated bool, err error)
|
||||
@@ -109,7 +114,7 @@ func NewReader(logger logging.Logger) Reader {
|
||||
|
||||
// GetVPNSP obtains the VPN service provider to use from the environment variable VPNSP
|
||||
func (r *reader) GetVPNSP() (vpnServiceProvider models.VPNProvider, err error) {
|
||||
s, err := r.envParams.GetValueIfInside("VPNSP", []string{"pia", "private internet access", "mullvad", "windscribe", "surfshark"})
|
||||
s, err := r.envParams.GetValueIfInside("VPNSP", []string{"pia", "private internet access", "mullvad", "windscribe", "surfshark", "cyberghost"})
|
||||
if s == "pia" {
|
||||
s = "private internet access"
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user