ubuntu-bugcontrol team mailing list archive
-
ubuntu-bugcontrol team
-
Mailing list archive
-
Message #04627
[Merge] ~rodrigo-zaiden/ubuntu-qa-tools:kernel-sru-check into ubuntu-qa-tools:master
Rodrigo Figueiredo Zaiden has proposed merging ~rodrigo-zaiden/ubuntu-qa-tools:kernel-sru-check into ubuntu-qa-tools:master.
Requested reviews:
Steve Beattie (sbeattie)
For more details, see:
https://code.launchpad.net/~rodrigo-zaiden/ubuntu-qa-tools/+git/ubuntu-qa-tools/+merge/436273
While running 'security-tools/kernel-sru-check' we may want to preserve the status and only change if forced to, with the argument '-a' or '--assign'. If this is the case, we are showing the assignee.
$ ./kernel-sru-check -a
[<example>] Bug <example>
kinetic kinetic/linux: <example>
https://launchpad.net/bugs/<example>
In Progress: <assignee>
Also added a verbose argument to show status and assignee if status is 'Confirmed' but not yet assigned.
$ ./kernel-sru-check -v
[<example>] Bug <example>
kinetic kinetic/linux: <example>
https://launchpad.net/bugs/<example>
Confirmed: canonical-security
for each kernel version, it will first show the 'Confirmed' needing assignment and then the 'In Progress' issues.
--
Your team Ubuntu Bug Control is subscribed to branch ubuntu-qa-tools:master.
diff --git a/security-tools/kernel-sru-check b/security-tools/kernel-sru-check
index 4e1fa8a..35f5331 100755
--- a/security-tools/kernel-sru-check
+++ b/security-tools/kernel-sru-check
@@ -29,8 +29,10 @@ import re
import time
parser = argparse.ArgumentParser()
+parser.add_argument("--assign", "-a", help="Assign the task to the current runner", action='store_true', default=False)
parser.add_argument("--api-version", help="Which LP API Version to use (default: 1.0)", action='store', default='1.0')
parser.add_argument("--debug", help="Show HTTP requests", action='store_true', default=False)
+parser.add_argument("--verbose", "-v", help="Show additional information", action='store_true', default=False)
parser.add_argument("--task", help="which task series to focus on (default: security-signoff)", action='store', default='security-signoff')
parser.add_argument("--oneline", help="compressed output, useful for aggregating cron jobs", action='store_true', default=False)
args = parser.parse_args()
@@ -47,6 +49,8 @@ class SignoffBug(object):
self.release = get_ubuntu_release_from_bug(bug)
self.kernel, self.version = bug.title.split(' ')[0:2]
self.kernel_series = self.version.split('-')[0]
+ self.status = task.status
+ self.assignee = task.assignee.name
cycle = 'missing'
for tag in bug.tags:
@@ -59,6 +63,8 @@ class SignoffBug(object):
if not short_output:
print('%s %s %s' % (self.release, self.kernel, self.version))
print('https://launchpad.net/bugs/%d' % (self.id))
+ if self.status == "In Progress" or args.verbose:
+ print('%s: %s' % (self.status, self.assignee))
print('')
@@ -101,16 +107,18 @@ def get_ubuntu_release_from_bug(signoff_bug):
except AttributeError:
return "Unknown Release"
-
-for task in sec.searchTasks(omit_targeted=False, status="Confirmed"):
- task.assignee = lp.me
- task.status = "In Progress"
- lpl_common.save(task)
+if args.assign:
+ for task in sec.searchTasks(omit_targeted=False, status="Confirmed"):
+ task.assignee = lp.me
+ task.status = "In Progress"
+ lpl_common.save(task)
cycles = defaultdict(dict)
# Report stuff in progress as a reminder
-for task in sec.searchTasks(omit_targeted=False, status="In Progress"):
+for task in sec.searchTasks(omit_targeted=False,
+ status=["Confirmed", "In Progress"],
+ order_by="status"):
bug = SignoffBug(task)
cycles[bug.cycle].setdefault(bug.kernel_series, []).append(bug)
Follow ups