1
0
Fork 0
mirror of https://github.com/pivpn/pivpn.git synced 2024-12-22 12:50:16 +00:00
pivpn/ciscripts/startup.sh
Carlos Colaço 4b63a854cb Adding Missing CI Scripts
Added CI Scripts to use with Travis ci/cd
2021-01-26 16:39:30 +01:00

47 lines
1.1 KiB
Bash

#!/bin/sh
interface=$(ip -o link | awk '{print $2}' | cut -d':' -f1 | cut -d'@' -f1 | grep -v -w 'lo' | head -1)
ipaddress=$(ip addr show "$interface" | grep -o -E "([0-9]{1,3}[\.]){3}[0-9]{1,3}/[0-9]{2}")
gateway=$(ip route show | awk '/default/ {print $3}')
hostname="pivpn.test"
common(){
sed -i "s/INTERFACE/$interface/g" "$vpnconfig"
sed -i "s|IPADDRESS|$ipaddress|g" "$vpnconfig"
sed -i "s/GATEWAY/$gateway/g" "$vpnconfig"
}
openvpn(){
vpnconfig="ciscripts/ci_openvpn.conf"
twofour=1
common
sed -i "s/2POINT4/$twofour/g" "$vpnconfig"
cat $vpnconfig
exit 0
}
wireguard(){
vpnconfig="ciscripts/ci_wireguard.conf"
common
cat $vpnconfig
exit 0
}
if [ $# -lt 1 ]; then
echo "specifiy a VPN protocol to prepare"
exit 1
else
chmod +x auto_install/install.sh
sudo hostnamectl set-hostname $hostname
cat /etc/os-release
while true; do
case "$1" in
-o | --openvpn ) openvpn
;;
-w | --wireguard ) wireguard
;;
* ) echo "unknown vpn protocol"; exit 1
;;
esac
done
fi