diff options
author | DmitriyEshenko <dmitriy.eshenko@vyos.io> | 2021-12-01 07:56:24 +0000 |
---|---|---|
committer | DmitriyEshenko <dmitriy.eshenko@vyos.io> | 2021-12-01 12:02:56 +0000 |
commit | 9304b1409a53cc197ef4d8fa58e96e0542b01128 (patch) | |
tree | 9872c64f2077b4ec420e3584d2656398fab126d0 /src/conf_mode/vpn_openconnect.py | |
parent | b675c8b6187c4b77759e3f96c9c92dd382dabeae (diff) | |
download | vyos-1x-9304b1409a53cc197ef4d8fa58e96e0542b01128.tar.gz vyos-1x-9304b1409a53cc197ef4d8fa58e96e0542b01128.zip |
openconnect: T3695: Add systemd service checker on commit
Diffstat (limited to 'src/conf_mode/vpn_openconnect.py')
-rwxr-xr-x | src/conf_mode/vpn_openconnect.py | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/conf_mode/vpn_openconnect.py b/src/conf_mode/vpn_openconnect.py index f6db196dc..51ea1f223 100755 --- a/src/conf_mode/vpn_openconnect.py +++ b/src/conf_mode/vpn_openconnect.py @@ -23,9 +23,11 @@ from vyos.pki import wrap_certificate from vyos.pki import wrap_private_key from vyos.template import render from vyos.util import call +from vyos.util import is_systemd_service_running from vyos.xml import defaults from vyos import ConfigError from crypt import crypt, mksalt, METHOD_SHA512 +from time import sleep from vyos import airbag airbag.enable() @@ -172,6 +174,16 @@ def apply(ocserv): os.unlink(file) else: call('systemctl restart ocserv.service') + counter = 0 + while True: + # exit early when service runs + if is_systemd_service_running("ocserv.service"): + break + sleep(0.250) + if counter > 5: + raise ConfigError('openconnect failed to start, check the logs for details') + break + counter += 1 if __name__ == '__main__': |