Browse Source

run openvpn tests within Azure Pipelines

Ilya Shipitsin 7 years ago
parent
commit
eb64940d36
3 changed files with 46 additions and 0 deletions
  1. 30 0
      .ci/run-openvpn-tests.sh
  2. 13 0
      .ci/start-se-openvpn.sh
  3. 3 0
      azure-pipelines.yml

+ 30 - 0
.ci/run-openvpn-tests.sh

@@ -0,0 +1,30 @@
+#!/bin/bash
+
+set -eux
+
+cd
+git clone https://github.com/openvpn/openvpn
+cd openvpn
+autoreconf -iv
+./configure  > build.log 2>&1 || (cat build.log && exit 1)
+make > build.log 2>&1 || (cat build.log && exit 1)
+
+echo test > /tmp/auth.txt
+echo test >> /tmp/auth.txt
+
+CONFIG=`ls /tmp/*l3*ovpn`
+
+cat << EOF > tests/t_client.rc
+CA_CERT=fake
+TEST_RUN_LIST="1 2"
+
+OPENVPN_BASE="--remote 127.0.0.1 --config $CONFIG --auth-user-pass /tmp/auth.txt"
+
+RUN_TITLE_1="testing udp/ipv4"
+OPENVPN_CONF_1="--dev null --proto udp --port 1194 \$OPENVPN_BASE"
+
+RUN_TITLE_2="testing tcp/ipv4"
+OPENVPN_CONF_2="--dev null --proto tcp --port 1194 \$OPENVPN_BASE"
+EOF
+
+sudo make test_scripts=t_client.sh check

+ 13 - 0
.ci/start-se-openvpn.sh

@@ -0,0 +1,13 @@
+#!/bin/sh
+
+set -eux
+
+build/vpnserver start
+
+build/vpncmd 127.0.0.1:443 /SERVER /HUB:DEFAULT /CMD:SecureNatEnable
+build/vpncmd 127.0.0.1:443 /SERVER /CMD:"OpenVpnEnable yes /PORTS:1194"
+build/vpncmd 127.0.0.1:443 /SERVER /HUB:DEFAULT /CMD:"UserCreate test /GROUP:none /REALNAME:none /NOTE:none"
+build/vpncmd 127.0.0.1:443 /SERVER /HUB:DEFAULT /CMD:"UserPasswordSet test /PASSWORD:test"
+build/vpncmd 127.0.0.1:443 /SERVER /CMD:"OpenVpnMakeConfig ~/my_openvpn_config.zip"
+
+unzip -d /tmp ~/my_openvpn_config.zip

+ 3 - 0
azure-pipelines.yml

@@ -13,4 +13,7 @@ steps:
     ./configure
     make package -C tmp -j $(nproc || sysctl -n hw.ncpu || echo 4)
     .ci/appveyor-deb-install-test.sh
+    sudo apt-get -y install autoconf libtool liblzo2-dev libpam-dev fping unzip # openvpn build deps
+    sudo .ci/start-se-openvpn.sh
+    .ci/run-openvpn-tests.sh
   displayName: 'Ubuntu 16.04'