mini_buildd.builtins module

class mini_buildd.builtins.Css

Bases: object

Mappings: Internal status strings to CSS class from mini_buildd.css

ERROR = 'mbd-error'
WARNING = 'mbd-warning'
NOTICE = 'mbd-notice'
INFO = 'mbd-info'
OKAY = 'mbd-okay'
SUCCESS = 'mbd-success'
NOT_USED = 'mbd-not-used'
MAP = {'django_messages': {'debug': 'mbd-info', 'error': 'mbd-error', 'info': 'mbd-info', 'success': 'mbd-success', 'warning': 'mbd-warning'}, 'events': {'BUILDING': 'mbd-info', 'BUILT': 'mbd-okay', 'FAILED': 'mbd-error', 'INSTALLED': 'mbd-success', 'MIGRATED': 'mbd-success', 'PACKAGING': 'mbd-info', 'REJECTED': 'mbd-error', 'REMOVED': 'mbd-notice'}, 'model_status': {'Active': 'mbd-success', 'Exists': 'mbd-info', 'None': 'mbd-error', 'Prepared': 'mbd-notice', 'Removed': 'mbd-warning'}, 'sbuild_check': {'error': 'mbd-error', 'fail': 'mbd-error', 'info': 'mbd-info', 'no-tests': 'mbd-notice', 'none': 'mbd-not-used', 'pass': 'mbd-success', 'warn': 'mbd-warning'}, 'sbuild_status': {'attempted': 'mbd-error', 'failed': 'mbd-error', 'given-back': 'mbd-error', 'skipped': 'mbd-info', 'successful': 'mbd-success'}}
mini_buildd.builtins.mbd_cssmap(kind, key)
mini_buildd.builtins.mbd_menu_active(context, name)
mini_buildd.builtins.mbd_get(obj)

Identity function. Handy to set variables in templates ({% mbd_get some_value as myvar %})

mini_buildd.builtins.mbd_dict_get(dict_, key, default=None)

Get value from dict even if the key has a special name (like hyphens in a changes file field), or is in another variable

mini_buildd.builtins.mbd_fromtimestamp(stamp)
mini_buildd.builtins.mbd_parent(path)

Get parent path (uri), always w/ trailing slash

>>> mbd_parent("/parent/file")
'/parent/'
>>> mbd_parent("/parent/dir/")
'/parent/'
>>> mbd_parent("/parent/dir/dir/")
'/parent/dir/'
mini_buildd.builtins.mbd_basename(path)
mini_buildd.builtins.mbd_join(path, *paths)
mini_buildd.builtins.mbd_jsonpp(obj)

Get pretty print from json-serializable object

mini_buildd.builtins.mbd_token()
mini_buildd.builtins.mbd_hash(data)
mini_buildd.builtins.mbd_codename(diststr)

Get codename from diststr. On any error, just return empty string

mini_buildd.builtins.mbd_repository(diststr)

Get repository from diststr. On any error, just return empty string

mini_buildd.builtins.mbd_model_stats(model)
mini_buildd.builtins.mbd_next(context)
mini_buildd.builtins.mbd_api(context, call, name=None, hide_options=False, verbose=False, **kwargs)
mini_buildd.builtins.mbd_sbuild_status(bres)
class mini_buildd.builtins.PlainFilter(content, file_path, uri, title)

Bases: dict

Enrich plain text with HTML hints (TOC)

Note

http://tools.ietf.org/html/rfc5147: This, in theory, could be some way to create a TOC for text/plain (buildlogs and such). However

ALLOWED_MIME_TYPES = ['application/json']

Allow (non ‘text/’) mime types

ALLOWED_EXTENSIONS = ['buildlog', 'changes', 'dsc', 'buildinfo', 'log', 'upload']

Allow extensions that have no official mime type

ALLOWED_FILES = ['InRelease', 'Release', 'Sources', 'Packages', '.sbuildrc']

Allow complete (base) file names

ok_to_filter(file_path)
BUILDLOG_INDEX_REGEXES = [(re.compile('\\| (.*) \\|'), 1, 'mbd-info'), (re.compile('^MINI_BUILDD: .+'), 0, 'mbd-info'), (re.compile('.*make.*\\*\\*\\*.*'), 0, 'mbd-error'), (re.compile('(^W(ARNING)?: .+)|(^W(ARN)?: .+)', re.IGNORECASE), 0, 'mbd-warning'), (re.compile('(^E(RROR)?: .+)|(^E(RR)?: .+)', re.IGNORECASE), 0, 'mbd-error'), (re.compile('(^C(RITICAL)?: .+)|(^C(RIT)?: .+)', re.IGNORECASE), 0, 'mbd-error')]

Regex filters for *.buildlog.

LOG_INDEX_REGEXES = [(re.compile('^.+ W: (.*)', re.IGNORECASE), 0, 'mbd-warning'), (re.compile('^.+ E: (.*)', re.IGNORECASE), 0, 'mbd-error'), (re.compile('^.+ C: (.*)', re.IGNORECASE), 0, 'mbd-error')]

Regex filters for *.log.

regex_filter(file_path, regexes)
filter_buildlog(file_path)
filter_log(file_path)
classmethod filter_json(file_path)
classmethod filter_default(file_path)
mini_buildd.builtins.mbd_file(content=None, file_path=None, uri=None, title=None)
mini_buildd.builtins.mbd_datatable(identity, length_menu="[[-1, 10, 20, 50], ['All', 10, 20, 50]]", page_length=20, order=None, columns='null', searching='true', paging='true', info='true')