diff --git a/bumblebee/modules/docker_ps.py b/bumblebee/modules/docker_ps.py index c36c0e7..073c140 100644 --- a/bumblebee/modules/docker_ps.py +++ b/bumblebee/modules/docker_ps.py @@ -21,14 +21,25 @@ import bumblebee.engine class Module(bumblebee.engine.Module): def __init__(self, engine, config): - widget = bumblebee.output.Widget(full_text=self.status) - super(Module, self).__init__(engine, config, widget) + widgets = bumblebee.output.Widget(full_text=self.status) + super(Module, self).__init__(engine, config, widgets) self._status = self.status + self._state = self.state def update(self, widgets): self._status = self.status + self._state = self.state - def status(self, _): + def state(self, widget): + state = [] + status = self.status(widget) + if status == "OK - 0": + state.append("warning") + elif status in ["n/a", "Daemon off"]: + state.append("critical") + return state + + def status(self, widget): try: cli = docker.DockerClient(base_url='unix://var/run/docker.sock') cli.ping()