Add ability for triggers to be disabled
Will be used in the followup commit to automatically disable broken triggers
This commit is contained in:
parent
1e54a4d9e9
commit
c35eec0615
18 changed files with 358 additions and 37 deletions
|
@ -25,10 +25,22 @@ class MaximumBuildsQueuedException(Exception):
|
|||
pass
|
||||
|
||||
|
||||
class BuildTriggerDisabledException(Exception):
|
||||
"""
|
||||
This exception is raised when a build is required, but the build trigger has been disabled.
|
||||
"""
|
||||
pass
|
||||
|
||||
|
||||
def start_build(repository, prepared_build, pull_robot_name=None):
|
||||
# Ensure that builds are only run in image repositories.
|
||||
if repository.kind.name != 'image':
|
||||
raise Exception('Attempt to start a build for application repository %s' % repository.id)
|
||||
|
||||
# Ensure that disabled triggers are not run.
|
||||
if prepared_build.trigger is not None and not prepared_build.trigger.enabled:
|
||||
raise BuildTriggerDisabledException
|
||||
|
||||
if repository.namespace_user.maximum_queued_builds_count is not None:
|
||||
queue_item_canonical_name = [repository.namespace_user.username]
|
||||
alive_builds = dockerfile_build_queue.num_alive_jobs(queue_item_canonical_name)
|
||||
|
|
Reference in a new issue