mini_buildd.daemon module¶
-
class
mini_buildd.daemon.
Changelog
(file=None, max_blocks=None, allow_empty_author=False, strict=False, encoding='utf-8')¶ Bases:
debian.changelog.Changelog
Changelog class with some extra functions.
>>> cl = Changelog(mini_buildd.misc.open_utf8("test-data/changelog"), max_blocks=100) >>> cl.find_first_not("mini-buildd@buildd.intra") ('Stephan S\xfcrken <absurd@debian.org>', '1.0.0-2')
>>> cl = Changelog(mini_buildd.misc.open_utf8("test-data/changelog.ported"), max_blocks=100) >>> cl.find_first_not("mini-buildd@buildd.intra") ('Stephan S\xfcrken <absurd@debian.org>', '1.0.0-2')
>>> cl = Changelog(mini_buildd.misc.open_utf8("test-data/changelog.oneblock"), max_blocks=100) >>> cl.find_first_not("mini-buildd@buildd.intra") ('Stephan S\xfcrken <absurd@debian.org>', '1.0.1-1~')
>>> cl = Changelog(mini_buildd.misc.open_utf8("test-data/changelog.oneblock.ported"), max_blocks=100) >>> cl.find_first_not("mini-buildd@buildd.intra") ('Mini Buildd <mini-buildd@buildd.intra>', '1.0.1-1~')
-
find_first_not
(author)¶ Find (author,version+1) of the first changelog block not by given author.
-
-
class
mini_buildd.daemon.
DebianVersion
(version)¶ Bases:
debian.debian_support.Version
-
classmethod
stamp
()¶
-
classmethod
stamp_regex
(stamp=None)¶
-
gen_internal_rebuild
()¶ Generate an ‘internal rebuild’ version.
If the version is not already a rebuild version, just append the rebuild appendix, otherwise replace the old one. For example:
1.2.3 -> 1.2.3+rebuilt20130215100453 1.2.3+rebuilt20130215100453 -> 1.2.3+rebuilt20130217120517
Code samples:
>>> regex = r"^1\.2\.3\+rebuilt{s}$".format(s=DebianVersion.stamp_regex()) >>> bool(re.match(regex, DebianVersion("1.2.3").gen_internal_rebuild())) True >>> bool(re.match(regex, DebianVersion("1.2.3+rebuilt20130215100453").gen_internal_rebuild())) True
-
gen_external_port
(default_version)¶ Generate an ‘external port’ version.
This currently just appends the given default version appendix. For example:
1.2.3 -> 1.2.3~test60+1
-
gen_internal_port
(from_mandatory_version_regex, to_default_version)¶ Generate an ‘internal port’ version.
Tests for the (recommended) Default layout:
>>> sid_regex = r"~testSID\+[1-9]" >>> sid_default = "~testSID+1" >>> sid_exp_regex = r"~testSID\+0" >>> sid_exp_default = "~testSID+0" >>> wheezy_regex = r"~test70\+[1-9]" >>> wheezy_default = "~test70+1" >>> wheezy_exp_regex = r"~test70\+0" >>> wheezy_exp_default = "~test70+0" >>> squeeze_regex = r"~test60\+[1-9]" >>> squeeze_default = "~test60+1" >>> squeeze_exp_regex = r"~test60\+0" >>> squeeze_exp_default = "~test60+0"
sid->wheezy ports:
>>> DebianVersion("1.2.3-1~testSID+1").gen_internal_port(sid_regex, wheezy_default) '1.2.3-1~test70+1' >>> DebianVersion("1.2.3-1~testSID+4").gen_internal_port(sid_regex, wheezy_default) '1.2.3-1~test70+4' >>> DebianVersion("1.2.3-1~testSID+4fud15").gen_internal_port(sid_regex, wheezy_default) '1.2.3-1~test70+4fud15' >>> DebianVersion("1.2.3-1~testSID+0").gen_internal_port(sid_exp_regex, wheezy_exp_default) '1.2.3-1~test70+0' >>> DebianVersion("1.2.3-1~testSID+0exp2").gen_internal_port(sid_exp_regex, wheezy_exp_default) '1.2.3-1~test70+0exp2'
wheezy->squeeze ports:
>>> DebianVersion("1.2.3-1~test70+1").gen_internal_port(wheezy_regex, squeeze_default) '1.2.3-1~test60+1' >>> DebianVersion("1.2.3-1~test70+4").gen_internal_port(wheezy_regex, squeeze_default) '1.2.3-1~test60+4' >>> DebianVersion("1.2.3-1~test70+4fud15").gen_internal_port(wheezy_regex, squeeze_default) '1.2.3-1~test60+4fud15' >>> DebianVersion("1.2.3-1~test70+0").gen_internal_port(wheezy_exp_regex, squeeze_exp_default) '1.2.3-1~test60+0' >>> DebianVersion("1.2.3-1~test70+0exp2").gen_internal_port(wheezy_exp_regex, squeeze_exp_default) '1.2.3-1~test60+0exp2'
No version restrictions: just add default version
>>> DebianVersion("1.2.3-1").gen_internal_port(".*", "~port+1") '1.2.3-1~port+1'
-
classmethod
-
class
mini_buildd.daemon.
KeyringPackage
(identity, gpg, debfullname, debemail, tpl_dir='/usr/share/mini-buildd/package-templates/archive-keyring-template')¶ Bases:
mini_buildd.misc.TmpDir
-
class
mini_buildd.daemon.
DSTPackage
(tpl_dir, version=None)¶ Bases:
mini_buildd.misc.TmpDir
-
class
mini_buildd.daemon.
Keyrings
¶ Bases:
object
Hold/manage all gnupg keyrings (for remotes and all repository uploaders).
-
set_needs_update
()¶
-
close
()¶
-
get_remotes
()¶
-
get_uploaders
()¶
-
-
mini_buildd.daemon.
run
()¶ mini-buildd ‘daemon engine’ run.
-
class
mini_buildd.daemon.
Daemon
¶ Bases:
object
-
update_to_model
()¶
-
start
(force_check=False, msglog=<Logger mini_buildd.daemon (WARNING)>)¶
-
stop
(msglog=<Logger mini_buildd.daemon (WARNING)>)¶
-
is_busy
()¶
-
is_running
()¶
-
get_status
()¶
-
get_title
()¶ Human-readable short title for this Daemon instance.
-
classmethod
meta
(model, func, msglog)¶
-
classmethod
logcat
(lines)¶
-
get_last_packages
()¶
-
get_last_versions
(package)¶
-
classmethod
get_active_chroots
()¶
-
classmethod
get_active_repositories
()¶
-
classmethod
get_suites
()¶
-
classmethod
get_active_codenames
()¶
-
classmethod
get_active_remotes
()¶
-
classmethod
get_active_or_auto_reactivate_remotes
()¶
-
classmethod
get_subscription_objects
()¶
-
classmethod
parse_distribution
(dist)¶ Get repository, distribution and suite model objects (plus rollback no) from distribution string.
-
port
(package, from_dist, to_dist, version, options=None)¶
-
portext
(dsc_url, to_dist, options=None)¶
-
get_keyring_package
()¶
-
classmethod
get_test_package
(id_)¶
-
mbd_get_sources_list
(codename, repo_regex, suite_regex, prefixes, with_extra_sources)¶
-
-
mini_buildd.daemon.
get
()¶