mirror of
https://github.com/qdm12/gluetun.git
synced 2026-05-06 20:10:11 +02:00
chore(ci): test private internet access for OpenVPN and port forwarding
This commit is contained in:
@@ -27,6 +27,8 @@ func main() {
|
||||
err = internal.ProtonVPNWireguardPortForwardingTest(ctx, logger)
|
||||
case "protonvpn-openvpn-port-forwarding":
|
||||
err = internal.ProtonVPNOpenVPNPortForwardingTest(ctx, logger)
|
||||
case "private-internet-access-openvpn-port-forwarding":
|
||||
err = internal.PrivateInternetAccessOpenVPNPortForwardingTest(ctx, logger)
|
||||
default:
|
||||
err = fmt.Errorf("unknown command: %s", os.Args[1])
|
||||
}
|
||||
|
||||
@@ -0,0 +1,31 @@
|
||||
package internal
|
||||
|
||||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
"regexp"
|
||||
"time"
|
||||
)
|
||||
|
||||
func PrivateInternetAccessOpenVPNPortForwardingTest(ctx context.Context, logger Logger) error {
|
||||
expectedSecrets := []string{
|
||||
"OpenVPN username",
|
||||
"OpenVPN password",
|
||||
}
|
||||
secrets, err := readSecrets(ctx, expectedSecrets, logger)
|
||||
if err != nil {
|
||||
return fmt.Errorf("reading secrets: %w", err)
|
||||
}
|
||||
|
||||
env := []string{
|
||||
"VPN_SERVICE_PROVIDER=private internet access",
|
||||
"VPN_TYPE=openvpn",
|
||||
"LOG_LEVEL=debug",
|
||||
"SERVER_REGIONS=CA Montreal",
|
||||
"OPENVPN_USER=" + secrets[0],
|
||||
"OPENVPN_PASSWORD=" + secrets[1],
|
||||
"VPN_PORT_FORWARDING=on",
|
||||
}
|
||||
const timeout = 80 * time.Second
|
||||
return runContainerTest(ctx, env, []*regexp.Regexp{successRegexp, portForwardingRegexp}, timeout, logger)
|
||||
}
|
||||
Reference in New Issue
Block a user