language: shell addons: hosts: - pivpn.test services: - docker stages: - lint - style - test branches: only: - test - master jobs: include: - stage: lint name: "Shellcheck lint" dist: focal addons: apt: packages: - shellcheck virt: vm arch: amd64 script: - shellcheck -x auto_install/install.sh - find scripts/ -type f | xargs shellcheck -x - stage: style name: "Shell Style Guide" dist: xenial addons: snaps: - shfmt virt: vm arch: amd64 script: - shfmt -d -i 2 -ci -sr auto_install/install.sh - find scripts/ -type f | xargs shfmt -d -i 2 -ci -sr - stage: test name: "OpenVPN Xenial & Commands" dist: xenial virt: vm arch: amd64 before_script: - cat /etc/os-release - uname -a - ip a - sudo chmod +x ciscripts/startup.sh - ./ciscripts/startup.sh -o script: - sudo ./auto_install/install.sh --unattended ciscripts/ci_openvpn.conf after_script: - systemctl status openvpn - pivpn add -n foo nopass -d 180 - pivpn add -p "$RANDOM$RANDOM" -n bar -d 180 - pivpn add -o -n foo - pivpn -bk - ls ~pi/pivpnbackup/ | grep backup - pivpn -l - pivpn -c - pivpn -r foo -y after_fail: - sudo journalctl -xe - stage: test name: "Wireguard Xenial & Commands" dist: xenial virt: vm arch: amd64 before_script: - cat /etc/os-release - uname -a - ip a - sudo chmod +x ciscripts/startup.sh - ./ciscripts/startup.sh -w script: - sudo ./auto_install/install.sh --unattended ciscripts/ci_wireguard.conf after_script: - systemctl status wg-quick@wg0 - pivpn add -n foo - pivpn -qr foo - pivpn -bk - ls ~pi/pivpnbackup/ | grep backup - pivpn -l - pivpn -c - pivpn -r foo -y after_fail: - sudo journalctl -xe - stage: test name: "OpenVPN Bionic & Commands" dist: bionic virt: vm arch: amd64 before_script: - cat /etc/os-release - uname -a - ip a - sudo chmod +x ciscripts/startup.sh - ./ciscripts/startup.sh -o script: - sudo ./auto_install/install.sh --unattended ciscripts/ci_openvpn.conf - systemctl status openvpn - pivpn add -n foo nopass -d 180 - pivpn add -p "$RANDOM$RANDOM" -n bar -d 180 - pivpn add -o -n foo - pivpn -bk - ls ~pi/pivpnbackup/ | grep backup - pivpn -l - pivpn -c - pivpn -r foo -y after_fail: - sudo journalctl -xe - stage: test name: "Wireguard Bionic & Commands" dist: bionic virt: vm arch: amd64 before_script: - cat /etc/os-release - uname -a - ip a - sudo apt update -y - sudo chmod +x ciscripts/startup.sh - ./ciscripts/startup.sh -w script: - sudo ./auto_install/install.sh --unattended ciscripts/ci_wireguard.conf - systemctl status wg-quick@wg0 - pivpn add -n foo - pivpn -qr foo - pivpn -bk - ls ~pi/pivpnbackup/ | grep backup - pivpn -l - pivpn -c - pivpn -r foo -y after_fail: - sudo journalctl -xe - stage: test name: "OpenVPN Focal & Commands" dist: focal virt: vm arch: amd64 before_script: - cat /etc/os-release - uname -a - ip a - sudo chmod +x ciscripts/startup.sh - ./ciscripts/startup.sh -o script: - sudo ./auto_install/install.sh --unattended ciscripts/ci_openvpn.conf - systemctl status openvpn - pivpn add -n foo nopass -d 180 - pivpn add -p "$RANDOM$RANDOM" -n bar -d 180 - pivpn add -o -n foo - pivpn -bk - ls ~pi/pivpnbackup/ | grep backup - pivpn -l - pivpn -c - pivpn -r foo -y after_fail: - sudo journalctl -xe - stage: test name: "Wireguard Focal & Commands" dist: focal virt: vm arch: amd64 before_script: - cat /etc/os-release - uname -a - ip a - sudo chmod +x ciscripts/startup.sh - ./ciscripts/startup.sh -w script: - sudo ./auto_install/install.sh --unattended ciscripts/ci_wireguard.conf - systemctl status wg-quick@wg0 - pivpn add -n foo - pivpn -qr foo - pivpn -bk - ls ~pi/pivpnbackup/ | grep backup - pivpn -l - pivpn -c - pivpn -r foo -y after_fail: - sudo journalctl -xe