Skip to content

Commit

Permalink
volume: show jobs
Browse files Browse the repository at this point in the history
  • Loading branch information
joergsteffens committed Sep 18, 2015
1 parent 4d37fa6 commit f3ee633
Show file tree
Hide file tree
Showing 6 changed files with 45 additions and 4 deletions.
2 changes: 2 additions & 0 deletions bareos/fuse/node/client.py
Expand Up @@ -4,10 +4,12 @@

from bareos.fuse.node.backups import Backups
from bareos.fuse.node.directory import Directory
from bareos.fuse.node.jobslist import JobsList

class Client(Directory):
def __init__(self, bsock, name):
super(Client, self).__init__(bsock, name)

def do_update(self):
self.add_subnode(Backups(self.bsock, "backups", client=self.get_name()))
self.add_subnode(JobsList(self.bsock, "jobs", "client=%s" % (self.get_name())))
2 changes: 1 addition & 1 deletion bareos/fuse/node/job.py
Expand Up @@ -28,7 +28,7 @@ def __init__(self, bsock, job):
def get_name(self):
# TODO: adapt list backups to include name
try:
name = "jobid={jobid}_client={clientname}_name={name}_level={level}_status={jobstatus}".format(**self.job)
name = "jobid={jobid}_client={client}_name={name}_level={level}_status={jobstatus}".format(**self.job)
except KeyError:
name = "jobid={jobid}_level={level}_status={jobstatus}".format(**self.job)
return name
Expand Down
9 changes: 6 additions & 3 deletions bareos/fuse/node/jobs.py
Expand Up @@ -3,14 +3,17 @@
"""

from bareos.fuse.node.directory import Directory
from bareos.fuse.node.job import Job
from bareos.fuse.node.jobslist import JobsList
from bareos.fuse.node.jobsname import JobsName

class Jobs(Directory):
def __init__(self, bsock, name):
super(Jobs, self).__init__(bsock, name)
self.static = True

def do_update(self):
data = self.bsock.call("llist jobs")
data = self.bsock.call(".jobs")
jobs = data['jobs']
for i in jobs:
self.add_subnode(Job(self.bsock, i))
self.add_subnode(JobsName(self.bsock, i['name']))
self.add_subnode(JobsList(self.bsock, "all"))
17 changes: 17 additions & 0 deletions bareos/fuse/node/jobslist.py
@@ -0,0 +1,17 @@
"""
Bareos specific Fuse node.
"""

from bareos.fuse.node.directory import Directory
from bareos.fuse.node.job import Job

class JobsList(Directory):
def __init__(self, bsock, name, selector = ''):
super(JobsList, self).__init__(bsock, name)
self.selector = selector

def do_update(self):
data = self.bsock.call("llist jobs %s" % (self.selector))
jobs = data['jobs']
for i in jobs:
self.add_subnode(Job(self.bsock, i))
17 changes: 17 additions & 0 deletions bareos/fuse/node/jobsname.py
@@ -0,0 +1,17 @@
"""
Bareos specific Fuse node.
"""

from bareos.fuse.node.directory import Directory
from bareos.fuse.node.job import Job

class JobsName(Directory):
def __init__(self, bsock, name):
super(JobsName, self).__init__(bsock, "job="+str(name))
self.jobname=name

def do_update(self):
data = self.bsock.call("llist job=%s" % (self.jobname))
jobs = data['jobs']
for i in jobs:
self.add_subnode(Job(self.bsock, i))
2 changes: 2 additions & 0 deletions bareos/fuse/node/volume.py
Expand Up @@ -4,6 +4,7 @@

from bareos.fuse.node.file import File
from bareos.fuse.node.directory import Directory
from bareos.fuse.node.jobslist import JobsList
from pprint import pformat

class Volume(Directory):
Expand All @@ -13,3 +14,4 @@ def __init__(self, bsock, volume):

def do_update(self):
self.add_subnode(File(self.bsock, name="info.txt", content = pformat(self.volume) + "\n"))
self.add_subnode(JobsList(self.bsock, name="jobs", selector = "volume=%s" % (self.name)))

0 comments on commit f3ee633

Please sign in to comment.