Fix bugs, mostly related to date formatting.

This commit is contained in:
jakedt 2014-03-17 13:10:12 -04:00
parent ddf5f2053c
commit 3542a520f5
11 changed files with 42 additions and 40 deletions

View file

@ -7,8 +7,9 @@ from flask.ext.restful import abort
from app import app
from endpoints.api import (RepositoryParamResource, parse_args, query_param, nickname, resource,
require_repo_read, require_repo_write, validate_json_request,
ApiResource, internal_only)
ApiResource, internal_only, format_date)
from endpoints.common import start_build
from endpoints.trigger import BuildTrigger
from data import model
from auth.permissions import ModifyRepositoryPermission
@ -18,14 +19,28 @@ user_files = app.config['USERFILES']
build_logs = app.config['BUILDLOGS']
def trigger_view(trigger):
if trigger and trigger.uuid:
config_dict = json.loads(trigger.config)
build_trigger = BuildTrigger.get_trigger_for_service(trigger.service.name)
return {
'service': trigger.service.name,
'config': config_dict,
'id': trigger.uuid,
'connected_user': trigger.connected_user.username,
'is_active': build_trigger.is_active(config_dict)
}
return None
def build_status_view(build_obj, can_write=False):
status = build_logs.get_status(build_obj.uuid)
logger.debug('Can write: %s job_config: %s', can_write, build_obj.job_config)
build_obj.job_config = None
resp = {
'id': build_obj.uuid,
'phase': build_obj.phase,
'started': build_obj.started,
'started': format_date(build_obj.started),
'display_name': build_obj.display_name,
'status': status,
'job_config': json.loads(build_obj.job_config) if can_write else None,
@ -33,8 +48,9 @@ def build_status_view(build_obj, can_write=False):
'trigger': trigger_view(build_obj.trigger),
'resource_key': build_obj.resource_key,
}
if can_write:
resp['archive_url'] = user_files.get_file_url(build.resource_key)
resp['archive_url'] = user_files.get_file_url(build_obj.resource_key)
return resp
@ -63,9 +79,9 @@ class RepositoryBuildList(RepositoryParamResource):
},
}
@require_repo_read
@parse_args
@query_param('limit', 'The maximum number of builds to return', type=int, default=5)
@require_repo_read
@nickname('getRepoBuilds')
def get(self, args, namespace, repository):
""" Get the list of repository builds. """