def app_build_test():
    if request.method == api.post:
        logging.info(request.form)

        try:
            form = request.form
            build_type = validate_field(form["build_type"])
            index = validate_field(form["id"])
        except BaseError as e:
            traceback.print_exc()
            error_response = e.generate_error()
            logging.error(error_response)
            return error_response

        # Variables for database
        app_db = ApplicationRepository(config.DATA_URL)
        theme_db = theme_rep.ThemeRepository(config.DATA_URL)

        application = app_db.get_app_by_id(index)  # App DICT from DB
        theme = theme_db.get_theme_by_hash(application.theme)  # Theme from DB

        res_man = ResourceManager(config.RESOURCE_PATH, config.TEMP_PATH)
        try:
            res_valid = res_man.validate_resources(application.bundle)
        except BaseError as e:
            traceback.print_exc()
            error_response = e.generate_error()
            logging.error(error_response)
            return error_response

        if res_valid:
            build_rep = BuildRepository(config.DATA_URL)
            active_builds_count = build_rep.get_active_builds_count() + 1
            build = build_helper.generate_build(form=form,
                                                app_id=application.app_id,
                                                build_type=build_type,
                                                theme_id=theme.id,
                                                priority=active_builds_count)
            build_rep.create_build(build)

        application.status = Application.STATUS_WAITING
        app_db.update_app(application)

    return BuildAction.create_action_build(action=BaseAction.REDIRECT_ACTION,
                                           subcode=BuildAction.BUILD_CREATED,
                                           data=BuildAction.data_created_build(
                                               api.get_build_info))
def app_build_test():
    if request.method == api.post:
        logging.info(request.form)

        try:
            form = request.form
            build_id = validate_field(form["build_id"])
            from_priority = validate_field(form["from_priority"])
            to_priority = validate_field(form["to_priority"])

            build_rep = BuildRepository(config.DATA_URL)
            builds = build_rep.get_active_desc_priority()

        except BaseError as e:
            traceback.print_exc()
            error_response = e.generate_error()
            logging.error(error_response)
            return error_response

    return ""
def build_history():
    build_rep = BuildRepository(config.DATA_URL)
    builds = build_rep.get_complete_builds()
    return render_template("build-list.html", builds=builds)
def build_info(build_id):
    build_rep = BuildRepository(config.DATA_URL)
    build = build_rep.get_build_by_id(build_id)
    return render_template("build-info.html", build=build)
def build_list():
    build_rep = BuildRepository(config.DATA_URL)
    builds = build_rep.get_active_asc_priority()
    return render_template("build-list.html", builds=builds)