mini_buildd.api module¶
-
class
mini_buildd.api.
Argument
(id_list, doc='Undocumented', default=None, choices=None)¶ Bases:
object
-
set
(value)¶
-
property
value
¶ Get value, including convenience transformations.
-
false2none
()¶
-
update
()¶ Overwrite to implement custom run-time update.
-
-
class
mini_buildd.api.
TextArgument
(*args, **kwargs)¶ Bases:
mini_buildd.api.Argument
-
TYPE
= 'text'¶
-
-
class
mini_buildd.api.
URLArgument
(*args, **kwargs)¶ Bases:
mini_buildd.api.TextArgument
-
TYPE
= 'url'¶
-
-
class
mini_buildd.api.
TextareaArgument
(*args, **kwargs)¶ Bases:
mini_buildd.api.TextArgument
-
TYPE
= 'textarea'¶
-
-
class
mini_buildd.api.
NumberArgument
(*args, **kwargs)¶ Bases:
mini_buildd.api.TextArgument
-
TYPE
= 'number'¶
-
-
class
mini_buildd.api.
SelectArgument
(*args, **kwargs)¶ Bases:
mini_buildd.api.Argument
-
TYPE
= 'select'¶
-
-
class
mini_buildd.api.
BoolArgument
(*args, **kwargs)¶
-
class
mini_buildd.api.
MultiSelectArgument
(*args, **kwargs)¶ Bases:
mini_buildd.api.TextArgument
-
TYPE
= 'multiselect'¶
-
SEPARATOR
= ','¶
-
-
class
mini_buildd.api.
RepositoryRegex
(ident)¶ Bases:
mini_buildd.api.TextArgument
-
update
()¶ Overwrite to implement custom run-time update.
-
-
class
mini_buildd.api.
RepositoryPattern
(ident)¶ Bases:
mini_buildd.api.TextArgument
-
update
()¶ Overwrite to implement custom run-time update.
-
-
class
mini_buildd.api.
Distribution
(ident)¶ Bases:
mini_buildd.api.TextArgument
-
update
(**kwargs)¶ Overwrite to implement custom run-time update.
-
-
class
mini_buildd.api.
Distributions
(ident)¶ Bases:
mini_buildd.api.MultiSelectArgument
-
update
()¶ Overwrite to implement custom run-time update.
-
-
class
mini_buildd.api.
KeyringDistributions
(ident)¶ Bases:
mini_buildd.api.Distributions
-
update
()¶ Overwrite to implement custom run-time update.
-
-
class
mini_buildd.api.
UploadableDistributions
(ident)¶ Bases:
mini_buildd.api.Distributions
-
update
()¶ Overwrite to implement custom run-time update.
-
-
class
mini_buildd.api.
AutoPortDistributions
(ident)¶ Bases:
mini_buildd.api.UploadableDistributions
-
update
()¶ Overwrite to implement custom run-time update.
-
-
class
mini_buildd.api.
TestDistributions
(ident)¶ Bases:
mini_buildd.api.UploadableDistributions
-
update
()¶ Overwrite to implement custom run-time update.
-
-
class
mini_buildd.api.
FindDistributions
(ident)¶ Bases:
mini_buildd.api.Distributions
-
update
()¶ Overwrite to implement custom run-time update.
-
-
class
mini_buildd.api.
Codename
(ident)¶ Bases:
mini_buildd.api.TextArgument
-
update
()¶ Overwrite to implement custom run-time update.
-
-
class
mini_buildd.api.
Suite
(ident)¶ Bases:
mini_buildd.api.TextArgument
-
update
()¶ Overwrite to implement custom run-time update.
-
-
class
mini_buildd.api.
Source
(ident)¶ Bases:
mini_buildd.api.TextArgument
-
update
()¶ Overwrite to implement custom run-time update.
-
-
class
mini_buildd.api.
PatternSource
(ident)¶ Bases:
mini_buildd.api.TextArgument
-
update
()¶ Overwrite to implement custom run-time update.
-
-
class
mini_buildd.api.
SourceVersion
(ident)¶ Bases:
mini_buildd.api.TextArgument
-
class
mini_buildd.api.
UploadOptions
(ident)¶ Bases:
mini_buildd.api.TextArgument
-
class
mini_buildd.api.
Command
(given_args=None, request=None)¶ Bases:
object
-
NONE
= 0¶
-
LOGIN
= 1¶
-
STAFF
= 2¶
-
ADMIN
= 3¶
-
AUTH
= 0¶
-
AUTH_STRINGS
= {0: 'anonymous', 1: 'any user login', 2: 'staff user login', 3: 'super user login'}¶
-
CONFIRM
= False¶
-
NEEDS_RUNNING_DAEMON
= False¶
-
ARGUMENTS
= []¶
-
PLAIN
= '__plain__'¶
-
classmethod
isgroup
()¶
-
classmethod
name
()¶
-
classmethod
doc
()¶
-
classmethod
arg_identities
()¶
-
classmethod
api_args
(args)¶ Safely generate API args from args dict.
Use only known argument identities.
Use only non-None values.
Convert values to raw ‘str’ representation.
-
classmethod
auth_err
(user)¶ Check if django user is authorized to call command.
Empty string means user is authorized.
-
classmethod
json_pretty
(result)¶
-
classmethod
get_plain
(result)¶
-
plain
()¶
-
update
()¶
-
run
()¶
-
has_flag
(flag)¶
-
-
class
mini_buildd.api.
GroupSetup
(given_args=None, request=None)¶ Bases:
mini_buildd.api.Command
Setup.
-
AUTH
= 3¶
-
CONFIRM
= True¶
-
-
class
mini_buildd.api.
SetupDaemon
(given_args=None, request=None)¶ Bases:
mini_buildd.api.GroupSetup
Daemon setup. Authorization: super user login
-
class
mini_buildd.api.
SetupSources
(given_args=None, request=None)¶ Bases:
mini_buildd.api.GroupSetup
Sources setup. Authorization: super user login
-
ARGUMENTS
= [<mini_buildd.api.MultiSelectArgument object>, <mini_buildd.api.MultiSelectArgument object>, <mini_buildd.api.BoolArgument object>, <mini_buildd.api.BoolArgument object>]¶
-
-
class
mini_buildd.api.
SetupRepositories
(given_args=None, request=None)¶ Bases:
mini_buildd.api.GroupSetup
Repositories setup. Authorization: super user login
-
ARGUMENTS
= [<mini_buildd.api.MultiSelectArgument object>]¶
-
-
class
mini_buildd.api.
SetupChroots
(given_args=None, request=None)¶ Bases:
mini_buildd.api.GroupSetup
Chroots setup. Authorization: super user login
-
ARGUMENTS
= [<mini_buildd.api.SelectArgument object>]¶
-
-
class
mini_buildd.api.
Setup
(given_args=None, request=None)¶ Bases:
mini_buildd.api.GroupSetup
Bootstrap setup.
>>> Setup({'chroot_backend': 'File'}).args['chroot_backend'].value 'File' >>> Setup({'chroot_backend': SelectArgument(["--chroot-backend", "-C"], default="BtrfsSnapshot", choices=["Dir", "File", "LVM", "LoopLVM", "BtrfsSnapshot"])}).args['chroot_backend'].value 'BtrfsSnapshot'
Authorization: super user login
-
ARGUMENTS
= [<mini_buildd.api.MultiSelectArgument object>, <mini_buildd.api.MultiSelectArgument object>, <mini_buildd.api.BoolArgument object>, <mini_buildd.api.BoolArgument object>, <mini_buildd.api.MultiSelectArgument object>, <mini_buildd.api.SelectArgument object>]¶
-
-
class
mini_buildd.api.
GroupDaemon
(given_args=None, request=None)¶ Bases:
mini_buildd.api.Command
Daemon.
-
PORT_RESULT_DOC
= ('JSON Result (dict):', ' uploaded: list of triples of all items uploaded')¶
-
-
class
mini_buildd.api.
Status
(*args, **kwargs)¶ Bases:
mini_buildd.api.GroupDaemon
Show the status of the mini-buildd instance.
- JSON Result (dict):
identity : string: instance identity version : string: mini-buildd version http : string: HTTP URL ftp : string: FTP URL running : bool: Whether instance is accepting incoming load : float: machine load (0 =< load <= 1+) chroots : list: [<codename>:<arch>, ..]: Active chroots repositories: dict: {identity: [codename, ..]}: Active repositories remotes : list: Active or auto-reactivate remotes packaging : list: Active (source) packages being processed building : list: Active (binary) package builds
Authorization: anonymous
-
classmethod
has_chroot
(result, codename, arch)¶
-
class
mini_buildd.api.
Activate
(given_args=None, request=None)¶ Bases:
mini_buildd.api.GroupDaemon
Activate the Daemon.
- JSON Result (dict):
identity : string: instance identity version : string: mini-buildd version http : string: HTTP URL ftp : string: FTP URL running : bool: Whether instance is accepting incoming load : float: machine load (0 =< load <= 1+) chroots : list: [<codename>:<arch>, ..]: Active chroots repositories: dict: {identity: [codename, ..]}: Active repositories remotes : list: Active or auto-reactivate remotes packaging : list: Active (source) packages being processed building : list: Active (binary) package builds
Authorization: super user login
-
AUTH
= 3¶
-
class
mini_buildd.api.
Deactivate
(given_args=None, request=None)¶ Bases:
mini_buildd.api.GroupDaemon
Deactivate the Daemon.
- JSON Result (dict):
identity : string: instance identity version : string: mini-buildd version http : string: HTTP URL ftp : string: FTP URL running : bool: Whether instance is accepting incoming load : float: machine load (0 =< load <= 1+) chroots : list: [<codename>:<arch>, ..]: Active chroots repositories: dict: {identity: [codename, ..]}: Active repositories remotes : list: Active or auto-reactivate remotes packaging : list: Active (source) packages being processed building : list: Active (binary) package builds
Authorization: super user login
-
AUTH
= 3¶
-
ARGUMENTS
= []¶
-
class
mini_buildd.api.
TerminatePackage
(given_args=None, request=None)¶ Bases:
mini_buildd.api.GroupDaemon
Terminate an ongoing package. Authorization: staff user login
-
AUTH
= 2¶
-
NEEDS_RUNNING_DAEMON
= True¶
-
CONFIRM
= True¶
-
ARGUMENTS
= [<mini_buildd.api.TextArgument object>]¶
-
-
class
mini_buildd.api.
TerminateBuild
(given_args=None, request=None)¶ Bases:
mini_buildd.api.TerminatePackage
Terminate an ongoing build. Authorization: staff user login
-
class
mini_buildd.api.
GetKey
(given_args=None, request=None)¶ Bases:
mini_buildd.api.GroupDaemon
Get GnuPG public key.
- JSON Result (dict):
__plain__: string: ASCII-armored key.
Authorization: anonymous
-
class
mini_buildd.api.
GetDputConf
(given_args=None, request=None)¶ Bases:
mini_buildd.api.GroupDaemon
Get recommended dput config snippet.
Usually, this is for integration in your personal ~/.dput.cf.
- JSON Result (dict):
__plain__: string: dput config snippet.
Authorization: anonymous
-
class
mini_buildd.api.
GetUploaders
(given_args=None, request=None)¶ Bases:
mini_buildd.api.GroupDaemon
Get all GPG keys allowed to upload to repositories.
JSON Result (dict): {repository: {‘allow_unauthenticated_uploads’: True|False, ‘uploaders’: {long_key_id: {key info…}), ..}}}
Authorization: super user login
-
AUTH
= 3¶
-
NEEDS_RUNNING_DAEMON
= True¶
-
ARGUMENTS
= [<mini_buildd.api.RepositoryRegex object>]¶
-
-
class
mini_buildd.api.
LogCat
(given_args=None, request=None)¶ Bases:
mini_buildd.api.GroupDaemon
Cat last n lines of the mini-buildd’s log.
- JSON Result (dict):
__plain__: string: last n loglines
Authorization: staff user login
-
AUTH
= 2¶
-
ARGUMENTS
= [<mini_buildd.api.NumberArgument object>]¶
-
class
mini_buildd.api.
GroupRepository
(given_args=None, request=None)¶ Bases:
mini_buildd.api.Command
Repositories.
-
class
mini_buildd.api.
GetSourcesList
(given_args=None, request=None)¶ Bases:
mini_buildd.api.GroupRepository
Get sources.list (apt lines).
Usually, this output is put to a file like ‘/etc/sources.list.d/mini-buildd-xyz.list’.
- JSON Result (dict):
__plain__: string: apt lines
Authorization: anonymous
-
ARGUMENTS
= [<mini_buildd.api.Codename object>, <mini_buildd.api.RepositoryRegex object>, <mini_buildd.api.Suite object>, <mini_buildd.api.MultiSelectArgument object>, <mini_buildd.api.TextArgument object>, <mini_buildd.api.NumberArgument object>, <mini_buildd.api.TextArgument object>, <mini_buildd.api.TextArgument object>, <mini_buildd.api.BoolArgument object>, <mini_buildd.api.BoolArgument object>]¶
-
class
mini_buildd.api.
GetSnapshots
(given_args=None, request=None)¶ Bases:
mini_buildd.api.GroupRepository
Get list of repository snapshots for a distribution.
- JSON Result (dict):
dict: <distribution>: [snasphot,…]: List of snapshots for the given distribution.
Authorization: anonymous
-
NEEDS_RUNNING_DAEMON
= True¶
-
ARGUMENTS
= [<mini_buildd.api.Distribution object>]¶
-
class
mini_buildd.api.
GenSnapshot
(given_args=None, request=None)¶ Bases:
mini_buildd.api.GetSnapshots
Generate a repository snapshot.
JSON Result (dict): Empty for now.
Authorization: super user login
-
AUTH
= 3¶
-
CONFIRM
= True¶
-
ARGUMENTS
= [<mini_buildd.api.Distribution object>, <mini_buildd.api.TextArgument object>]¶
-
-
class
mini_buildd.api.
DelSnapshot
(given_args=None, request=None)¶ Bases:
mini_buildd.api.GenSnapshot
Delete a repository snapshot.
JSON Result (dict): Empty for now.
-
class
mini_buildd.api.
KeyringPackages
(given_args=None, request=None)¶ Bases:
mini_buildd.api.GroupRepository
Build keyring packages for all active repositories.
- JSON Result (dict):
uploaded: list of triples of all items uploaded
Authorization: super user login
-
AUTH
= 3¶
-
NEEDS_RUNNING_DAEMON
= True¶
-
CONFIRM
= True¶
-
ARGUMENTS
= [<mini_buildd.api.KeyringDistributions object>, <mini_buildd.api.BoolArgument object>]¶
-
class
mini_buildd.api.
TestPackages
(given_args=None, request=None)¶ Bases:
mini_buildd.api.GroupRepository
Build internal test packages.
- JSON Result (dict):
uploaded: list of triples of all items uploaded
Authorization: super user login
-
AUTH
= 3¶
-
NEEDS_RUNNING_DAEMON
= True¶
-
CONFIRM
= True¶
-
ARGUMENTS
= [<mini_buildd.api.MultiSelectArgument object>, <mini_buildd.api.TestDistributions object>, <mini_buildd.api.AutoPortDistributions object>, <mini_buildd.api.BoolArgument object>]¶
-
class
mini_buildd.api.
GroupPackage
(given_args=None, request=None)¶ Bases:
mini_buildd.api.Command
Packages.
-
class
mini_buildd.api.
List
(given_args=None, request=None)¶ Bases:
mini_buildd.api.GroupPackage
List packages of a distribution, matching a shell-like glob pattern; matches both source and binary package names.
JSON Result (dict): {repository: [{package_info}…]}
Authorization: any user login
-
AUTH
= 1¶
-
ARGUMENTS
= [<mini_buildd.api.Distribution object>, <mini_buildd.api.PatternSource object>, <mini_buildd.api.NumberArgument object>]¶
-
-
class
mini_buildd.api.
Show
(given_args=None, request=None)¶ Bases:
mini_buildd.api.GroupPackage
Show a source package.
JSON Result (dict): {repository: [(codename, {package_info}),…]}
Authorization: anonymous
-
ARGUMENTS
= [<mini_buildd.api.Source object>]¶
-
-
class
mini_buildd.api.
Find
(given_args=None, request=None)¶ Bases:
mini_buildd.api.GroupPackage
Find a source package.
JSON Result (dict): {repository: [{package_info},…]}
Authorization: anonymous
-
ARGUMENTS
= [<mini_buildd.api.Source object>, <mini_buildd.api.FindDistributions object>, <mini_buildd.api.SourceVersion object>, <mini_buildd.api.SourceVersion object>]¶
-
-
class
mini_buildd.api.
Migrate
(given_args=None, request=None)¶ Bases:
mini_buildd.api.GroupPackage
Migrate a source package (along with all binary packages).
If run for a rollback distribution, this will perform a rollback restore.
- JSON Result (dict):
__plain__: string: textual migration log.
Authorization: staff user login
-
AUTH
= 2¶
-
CONFIRM
= True¶
-
ARGUMENTS
= [<mini_buildd.api.Source object>, <mini_buildd.api.Distribution object>, <mini_buildd.api.BoolArgument object>, <mini_buildd.api.SourceVersion object>]¶
-
class
mini_buildd.api.
Remove
(given_args=None, request=None)¶ Bases:
mini_buildd.api.GroupPackage
Remove a source package (along with all binary packages).
- JSON Result (dict):
__plain__: string: textual removal log.
Authorization: super user login
-
AUTH
= 3¶
-
CONFIRM
= True¶
-
ARGUMENTS
= [<mini_buildd.api.Source object>, <mini_buildd.api.Distribution object>, <mini_buildd.api.BoolArgument object>, <mini_buildd.api.SourceVersion object>]¶
-
class
mini_buildd.api.
Port
(given_args=None, request=None)¶ Bases:
mini_buildd.api.GroupPackage
Port an internal package.
An internal ‘port’ is a no-changes (i.e., only the changelog will be adapted) rebuild of the given locally-installed package.
When from-distribution equals to_distribution, a rebuild will be done.
- JSON Result (dict):
requested: list: Info string about each port that has been triggered
- JSON Result (dict):
uploaded: list of triples of all items uploaded
Authorization: staff user login
-
AUTH
= 2¶
-
NEEDS_RUNNING_DAEMON
= True¶
-
CONFIRM
= True¶
-
ARGUMENTS
= [<mini_buildd.api.Source object>, <mini_buildd.api.Distribution object>, <mini_buildd.api.UploadableDistributions object>, <mini_buildd.api.SourceVersion object>, <mini_buildd.api.UploadOptions object>]¶
-
update
()¶
-
class
mini_buildd.api.
PortExt
(given_args=None, request=None)¶ Bases:
mini_buildd.api.GroupPackage
Port an external package.
An external ‘port’ is a no-changes (i.e., only the changelog will be adapted) rebuild of any given source package.
- JSON Result (dict):
requested: list: Info string about each port that has been triggered.
- JSON Result (dict):
uploaded: list of triples of all items uploaded
Authorization: staff user login
-
AUTH
= 2¶
-
NEEDS_RUNNING_DAEMON
= True¶
-
CONFIRM
= True¶
-
ARGUMENTS
= [<mini_buildd.api.URLArgument object>, <mini_buildd.api.UploadableDistributions object>, <mini_buildd.api.UploadOptions object>]¶
-
class
mini_buildd.api.
Retry
(given_args=None, request=None)¶ Bases:
mini_buildd.api.GroupPackage
Retry a previously failed package.
Use ‘repository’ in case of multiple matches only.”
- JSON Result (dict):
uploaded: string: Info string about each retry that has been triggered.
Authorization: staff user login
-
AUTH
= 2¶
-
NEEDS_RUNNING_DAEMON
= True¶
-
CONFIRM
= True¶
-
ARGUMENTS
= [<mini_buildd.api.Distribution object>, <mini_buildd.api.Source object>, <mini_buildd.api.SourceVersion object>]¶
-
update
()¶
-
class
mini_buildd.api.
GroupUser
(given_args=None, request=None)¶ Bases:
mini_buildd.api.Command
Users.
-
class
mini_buildd.api.
SetUserKey
(given_args=None, request=None)¶ Bases:
mini_buildd.api.GroupUser
Set a user’s GnuPG public key.
Authorization: any user login
-
AUTH
= 1¶
-
CONFIRM
= True¶
-
ARGUMENTS
= [<mini_buildd.api.TextareaArgument object>]¶
-
-
class
mini_buildd.api.
Subscription
(given_args=None, request=None)¶ Bases:
mini_buildd.api.GroupUser
Manage subscriptions to package notifications.
A package subscription is a tuple ‘PACKAGE:DISTRIBUTION’, where both PACKAGE or DISTRIBUTION may be empty to denote all resp. items.
- JSON Result (dict):
list: list: (action=list only) Human readable list of subscriptions. add: list: (action=add only) Human readable list of added subscriptions. remove: list: (action=lremoved only) Human readable list of removed subscriptions.
Authorization: any user login
-
AUTH
= 1¶
-
ARGUMENTS
= [<mini_buildd.api.SelectArgument object>, <mini_buildd.api.TextArgument object>]¶
-
update
()¶
-
class
mini_buildd.api.
Commands
¶ Bases:
collections.OrderedDict
Automatically collect all commands defined in this module, and make them accessible.
Menu-like structure of commands (helps creating the API menu in HTML).