chore(env): WIREGUARD_ADDRESSES variable

- With retro-compatibility with `WIREGUARD_ADDRESS`
This commit is contained in:
Quentin McGaw
2022-02-05 22:31:46 +00:00
parent 114f9be47f
commit f8d5f76bdf
3 changed files with 6 additions and 7 deletions

View File

@@ -90,7 +90,7 @@ ENV VPNSP=pia \
WIREGUARD_PRIVATE_KEY= \ WIREGUARD_PRIVATE_KEY= \
WIREGUARD_PRESHARED_KEY= \ WIREGUARD_PRESHARED_KEY= \
WIREGUARD_PUBLIC_KEY= \ WIREGUARD_PUBLIC_KEY= \
WIREGUARD_ADDRESS= \ WIREGUARD_ADDRESSES= \
# VPN server filtering # VPN server filtering
REGION= \ REGION= \
COUNTRY= \ COUNTRY= \

View File

@@ -117,7 +117,7 @@ services:
- OPENVPN_PASSWORD= - OPENVPN_PASSWORD=
# Wireguard: # Wireguard:
# - WIREGUARD_PRIVATE_KEY=wOEI9rqqbDwnN8/Bpp22sVz48T71vJ4fYmFWujulwUU= # - WIREGUARD_PRIVATE_KEY=wOEI9rqqbDwnN8/Bpp22sVz48T71vJ4fYmFWujulwUU=
# - WIREGUARD_ADDRESS=10.64.222.21/32 # - WIREGUARD_ADDRESSES=10.64.222.21/32
# Timezone for accurate log times # Timezone for accurate log times
- TZ= - TZ=
``` ```

View File

@@ -3,7 +3,6 @@ package env
import ( import (
"fmt" "fmt"
"net" "net"
"os"
"strings" "strings"
"github.com/qdm12/gluetun/internal/configuration/settings" "github.com/qdm12/gluetun/internal/configuration/settings"
@@ -16,15 +15,15 @@ func (r *Reader) readWireguard() (wireguard settings.Wireguard, err error) {
wireguard.PrivateKey = envToStringPtr("WIREGUARD_PRIVATE_KEY") wireguard.PrivateKey = envToStringPtr("WIREGUARD_PRIVATE_KEY")
wireguard.PreSharedKey = envToStringPtr("WIREGUARD_PRESHARED_KEY") wireguard.PreSharedKey = envToStringPtr("WIREGUARD_PRESHARED_KEY")
_, wireguard.Interface = r.getEnvWithRetro("VPN_INTERFACE", "WIREGUARD_INTERFACE") _, wireguard.Interface = r.getEnvWithRetro("VPN_INTERFACE", "WIREGUARD_INTERFACE")
wireguard.Addresses, err = readWireguardAddresses() wireguard.Addresses, err = r.readWireguardAddresses()
if err != nil { if err != nil {
return wireguard, err // already wrapped return wireguard, err // already wrapped
} }
return wireguard, nil return wireguard, nil
} }
func readWireguardAddresses() (addresses []net.IPNet, err error) { func (r *Reader) readWireguardAddresses() (addresses []net.IPNet, err error) {
addressesCSV := os.Getenv("WIREGUARD_ADDRESS") key, addressesCSV := r.getEnvWithRetro("WIREGUARD_ADDRESSES", "WIREGUARD_ADDRESS")
if addressesCSV == "" { if addressesCSV == "" {
return nil, nil return nil, nil
} }
@@ -34,7 +33,7 @@ func readWireguardAddresses() (addresses []net.IPNet, err error) {
for i, addressString := range addressStrings { for i, addressString := range addressStrings {
ip, ipNet, err := net.ParseCIDR(addressString) ip, ipNet, err := net.ParseCIDR(addressString)
if err != nil { if err != nil {
return nil, fmt.Errorf("environment variable WIREGUARD_ADDRESS: %w", err) return nil, fmt.Errorf("environment variable %s: %w", key, err)
} }
ipNet.IP = ip ipNet.IP = ip
addresses[i] = *ipNet addresses[i] = *ipNet