[python-bugzilla] [PATCH 1/3] Add a Keywords, assigned_to, qa_contact to 'new'

Lon Hohberger lhh at redhat.com
Thu Jan 16 16:02:35 UTC 2014


Signed-off-by: Lon Hohberger <lhh at redhat.com>
---
 bin/bugzilla           | 10 ++++++++++
 bugzilla/base.py       |  7 ++++++-
 bugzilla/rhbugzilla.py |  2 +-
 3 files changed, 17 insertions(+), 2 deletions(-)

diff --git a/bin/bugzilla b/bin/bugzilla
index 30a1b13..0ded73e 100755
--- a/bin/bugzilla
+++ b/bin/bugzilla
@@ -154,6 +154,13 @@ def setup_action_parser(action):
         p.add_option('--groups',
                 metavar='GROUP[, GROUP, ...]', action="append",
                 help="add groups to which bug is visible")
+        p.add_option('--assigned_to',
+                help='Assign bugzilla to specified email address')
+        p.add_option('--qa_contact',
+                help='Set QA contact to specified email address')
+        p.add_option('--keywords',
+                metavar='KEYWORD[, KEYWORD, ...]', action="append",
+                help="Set specified keywords on new bugzilla")
 
     elif action == 'query':
         p.set_description("List bug reports that match the given criteria.")
@@ -836,6 +843,7 @@ def _do_new(bz, opt):
         depends_on=parse_multi(opt.dependson) or None,
         description=opt.description or None,
         groups=parse_multi(opt.groups) or None,
+        keywords=parse_multi(opt.keywords) or None,
         op_sys=opt.os or None,
         platform=opt.arch or None,
         priority=opt.priority or None,
@@ -844,6 +852,8 @@ def _do_new(bz, opt):
         summary=opt.summary or None,
         url=opt.url or None,
         version=opt.version or None,
+        assigned_to=opt.assigned_to or None,
+        qa_contact=opt.qa_contact or None,
     )
 
     if opt.test_return_result:
diff --git a/bugzilla/base.py b/bugzilla/base.py
index 3a5d65d..b1258e7 100644
--- a/bugzilla/base.py
+++ b/bugzilla/base.py
@@ -1304,6 +1304,8 @@ class BugzillaBase(object):
         comment_private=None,
         blocks=None,
         cc=None,
+        assigned_to=None,
+        keywords=None,
         depends_on=None,
         groups=None,
         op_sys=None,
@@ -1326,6 +1328,8 @@ class BugzillaBase(object):
             localdict["depends_on"] = self._listify(depends_on)
         if groups:
             localdict["groups"] = self._listify(groups)
+        if keywords:
+            localdict["keywords"] = self._listify(keywords)
         if description:
             localdict["description"] = description
             if comment_private:
@@ -1338,7 +1342,8 @@ class BugzillaBase(object):
                 platform=platform, priority=priority, qa_contact=qa_contact,
                 resolution=resolution, severity=severity, status=status,
                 target_milestone=target_milestone,
-                target_release=target_release, url=url)
+                target_release=target_release, url=url,
+                assigned_to=assigned_to)
 
         ret.update(localdict)
         return ret
diff --git a/bugzilla/rhbugzilla.py b/bugzilla/rhbugzilla.py
index 6eda791..399ecb0 100644
--- a/bugzilla/rhbugzilla.py
+++ b/bugzilla/rhbugzilla.py
@@ -54,7 +54,7 @@ class RHBugzilla(_parent):
     getbug_extra_fields = (
         _parent.getbug_extra_fields + [
             "attachments", "comments", "description",
-            "external_bugs", "flags",
+            "external_bugs", "flags"
         ]
     )
 
-- 
1.8.4.2



More information about the python-bugzilla mailing list