Throwing a debug in the failing code: # find the distro template for template in self.sourceslist.matcher.templates: print("Try '%s': self.is_codename(template.name) '%s' && self.id >> '%s' == '%s' << template.distribution" % (template.name, self.is_codename(template.name), self.id, template.distribution)) if (self.is_codename(template.name) and template.distribution == self.id): print("yeah! found a template") self.source_template = template break if self.source_template is None: raise NoDistroTemplateException( "Error: could not find a distribution template for %s/%s" % (self.id, self.codename))
Gives me: Try 'bullseye': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Debian' << template.distribution Try 'bullseye/updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Debian' << template.distribution Try 'bullseye-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Debian' << template.distribution Try 'bullseye-proposed-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Debian' << template.distribution Try 'buster': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Debian' << template.distribution Try 'buster/updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Debian' << template.distribution Try 'buster-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Debian' << template.distribution Try 'buster-proposed-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Debian' << template.distribution Try 'stretch': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Debian' << template.distribution Try 'stretch/updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Debian' << template.distribution Try 'stretch-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Debian' << template.distribution Try 'stretch-proposed-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Debian' << template.distribution Try 'jessie': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Debian' << template.distribution Try 'jessie/updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Debian' << template.distribution Try 'jessie-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Debian' << template.distribution Try 'jessie-proposed-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Debian' << template.distribution Try 'wheezy': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Debian' << template.distribution Try 'wheezy/updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Debian' << template.distribution Try 'wheezy-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Debian' << template.distribution Try 'wheezy-proposed-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Debian' << template.distribution Try 'squeeze': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Debian' << template.distribution Try 'squeeze-proposed-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Debian' << template.distribution Try 'squeeze/updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Debian' << template.distribution Try 'lenny': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Debian' << template.distribution Try 'lenny-proposed-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Debian' << template.distribution Try 'lenny/updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Debian' << template.distribution Try 'etch': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Debian' << template.distribution Try 'etch-proposed-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Debian' << template.distribution Try 'etch/updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Debian' << template.distribution Try 'sarge': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Debian' << template.distribution Try 'sarge-proposed-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Debian' << template.distribution Try 'sarge/updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Debian' << template.distribution Try 'stable': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Debian' << template.distribution Try 'testing': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Debian' << template.distribution Try 'sid': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Debian' << template.distribution Try 'unstable': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Debian' << template.distribution Try 'kali-rolling': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Kali' << template.distribution Try 'kali-dev': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Kali' << template.distribution Try 'kali-experimental': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Kali' << template.distribution Try 'devel': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'devel': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'devel': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'devel': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'devel-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'devel-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'devel-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'devel-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'devel-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'devel-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'devel-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'devel-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'groovy': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'groovy': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'groovy': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'groovy': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'groovy-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'groovy-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'groovy-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'groovy-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'groovy-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'groovy-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'groovy-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'groovy-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'focal': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'focal': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'focal': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'focal': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'focal-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'focal-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'focal-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'focal-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'focal-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'focal-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'focal-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'focal-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'eoan': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'eoan': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'eoan': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'eoan': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'eoan-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'eoan-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'eoan-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'eoan-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'eoan-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'eoan-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'eoan-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'eoan-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'disco': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'disco': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'disco': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'disco': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'disco-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'disco-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'disco-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'disco-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'disco-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'disco-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'disco-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'disco-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'cosmic': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'cosmic': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'cosmic': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'cosmic': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'cosmic-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'cosmic-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'cosmic-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'cosmic-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'cosmic-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'cosmic-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'cosmic-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'cosmic-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'bionic': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'bionic': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'bionic': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'bionic': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'bionic-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'bionic-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'bionic-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'bionic-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'bionic-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'bionic-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'bionic-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'bionic-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'artful': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'artful': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'artful': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'artful': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'artful-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'artful-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'artful-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'artful-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'artful-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'artful-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'artful-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'artful-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'zesty': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'zesty': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'zesty': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'zesty': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'zesty-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'zesty-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'zesty-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'zesty-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'zesty-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'zesty-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'zesty-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'zesty-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'yakkety': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'yakkety': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'yakkety': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'yakkety': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'yakkety-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'yakkety-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'yakkety-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'yakkety-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'yakkety-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'yakkety-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'yakkety-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'yakkety-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'xenial': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'xenial': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'xenial': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'xenial': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'xenial-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'xenial-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'xenial-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'xenial-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'xenial-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'xenial-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'xenial-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'xenial-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'wily': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'wily': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'wily': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'wily': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'wily-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'wily-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'wily-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'wily-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'wily-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'wily-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'wily-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'wily-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'vivid': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'vivid': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'vivid': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'vivid': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'vivid': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'vivid-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'vivid-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'vivid-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'vivid-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'vivid-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'vivid-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'vivid-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'vivid-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'utopic': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'utopic': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'utopic': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'utopic': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'utopic': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'utopic-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'utopic-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'utopic-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'utopic-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'utopic-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'utopic-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'utopic-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'utopic-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'trusty': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'trusty': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'trusty': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'trusty': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'trusty': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'trusty-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'trusty-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'trusty-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'trusty-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'trusty-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'trusty-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'trusty-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'trusty-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'saucy': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'saucy': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'saucy': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'saucy': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'saucy': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'saucy-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'saucy-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'saucy-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'saucy-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'saucy-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'saucy-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'saucy-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'saucy-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'raring': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'raring': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'raring': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'raring': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'raring': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'raring-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'raring-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'raring-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'raring-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'raring-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'raring-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'raring-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'raring-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'quantal': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'quantal': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'quantal': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'quantal': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'quantal': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'quantal-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'quantal-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'quantal-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'quantal-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'quantal-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'quantal-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'quantal-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'quantal-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'precise': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'precise': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'precise': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'precise': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'precise': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'precise-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'precise-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'precise-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'precise-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'precise-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'precise-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'precise-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'precise-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'oneiric': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'oneiric': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'oneiric': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'oneiric': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'oneiric': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'oneiric-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'oneiric-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'oneiric-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'oneiric-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'oneiric-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'oneiric-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'oneiric-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'oneiric-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'natty': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'natty': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'natty': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'natty': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'natty': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'natty-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'natty-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'natty-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'natty-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'natty-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'natty-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'natty-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'natty-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'maverick': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'maverick': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'maverick': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'maverick': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'maverick-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'maverick-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'maverick-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'maverick-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'lucid': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'lucid': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'lucid-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'lucid-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'lucid-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'lucid-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'karmic': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'karmic': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'karmic-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'karmic-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'karmic-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'karmic-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'jaunty': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'jaunty': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'jaunty-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'jaunty-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'jaunty-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'jaunty-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'intrepid': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'intrepid': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'intrepid-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'intrepid-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'intrepid-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'intrepid-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'hardy': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'hardy': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'hardy-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'hardy-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'hardy-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'hardy-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'gutsy': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'gutsy': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'gutsy-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'gutsy-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'gutsy-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'gutsy-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'feisty': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'feisty': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'feisty-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'feisty-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'feisty-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'feisty-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'edgy': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'edgy': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'edgy-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'edgy-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'edgy-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'edgy-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'dapper': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'dapper': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'dapper-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'dapper-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'dapper-proposed': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'dapper-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'breezy': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'breezy': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'breezy-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'breezy-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'breezy-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'hoary': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'hoary': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'hoary-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'hoary-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'hoary-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'warty': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'warty': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'warty-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'warty-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'warty-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Ubuntu' << template.distribution Try 'aequorea': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Tanglu' << template.distribution Try 'aequorea-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Tanglu' << template.distribution Try 'bartholomea': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Tanglu' << template.distribution Try 'bartholomea-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Tanglu' << template.distribution Try 'bartholomea-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Tanglu' << template.distribution Try 'tambora': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Blankon' << template.distribution Try 'tambora': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Blankon' << template.distribution Try 'tambora-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Blankon' << template.distribution Try 'tambora-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Blankon' << template.distribution Try 'suroboyo': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Blankon' << template.distribution Try 'suroboyo': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Blankon' << template.distribution Try 'suroboyo-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Blankon' << template.distribution Try 'suroboyo-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Blankon' << template.distribution Try 'rote': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Blankon' << template.distribution Try 'rote': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Blankon' << template.distribution Try 'rote-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Blankon' << template.distribution Try 'rote-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Blankon' << template.distribution Try 'pattimura': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Blankon' << template.distribution Try 'pattimura': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Blankon' << template.distribution Try 'pattimura-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Blankon' << template.distribution Try 'pattimura-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Blankon' << template.distribution Try 'ombilin': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Blankon' << template.distribution Try 'ombilin': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Blankon' << template.distribution Try 'ombilin-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Blankon' << template.distribution Try 'ombilin-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Blankon' << template.distribution Try 'nanggar': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Blankon' << template.distribution Try 'nanggar': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Blankon' << template.distribution Try 'nanggar-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Blankon' << template.distribution Try 'nanggar-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Blankon' << template.distribution Try 'meuligoe': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Blankon' << template.distribution Try 'meuligoe': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Blankon' << template.distribution Try 'meuligoe-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Blankon' << template.distribution Try 'meuligoe-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Blankon' << template.distribution Try 'lontara': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Blankon' << template.distribution Try 'lontara': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Blankon' << template.distribution Try 'lontara-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Blankon' << template.distribution Try 'lontara-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Blankon' << template.distribution Try 'konde': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Blankon' << template.distribution Try 'konde': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Blankon' << template.distribution Try 'konde-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Blankon' << template.distribution Try 'konde-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'Blankon' << template.distribution Try 'parkes': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'gNewSense' << template.distribution Try 'parkes/updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'gNewSense' << template.distribution Try 'deltah': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'gNewSense' << template.distribution Try 'deltah-security': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'gNewSense' << template.distribution Try 'deltah-updates': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'gNewSense' << template.distribution Try 'deltah-backports': self.is_codename(template.name) 'False' && self.id >> 'Ubuntu' == 'gNewSense' << template.distribution A huge list of unknown release names all of them have self.is_codename(template.name) == False -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to software-properties in Ubuntu. https://bugs.launchpad.net/bugs/1902540 Title: hirsute fails on add-apt-repository Status in software-properties package in Ubuntu: New Bug description: On a fully updated hirsute add-apt-repository fails, example: root@h:~# sudo add-apt-repository ppa:ci-train-ppa-service/4321 Traceback (most recent call last): File "/usr/bin/add-apt-repository", line 330, in <module> addaptrepo = AddAptRepository() File "/usr/bin/add-apt-repository", line 35, in __init__ self.distro.get_sources(self.sourceslist) File "/usr/lib/python3/dist-packages/aptsources/distro.py", line 91, in get_sources raise NoDistroTemplateException( aptsources.distro.NoDistroTemplateException: Error: could not find a distribution template for Ubuntu/hirsute The PPA seems not to matter (all trigger it) and if I manually add PPA sources list and GPG key it works. So maybe software-properties just needs to learn about hirsute? Or is there another components (like distro-info or such) that needs a bump for this to work? To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/software-properties/+bug/1902540/+subscriptions -- Mailing list: https://launchpad.net/~touch-packages Post to : touch-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~touch-packages More help : https://help.launchpad.net/ListHelp