ubuntutools/sponsor_patch/bugtask.py: Check for sync too.

This commit is contained in:
Benjamin Drung 2011-09-10 16:43:41 +02:00
parent 05ec1d133d
commit 7a08470ca1

View File

@ -24,6 +24,14 @@ import distro_info
from devscripts.logger import Logger from devscripts.logger import Logger
def is_sync(bug):
"""Checks if a Launchpad bug is a sync request.
Either the title contains the word sync or the bug contains the tag sync."""
return "sync" in bug.title.lower().split(" ") or "sync" in bug.tags
class BugTask(object): class BugTask(object):
def __init__(self, bug_task, launchpad): def __init__(self, bug_task, launchpad):
self.bug_task = bug_task self.bug_task = bug_task
@ -72,7 +80,7 @@ class BugTask(object):
return result return result
def get_previous_version(self): def get_previous_version(self):
if self.is_merge(): if self.is_derived_from_debian():
previous_version = self.get_latest_released_version() previous_version = self.get_latest_released_version()
else: else:
previous_version = self.get_version() previous_version = self.get_version()
@ -91,7 +99,7 @@ class BugTask(object):
def get_source(self, latest_release=False): def get_source(self, latest_release=False):
assert self.package is not None assert self.package is not None
if self.is_merge() and not latest_release: if self.is_derived_from_debian() and not latest_release:
project = "debian" project = "debian"
title = self.bug_task.title.lower().split() title = self.bug_task.title.lower().split()
if "experimental" in title: if "experimental" in title:
@ -130,9 +138,16 @@ class BugTask(object):
def is_complete(self): def is_complete(self):
return self.bug_task.is_complete return self.bug_task.is_complete
def is_derived_from_debian(self):
"""Checks if this task get's the source from Debian."""
return self.is_merge() or self.is_sync()
def is_merge(self): def is_merge(self):
bug = self.bug_task.bug bug = self.bug_task.bug
return "merge" in bug.title.lower().split(" ") or "merge" in bug.tags return "merge" in bug.title.lower().split(" ") or "merge" in bug.tags
def is_sync(self):
return is_sync(self.bug_task.bug)
def is_ubuntu_task(self): def is_ubuntu_task(self):
return self.project == "ubuntu" return self.project == "ubuntu"