Make command configurable, for restarting tempmon-client
can even configure it per client if necessary
This commit is contained in:
parent
051cb71956
commit
0e0b125d99
2 changed files with 22 additions and 22 deletions
|
@ -28,6 +28,7 @@ from __future__ import unicode_literals, absolute_import
|
|||
|
||||
import subprocess
|
||||
|
||||
from rattail.config import parse_list
|
||||
from rattail_tempmon.db import model as tempmon
|
||||
|
||||
import colander
|
||||
|
@ -199,7 +200,8 @@ class TempmonClientView(MasterView):
|
|||
g.set_sort_defaults('taken', 'desc')
|
||||
|
||||
def restartable_client(self, client):
|
||||
return True
|
||||
cmd = self.get_restart_cmd(client)
|
||||
return bool(cmd)
|
||||
|
||||
def restart(self):
|
||||
client = self.get_instance()
|
||||
|
@ -217,7 +219,13 @@ class TempmonClientView(MasterView):
|
|||
return self.redirect(self.get_action_url('view', client))
|
||||
|
||||
def get_restart_cmd(self, client):
|
||||
return ['ssh', client.hostname, 'sudo service tempmon-client restart']
|
||||
name = 'rattail.tempmon.client.restart'
|
||||
cmd = self.rattail_config.get('rattail.tempmon', 'client.restart.{}'.format(client.config_key))
|
||||
if not cmd:
|
||||
cmd = self.rattail_config.get('rattail.tempmon', 'client.restart')
|
||||
if cmd:
|
||||
cmd = cmd.format(hostname=client.hostname)
|
||||
return parse_list(cmd)
|
||||
|
||||
@classmethod
|
||||
def defaults(cls, config):
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue