aboutsummaryrefslogtreecommitdiffstats
path: root/libbe/bugdir.py
diff options
context:
space:
mode:
Diffstat (limited to 'libbe/bugdir.py')
-rw-r--r--libbe/bugdir.py19
1 files changed, 18 insertions, 1 deletions
diff --git a/libbe/bugdir.py b/libbe/bugdir.py
index 9715011..31410d5 100644
--- a/libbe/bugdir.py
+++ b/libbe/bugdir.py
@@ -4,6 +4,7 @@ import cmdutil
import errno
import names
import rcs
+import mapfile
class NoBugDir(Exception):
def __init__(self, path):
@@ -106,5 +107,21 @@ class Bug(object):
rcs.unlink(self.get_path(name))
rcs.set_file_contents(self.get_path(name), "%s\n" % value)
+ def add_attr(self, map, name):
+ value = self.__getattribute__(name)
+ if value is not None:
+ map[name] = value
+
def save(self):
- pass
+ map = {}
+ self.add_attr(map, "summary")
+ self.add_attr(map, "creator")
+ self.add_attr(map, "target")
+ self.add_attr(map, "status")
+ self.add_attr(map, "severity")
+ path = self.get_path("values")
+ output = file(path, "wb")
+ if not os.path.exists(path):
+ rcs.add_id(path)
+ mapfile.generate(output, map)
+