Update NFS helper restart

Because ``service`` commands are deprecated in favor of
``systemctl` commands, the check to see if the service
command succeeds in the NFS helper used by e.g. the
lvm and generic back ends fails.  The string sought to
indicate an error is never present.

Update the helper to use ``systemctl`` commands instead
and error check for them correctly.

Closes-bug: #1887695
Change-Id: Ibb1c15f997fa60e1ba5bfb7437502d8aa454d35f
(cherry picked from commit 391ec7dffa)
(cherry picked from commit eb0de241b3)
This commit is contained in:
Tom Barron 2020-07-10 09:17:43 -04:00
parent 2f2ed258f7
commit 0a31254396
1 changed files with 4 additions and 3 deletions

View File

@ -344,11 +344,12 @@ class NFSHelper(NASHelperBase):
self._ssh_exec(server, sync_cmd)
self._ssh_exec(server, ['sudo', 'exportfs', '-a'])
out, _ = self._ssh_exec(
server, ['sudo', 'service', 'nfs-kernel-server', 'status'],
server,
['sudo', 'systemctl', 'is-active', 'nfs-kernel-server'],
check_exit_code=False)
if "not" in out:
if "inactive" in out:
self._ssh_exec(
server, ['sudo', 'service', 'nfs-kernel-server', 'restart'])
server, ['sudo', 'systemctl', 'restart', 'nfs-kernel-server'])
def _get_export_location_template(self, export_location_or_path):
path = export_location_or_path.split(':')[-1]