buildapi.controllers package

Submodules

buildapi.controllers.error module

class buildapi.controllers.error.ErrorController[source]

Bases: buildapi.lib.base.BaseController

Generates error documents as and when they are required.

The ErrorDocuments middleware forwards to ErrorController when error related status codes are returned from the application.

This behaviour can be altered by changing the parameters to the ErrorDocuments middleware in your config/middleware.py file.

_serve_file(path)[source]

Call Paste’s FileApp (a WSGI application) to serve the file at the specified path

document()[source]

Render the error document

img(id)[source]

Serve Pylons’ stock images

style(id)[source]

Serve Pylons’ stock stylesheets

buildapi.controllers.pending module

class buildapi.controllers.pending.PendingController(**kwargs)[source]

Bases: buildapi.controllers.results.ResultsController

buildapi.controllers.pushes module

class buildapi.controllers.pushes.PushesController[source]

Bases: buildapi.lib.base.BaseController

index(branch=None, fromtime=None, totime=None)[source]

buildapi.controllers.recent module

class buildapi.controllers.recent.RecentController[source]

Bases: buildapi.lib.base.BaseController

index(slave=None)[source]

buildapi.controllers.reports module

buildapi.controllers.results module

class buildapi.controllers.results.ResultsController(pending=True, running=False, complete=False, revision=False, template=None, **kwargs)[source]

Bases: buildapi.lib.base.BaseController

index(branch=None, platform=None, rev=None)[source]

buildapi.controllers.revision module

class buildapi.controllers.revision.RevisionController(**kwargs)[source]

Bases: buildapi.controllers.results.ResultsController

buildapi.controllers.running module

class buildapi.controllers.running.RunningController(**kwargs)[source]

Bases: buildapi.controllers.results.ResultsController

buildapi.controllers.selfserve module

class buildapi.controllers.selfserve.SelfserveController[source]

Bases: buildapi.lib.base.BaseController

Results are formatted according to the ‘format’ query parameter (”?format=html” or ”?format=json”). If ‘format’ is not set, and the ‘Accept’ header of the request includes ‘application/json’, the format will be set to json. Otherwise the format will be html.

Will return HTTP 200 for successful queries, or HTTP 404 if a resource is not found.

PUT, POST, and DELETE requests (which can be faked by setting a ‘_method’ field to ‘PUT’ or ‘DELETE’ in a regular POST request if your client doesn’t support PUT/DELETE easiliy) represent requests to change buildbot state. These are called “Job Requests”.

Requests to these methods return a job status dictionary, which includes the following keys:

“status” - “OK” or “FAILED” “msg” - informational text “request_id” - the job request id. You can find the status of the job

by visiting /self-serve/jobs/{job_id}. This is only set for successfull requests.

Job requests can return 202 (HTTP Accepted) if the request was accepted, or 503 (HTTP Service Unavailable) if there was an error. In case of a 503 error, the request should be re-submitted at a later time.

Missing or bad parameters for the request type will result in a 400 error.

_failed(msg, status)[source]
_format(obj)[source]
_format_mq_response(msg)[source]
_get_stable_delay()[source]
_htmlify(obj)[source]
_ok(obj, status=200)[source]
_require_auth()[source]
branch(branch)[source]

Return a list of builds running on this branch

branches()[source]

Return a list of all the branches

build(branch, build_id)[source]

Return information about a build

builders(branch)[source]

Return a list of valid builders for this branch

cancel_build(branch, build_id)[source]

Cancel the given build

cancel_request(branch, request_id)[source]

Cancel the given request

cancel_revision(branch, revision)[source]

Cancels all running or pending builds on this revision

index()[source]

Root of the API. You’re looking at it!

job_status(job_id)[source]

Return information about a job request

jobs()[source]

Return a list of past self-serve requests

new_build_at_rev(branch, revision)[source]

Creates a new build at this revision

new_build_for_builder(branch, builder_name, revision)[source]

Creates a new arbitrary build/test for this buildername, for this revision. Optional POST parameters are ‘properties’ and ‘files’, which should be a dictionary and a list, respectively.

new_nightly_at_rev(branch, revision)[source]

Creates a new set of nightly builds at this revision.

priority is optional, and if set should be an integer priority.

new_pgobuild_at_rev(branch, revision)[source]

Creates a new set of PGO builds at this revision.

priority is optional, and if set should be an integer priority.

rebuild_build(branch)[source]

Rebuild build_id, which must be passed in as a POST parameter.

priority is also accepted as an optional parameter.

rebuild_request(branch)[source]

Rebuild request_id, which must be passed in as a POST parameter.

priority is also accepted as an optional parameter.

reprioritize(branch, request_id)[source]

Reprioritize the given request.

Requires priority in the POST parameters.

Higher priority values get handled first, and the default priority for jobs is 0.

Returns a job status message.

request(branch, request_id)[source]

Return information about a request

revision(branch, revision)[source]

Return a list of builds running for this revision

revision_is_done(branch, revision)[source]

Return a json dictionary with information about whether the job is done and has passed all tests for this revision

user(branch, user)[source]

Return a list of builds for this user

buildapi.controllers.validators module

class buildapi.controllers.validators.BranchListValidator(*args, **kw)[source]

Bases: buildapi.controllers.validators.SeparatorOneOfValidator

Multi value branch validator.

Parameters must be a subset of SOURCESTAMPS_BRANCH keys.

Messages

badType:
The input must be a string (not a %(type)s: %(value)r)
empty:
Please enter a value
invalid:
Invalid value
noneType:
The input must be a string (not None)
notIn:
Value must be one of: %(items)s (not %(value)r)
declarative_count = 59
list = ['nanojit-central', 'mozilla-2.0', 'jaegermonkey', 'tracemonkey', 'l10n-central', 'cedar', 'birch', 'maple', 'mozilla-1.9.2', 'mozilla-1.9.1', 'electrolysis', 'places', 'try', 'mozilla-central']
class buildapi.controllers.validators.BranchNameValidator(*args, **kw)[source]

Bases: formencode.validators.OneOf, formencode.validators.String

Branch name validator. Must be one of SOURCESTAMPS_BRANCH keys.

Messages

badType:
The input must be a string (not a %(type)s: %(value)r)
empty:
Please enter a value
invalid:
Invalid value
noneType:
The input must be a string (not None)
notIn:
Value must be one of: %(items)s (not %(value)r)
declarative_count = 57
if_empty = 'mozilla-central'
if_missing = 'mozilla-central'
list = ['nanojit-central', 'mozilla-2.0', 'jaegermonkey', 'tracemonkey', 'l10n-central', 'cedar', 'birch', 'maple', 'mozilla-1.9.2', 'mozilla-1.9.1', 'electrolysis', 'places', 'try', 'mozilla-central']
class buildapi.controllers.validators.BuildTypeValidator(*args, **kw)[source]

Bases: buildapi.controllers.validators.SeparatorOneOfValidator

Multi value build type validator.

Parameters must be a subset of BUILD_TYPE_BUILDERNAME keys.

Messages

badType:
The input must be a string (not a %(type)s: %(value)r)
empty:
Please enter a value
invalid:
Invalid value
noneType:
The input must be a string (not None)
notIn:
Value must be one of: %(items)s (not %(value)r)
declarative_count = 61
list = ['opt', 'debug']
class buildapi.controllers.validators.BuilderDetailsSchema(*args, **kw)[source]

Bases: buildapi.controllers.validators.ReportSchema

Builder Report Schema.

Messages

badDictType:
The input must be dict-like (not a %(type)s: %(value)r)
badType:
The input must be a string (not a %(type)s: %(value)r)
empty:
Please enter a value
missingValue:
Missing value
noneType:
The input must be a string (not None)
notExpected:
The input field %(name)s was not expected.
chained_validators = [<DateCompare object 73>, <DateInit object 74>, <RequestIdValidator object 75>]
declarative_count = 104
fields = {'buildername': <String object 103 not_empty=True>, 'endtime': <UnixtimestampValidator object 72>, 'tqx': <String object 70 if_empty='' if_missing=''>, 'starttime': <UnixtimestampValidator object 71>, 'format': <FormatValidator object 102 list=('html', 'json')>}
pre_validators = []
class buildapi.controllers.validators.BuildersSchema(*args, **kw)[source]

Bases: buildapi.controllers.validators.ReportSchema

Average Time per Builder Report Schema.

Messages

badDictType:
The input must be dict-like (not a %(type)s: %(value)r)
badType:
The input must be a string (not a %(type)s: %(value)r)
empty:
Please enter a value
missingValue:
Missing value
noneType:
The input must be a string (not None)
notExpected:
The input field %(name)s was not expected.
chained_validators = [<DateCompare object 73>, <DateInit object 74>, <RequestIdValidator object 75>]
declarative_count = 101
fields = {'detail_level': <DetailLevelValidator object 100>, 'format': <FormatValidator object 69 list=('html', 'json', 'chart')>, 'job_type': <JobTypeValidator object 99>, 'platform': <PlatformValidator object 97>, 'starttime': <UnixtimestampValidator object 71>, 'endtime': <UnixtimestampValidator object 72>, 'tqx': <String object 70 if_empty='' if_missing=''>, 'build_type': <BuildTypeValidator object 98>, 'branch_name': <BranchNameValidator object 96>}
pre_validators = []
class buildapi.controllers.validators.DateCompare(*args, **kw)[source]

Bases: formencode.api.FancyValidator

Validates that starttime is before endtime.

Messages

badType:
The input must be a string (not a %(type)s: %(value)r)
empty:
Please enter a value
invalid:
statttime must be before endtime
noneType:
The input must be a string (not None)
_messages = {'noneType': 'The input must be a string (not None)', 'badType': 'The input must be a string (not a %(type)s: %(value)r)', 'empty': 'Please enter a value', 'invalid': 'statttime must be before endtime'}
declarative_count = 66
validate_python(value_dict, state)[source]
class buildapi.controllers.validators.DateInit(*args, **kw)[source]

Bases: formencode.api.FancyValidator

Initializes starttime and entime if not specified.

Messages

badType:
The input must be a string (not a %(type)s: %(value)r)
empty:
Please enter a value
noneType:
The input must be a string (not None)
declarative_count = 67
classmethod to_python(value_dict, state)[source]
class buildapi.controllers.validators.DetailLevelValidator(*args, **kw)[source]

Bases: formencode.validators.OneOf, formencode.validators.String

Detail level validator.

Parameter must be one of BUILDERS_DETAIL_LEVELS.

Messages

badType:
The input must be a string (not a %(type)s: %(value)r)
empty:
Please enter a value
invalid:
Invalid value
noneType:
The input must be a string (not None)
notIn:
Value must be one of: %(items)s (not %(value)r)
declarative_count = 63
if_empty = 'builder'
if_missing = 'builder'
list = ['branch', 'platform', 'build_type', 'job_type', 'builder']
class buildapi.controllers.validators.EndtoendRevisionSchema(*args, **kw)[source]

Bases: buildapi.controllers.validators.ReportSchema

Revision Report Schema.

Messages

badDictType:
The input must be dict-like (not a %(type)s: %(value)r)
badType:
The input must be a string (not a %(type)s: %(value)r)
empty:
Please enter a value
missingValue:
Missing value
noneType:
The input must be a string (not None)
notExpected:
The input field %(name)s was not expected.
chained_validators = [<RequestIdValidator object 94>]
declarative_count = 95
endtime = None
fields = {'branch_name': <BranchNameValidator object 92>, 'revision': <String object 93 max=12 min=12 not_empty=True>, 'tqx': <String object 70 if_empty='' if_missing=''>, 'format': <FormatValidator object 91 list=('html', 'json')>}
pre_validators = []
starttime = None
class buildapi.controllers.validators.EndtoendSchema(*args, **kw)[source]

Bases: buildapi.controllers.validators.ReportSchema

End to End Times Report Schema.

Messages

badDictType:
The input must be dict-like (not a %(type)s: %(value)r)
badType:
The input must be a string (not a %(type)s: %(value)r)
empty:
Please enter a value
missingValue:
Missing value
noneType:
The input must be a string (not None)
notExpected:
The input field %(name)s was not expected.
chained_validators = [<DateCompare object 73>, <DateInit object 74>, <RequestIdValidator object 75>]
declarative_count = 90
fields = {'branch_name': <BranchNameValidator object 89>, 'endtime': <UnixtimestampValidator object 72>, 'tqx': <String object 70 if_empty='' if_missing=''>, 'starttime': <UnixtimestampValidator object 71>, 'format': <FormatValidator object 69 list=('html', 'json', 'chart')>}
pre_validators = []
class buildapi.controllers.validators.FormatValidator(*args, **kw)[source]

Bases: formencode.validators.OneOf, formencode.validators.String

Format parameter validator.

Messages

badType:
The input must be a string (not a %(type)s: %(value)r)
empty:
Please enter a value
invalid:
Invalid value
noneType:
The input must be a string (not None)
notIn:
Value must be one of: %(items)s (not %(value)r)
declarative_count = 53
if_empty = 'html'
if_missing = 'html'
list = ('html', 'json', 'chart')
class buildapi.controllers.validators.IdleJobsSchema(*args, **kw)[source]

Bases: buildapi.controllers.validators.ReportSchema

IdleJobs Report Schema.

Messages

badDictType:
The input must be dict-like (not a %(type)s: %(value)r)
badType:
The input must be a string (not a %(type)s: %(value)r)
empty:
Please enter a value
missingValue:
Missing value
noneType:
The input must be a string (not None)
notExpected:
The input field %(name)s was not expected.
chained_validators = [<DateCompare object 73>, <DateInit object 74>, <RequestIdValidator object 75>]
declarative_count = 106
fields = {'int_size': <IntervalValidator object 105>, 'endtime': <UnixtimestampValidator object 72>, 'tqx': <String object 70 if_empty='' if_missing=''>, 'starttime': <UnixtimestampValidator object 71>, 'format': <FormatValidator object 69 list=('html', 'json', 'chart')>}
pre_validators = []
class buildapi.controllers.validators.IntSizeInit(*args, **kw)[source]

Bases: formencode.api.FancyValidator

Initializes int_size proportionally to selected time interval
(starttime, endtime) into specified number of divisions.

Messages

badType:
The input must be a string (not a %(type)s: %(value)r)
empty:
Please enter a value
noneType:
The input must be a string (not None)
declarative_count = 68
divisions = 12
int_size_param = 'int_size'
classmethod to_python(value_dict, state)[source]
class buildapi.controllers.validators.IntervalValidator(*args, **kw)[source]

Bases: formencode.validators.Int

Time inverval validator.

The interval is speficied in seconds, with the default at 2 hours (7200s).

Messages

badType:
The input must be a string (not a %(type)s: %(value)r)
empty:
Please enter a value
integer:
Please enter an integer value
noneType:
The input must be a string (not None)
tooHigh:
Please enter a number that is %(max)s or smaller
tooLow:
Please enter a number that is %(min)s or greater
declarative_count = 55
if_empty = 0
if_missing = 0
min = 0
class buildapi.controllers.validators.JobTypeValidator(*args, **kw)[source]

Bases: buildapi.controllers.validators.SeparatorOneOfValidator

Multi value job type validator.

Parameters must be a subset of JOB_TYPE_BUILDERNAME keys.

Messages

badType:
The input must be a string (not a %(type)s: %(value)r)
empty:
Please enter a value
invalid:
Invalid value
noneType:
The input must be a string (not None)
notIn:
Value must be one of: %(items)s (not %(value)r)
declarative_count = 62
list = ['unittest', 'repack', 'talos', 'build']
class buildapi.controllers.validators.NumberTypeValidator(*args, **kw)[source]

Bases: formencode.validators.OneOf, formencode.validators.String

Number Type Validator.

Parameter must be either a full number, or a percentage of the global sum.

Messages

badType:
The input must be a string (not a %(type)s: %(value)r)
empty:
Please enter a value
invalid:
Invalid value
noneType:
The input must be a string (not None)
notIn:
Value must be one of: %(items)s (not %(value)r)
declarative_count = 64
if_empty = 'full'
if_missing = 'full'
list = ('full', 'ptg')
class buildapi.controllers.validators.PlatformValidator(*args, **kw)[source]

Bases: buildapi.controllers.validators.SeparatorOneOfValidator

Multi value platform validator.

Parameters must be a subset of PLATFORMS_BUILDERNAME keys.

Messages

badType:
The input must be a string (not a %(type)s: %(value)r)
empty:
Please enter a value
invalid:
Invalid value
noneType:
The input must be a string (not None)
notIn:
Value must be one of: %(items)s (not %(value)r)
declarative_count = 60
list = ['fedora64', 'win8', 'mountainlion', 'fedora', 'tegra', 'ubuntu32_vm', 'win64', 'panda-android', 'lion', 'xp-ix', 'ubuntu64_vm', 'win764', 'linux-mock', 'win2k3', 'win7', 'ubuntu64_hw', 'snowleopard', 'xp', 'win7-ix', 'ubuntu32_hw']
class buildapi.controllers.validators.PoolValidator(*args, **kw)[source]

Bases: formencode.validators.OneOf, formencode.validators.String

Pool validator. Must be present in util.POOLS.

Messages

badType:
The input must be a string (not a %(type)s: %(value)r)
empty:
Please enter a value
invalid:
Invalid value
noneType:
The input must be a string (not None)
notIn:
Value must be one of: %(items)s (not %(value)r)
declarative_count = 56
if_empty = 'buildpool'
if_missing = 'buildpool'
list = ['buildpool', 'trybuildpool', 'testpool']
class buildapi.controllers.validators.PushesSchema(*args, **kw)[source]

Bases: buildapi.controllers.validators.ReportSchema

Pushes Report Schema.

Messages

badDictType:
The input must be dict-like (not a %(type)s: %(value)r)
badType:
The input must be a string (not a %(type)s: %(value)r)
empty:
Please enter a value
missingValue:
Missing value
noneType:
The input must be a string (not None)
notExpected:
The input field %(name)s was not expected.
chained_validators = [<DateCompare object 73>, <DateInit object 74>, <RequestIdValidator object 75>, <IntSizeInit object 80>]
declarative_count = 81
fields = {'branches': <BranchListValidator object 78>, 'format': <FormatValidator object 69 list=('html', 'json', 'chart')>, 'int_size': <IntervalValidator object 77>, 'starttime': <UnixtimestampValidator object 71>, 'type': <OneOf object 79 if_empty='all' if_missing='all' list=['int', 'hourly', 'all']>, 'endtime': <UnixtimestampValidator object 72>, 'tqx': <String object 70 if_empty='' if_missing=''>}
pre_validators = []
class buildapi.controllers.validators.ReportSchema(*args, **kw)[source]

Bases: formencode.schema.Schema

Base report schema.

Messages

badDictType:
The input must be dict-like (not a %(type)s: %(value)r)
badType:
The input must be a string (not a %(type)s: %(value)r)
empty:
Please enter a value
missingValue:
Missing value
noneType:
The input must be a string (not None)
notExpected:
The input field %(name)s was not expected.
allow_extra_fields = True
chained_validators = [<DateCompare object 73>, <DateInit object 74>, <RequestIdValidator object 75>]
declarative_count = 76
fields = {'endtime': <UnixtimestampValidator object 72>, 'tqx': <String object 70 if_empty='' if_missing=''>, 'starttime': <UnixtimestampValidator object 71>, 'format': <FormatValidator object 69 list=('html', 'json', 'chart')>}
filter_extra_fields = True
pre_validators = []
class buildapi.controllers.validators.RequestIdValidator(*args, **kw)[source]

Bases: formencode.api.FancyValidator

Intended as a chained validator to be called after validating all

parameters in the schema.

It parses ‘reqId’ value out of ‘tqx’ parameter, meaningful only if format equals ‘chart’.

Messages

badType:
The input must be a string (not a %(type)s: %(value)r)
empty:
Please enter a value
noneType:
The input must be a string (not None)
_parse_reqid(tqx)[source]
declarative_count = 65
classmethod to_python(value_dict, state)[source]
class buildapi.controllers.validators.SeparatorOneOfValidator(*args, **kw)[source]

Bases: formencode.validators.OneOf

Exactly like OneOf validator, with ‘testValueList’ set to True,
checks if the list of parameters is a subset of the allowed values (‘list’ parameter), except the input is not a list, but a string of multiple values seprated by the spefied ‘separator’.

Messages

badType:
The input must be a string (not a %(type)s: %(value)r)
empty:
Please enter a value
invalid:
Invalid value
noneType:
The input must be a string (not None)
notIn:
Value must be one of: %(items)s (not %(value)r)
_to_python(value, state)[source]
declarative_count = 58
if_empty = []
if_missing = []
list = []
separator = ','
testValueList = True
class buildapi.controllers.validators.SlaveDetailsSchema(*args, **kw)[source]

Bases: buildapi.controllers.validators.ReportSchema

Slave Details Report Schema.

Messages

badDictType:
The input must be dict-like (not a %(type)s: %(value)r)
badType:
The input must be a string (not a %(type)s: %(value)r)
empty:
Please enter a value
missingValue:
Missing value
noneType:
The input must be a string (not None)
notExpected:
The input field %(name)s was not expected.
chained_validators = [<DateCompare object 73>, <DateInit object 74>, <RequestIdValidator object 75>, <IntSizeInit object 111 divisions=24>, <IntSizeInit object 112 divisions=24 int_size_param='last_int_size'>]
declarative_count = 113
fields = {'slave_id': <Int object 109 min=0>, 'last_int_size': <IntervalValidator object 108>, 'format': <FormatValidator object 69 list=('html', 'json', 'chart')>, 'int_size': <IntervalValidator object 107>, 'starttime': <UnixtimestampValidator object 71>, 'type': <OneOf object 110 if_empty='all' if_missing='all' list=['busy', 'all']>, 'endtime': <UnixtimestampValidator object 72>, 'tqx': <String object 70 if_empty='' if_missing=''>}
pre_validators = []
class buildapi.controllers.validators.SlavesSchema(*args, **kw)[source]

Bases: buildapi.controllers.validators.ReportSchema

Slaves Report Schema.

Messages

badDictType:
The input must be dict-like (not a %(type)s: %(value)r)
badType:
The input must be a string (not a %(type)s: %(value)r)
empty:
Please enter a value
missingValue:
Missing value
noneType:
The input must be a string (not None)
notExpected:
The input field %(name)s was not expected.
chained_validators = [<DateCompare object 73>, <DateInit object 74>, <RequestIdValidator object 75>, <IntSizeInit object 117 divisions=2000>, <IntSizeInit object 118 divisions=24 int_size_param='last_int_size'>]
declarative_count = 119
fields = {'last_int_size': <IntervalValidator object 115>, 'format': <FormatValidator object 69 list=('html', 'json', 'chart')>, 'int_size': <IntervalValidator object 114>, 'starttime': <UnixtimestampValidator object 71>, 'type': <OneOf object 116 if_empty='all' if_missing='all' list=['silos', 'all']>, 'endtime': <UnixtimestampValidator object 72>, 'tqx': <String object 70 if_empty='' if_missing=''>}
pre_validators = []
class buildapi.controllers.validators.StatusBuilderDetailsSchema(*args, **kw)[source]

Bases: buildapi.controllers.validators.ReportSchema

Builder Details Report Schema.

Messages

badDictType:
The input must be dict-like (not a %(type)s: %(value)r)
badType:
The input must be a string (not a %(type)s: %(value)r)
empty:
Please enter a value
missingValue:
Missing value
noneType:
The input must be a string (not None)
notExpected:
The input field %(name)s was not expected.
chained_validators = [<DateCompare object 73>, <DateInit object 74>, <RequestIdValidator object 75>]
declarative_count = 121
fields = {'endtime': <UnixtimestampValidator object 72>, 'tqx': <String object 70 if_empty='' if_missing=''>, 'builder_name': <String object 120 not_empty=True>, 'starttime': <UnixtimestampValidator object 71>, 'format': <FormatValidator object 69 list=('html', 'json', 'chart')>}
pre_validators = []
class buildapi.controllers.validators.StatusBuildersSchema(*args, **kw)[source]

Bases: buildapi.controllers.validators.ReportSchema

Builders Report Schema.

Messages

badDictType:
The input must be dict-like (not a %(type)s: %(value)r)
badType:
The input must be a string (not a %(type)s: %(value)r)
empty:
Please enter a value
missingValue:
Missing value
noneType:
The input must be a string (not None)
notExpected:
The input field %(name)s was not expected.
chained_validators = [<DateCompare object 73>, <DateInit object 74>, <RequestIdValidator object 75>]
declarative_count = 123
fields = {'endtime': <UnixtimestampValidator object 72>, 'tqx': <String object 70 if_empty='' if_missing=''>, 'starttime': <UnixtimestampValidator object 71>, 'format': <FormatValidator object 122 list=('html', 'json')>}
pre_validators = []
class buildapi.controllers.validators.TestRunSchema(*args, **kw)[source]

Bases: buildapi.controllers.validators.ReportSchema

Test Run Report Schema

Messages

badDictType:
The input must be dict-like (not a %(type)s: %(value)r)
badType:
The input must be a string (not a %(type)s: %(value)r)
empty:
Please enter a value
missingValue:
Missing value
noneType:
The input must be a string (not None)
notExpected:
The input field %(name)s was not expected.
chained_validators = [<DateCompare object 73>, <DateInit object 74>, <RequestIdValidator object 75>]
declarative_count = 128
fields = {'category': <String object 126 if_empty=None if_missing=None>, 'group': <Bool object 127 if_missing=None>, 'format': <FormatValidator object 69 list=('html', 'json', 'chart')>, 'platform': <String object 125 if_empty=None if_missing=None>, 'starttime': <UnixtimestampValidator object 71>, 'btype': <String object 124 if_empty=None if_missing=None>, 'endtime': <UnixtimestampValidator object 72>, 'tqx': <String object 70 if_empty='' if_missing=''>}
pre_validators = []
class buildapi.controllers.validators.UnixtimestampValidator(*args, **kw)[source]

Bases: formencode.validators.Number

Unixtimestamp validator, used for starttime and endtime parameters.

Messages

badType:
The input must be a string (not a %(type)s: %(value)r)
empty:
Please enter a value
noneType:
The input must be a string (not None)
number:
Please enter a number
tooHigh:
Please enter a number that is %(max)s or smaller
tooLow:
Please enter a number that is %(min)s or greater
declarative_count = 54
if_empty = None
if_missing = None
class buildapi.controllers.validators.WaittimesSchema(*args, **kw)[source]

Bases: buildapi.controllers.validators.ReportSchema

Wait Times Report Schema.

Messages

badDictType:
The input must be dict-like (not a %(type)s: %(value)r)
badType:
The input must be a string (not a %(type)s: %(value)r)
empty:
Please enter a value
missingValue:
Missing value
noneType:
The input must be a string (not None)
notExpected:
The input field %(name)s was not expected.
chained_validators = [<DateCompare object 73>, <DateInit object 74>, <RequestIdValidator object 75>, <IntSizeInit object 87>]
declarative_count = 88
fields = {'mpb': <Int object 85 if_empty=15 if_missing=15 min=0>, 'format': <FormatValidator object 69 list=('html', 'json', 'chart')>, 'int_size': <IntervalValidator object 82>, 'num': <NumberTypeValidator object 84>, 'starttime': <UnixtimestampValidator object 71>, 'maxb': <Int object 86 if_empty=120 if_missing=120 min=0>, 'endtime': <UnixtimestampValidator object 72>, 'tqx': <String object 70 if_empty='' if_missing=''>, 'pool': <PoolValidator object 83>}
pre_validators = []

Module contents