У меня есть рабочая установка TeamCity для моих проектов в моей локальной сети с использованием локальных ресурсов, таких как svn, веб-серверы и серверы баз данных. Теперь я хочу иметь возможность открыть туннель vpn для другой сети, а затем запустить сборку из удаленных ресурсов.
У меня есть туннель, работающий с использованием openvpn:
sudo openvpn --config client.ovpn
Моя проблема в том, что когда туннель открыт, я хочу иметь возможность запустить следующий шаг, но должен быть запущен процесс openvpn.
Есть ли способ создать «стартовый скрипт», который не будет возвращаться до тех пор, пока туннель не будет запущен, и если да, то как я его убью?
Для начала:
sudo openvpn --config client.ovpn --daemon --writepid /var/run/openvpn-MyTunnel.pid
Чтобы убить:
sudo kill $(cat /var/run/openvpn-MyTunnel.pid); sudo rm /var/run/openvpn-MyTunnel.pid
Openvpn также имеет интерфейс управления, который вы можете использовать для дистанционное управление демоном openvpn (см. опцию - management в manv openvpn ).