26 lines
784 B
Python
26 lines
784 B
Python
from __future__ import absolute_import
|
|
|
|
from .base import Mutable, Taggable, Triggerable, StreamingLog
|
|
|
|
|
|
class Service(Mutable, Taggable, Triggerable):
|
|
subsystem = "app"
|
|
endpoint = "/service"
|
|
|
|
def start(self):
|
|
return self._perform_action("start")
|
|
|
|
def stop(self):
|
|
return self._perform_action("stop")
|
|
|
|
def redeploy(self, reuse_volumes=True):
|
|
params = {'reuse_volumes': reuse_volumes}
|
|
return self._perform_action("redeploy", params=params)
|
|
|
|
def scale(self):
|
|
return self._perform_action("scale")
|
|
|
|
def logs(self, tail, follow, log_handler=StreamingLog.default_log_handler):
|
|
logs = StreamingLog(self.subsystem, self.endpoint, self.pk, tail, follow)
|
|
logs.on_message(log_handler)
|
|
logs.run_forever()
|