diff options
| author | Thomas Mangin <thomas.mangin@exa.net.uk> | 2020-05-23 07:33:47 +0100 | 
|---|---|---|
| committer | Thomas Mangin <thomas.mangin@exa.net.uk> | 2020-06-25 10:57:58 +0100 | 
| commit | d9fbad6a6bbba292f31fe50e57af893062c7a584 (patch) | |
| tree | 3c6b5d14d2062f1ef043d18db1932d22b5c7b0e7 /src | |
| parent | d41708ee247ce5efc5dc06f2d233e8d620fc6e4a (diff) | |
| download | vyos-1x-d9fbad6a6bbba292f31fe50e57af893062c7a584.tar.gz vyos-1x-d9fbad6a6bbba292f31fe50e57af893062c7a584.zip | |
systemd: T2494: use Type=notify with daemon
Notify systemd via the notify API when the python daemon are
ready to take connection
https://github.com/torfsen/python-systemd-tutorial
Diffstat (limited to 'src')
| -rwxr-xr-x | src/services/vyos-hostsd | 1 | ||||
| -rwxr-xr-x | src/services/vyos-http-api-server | 2 | ||||
| -rw-r--r-- | src/systemd/vyos-hostsd.service | 2 | ||||
| -rw-r--r-- | src/systemd/vyos-http-api.service | 2 | 
4 files changed, 5 insertions, 2 deletions
| diff --git a/src/services/vyos-hostsd b/src/services/vyos-hostsd index 0079f7e5c..53ac5a770 100755 --- a/src/services/vyos-hostsd +++ b/src/services/vyos-hostsd @@ -592,6 +592,7 @@ if __name__ == '__main__':      socket.bind(SOCKET_PATH)      os.umask(o_mask) +    systemd.daemon.notify('READY=1')      while True:          #  Wait for next request from client          msg_json = socket.recv().decode() diff --git a/src/services/vyos-http-api-server b/src/services/vyos-http-api-server index b256add98..38bf2f8ce 100755 --- a/src/services/vyos-http-api-server +++ b/src/services/vyos-http-api-server @@ -28,6 +28,7 @@ import vyos.config  from flask import Flask, request  from waitress import serve +import systemd.daemon  from functools import wraps @@ -396,6 +397,7 @@ if __name__ == '__main__':      signal.signal(signal.SIGTERM, sig_handler) +    systemd.daemon.notify('READY=1')      try:          serve(app, host=server_config["listen_address"],                     port=server_config["port"]) diff --git a/src/systemd/vyos-hostsd.service b/src/systemd/vyos-hostsd.service index b77335778..418601d1a 100644 --- a/src/systemd/vyos-hostsd.service +++ b/src/systemd/vyos-hostsd.service @@ -14,7 +14,7 @@ WorkingDirectory=/run/vyos-hostsd  RuntimeDirectory=vyos-hostsd  RuntimeDirectoryPreserve=yes  ExecStart=/usr/bin/python3 -u /usr/libexec/vyos/services/vyos-hostsd -Type=idle +Type=notify  KillMode=process  SyslogIdentifier=vyos-hostsd diff --git a/src/systemd/vyos-http-api.service b/src/systemd/vyos-http-api.service index 4fa68b4ff..636973be7 100644 --- a/src/systemd/vyos-http-api.service +++ b/src/systemd/vyos-http-api.service @@ -6,7 +6,7 @@ Requires=vyos-router.service  [Service]  ExecStartPre=/usr/libexec/vyos/init/vyos-config  ExecStart=/usr/bin/python3 -u /usr/libexec/vyos/services/vyos-http-api-server -Type=idle +Type=notify  KillMode=process  SyslogIdentifier=vyos-http-api | 
