def process_save_package(copr, source_type_text, package_name, view, view_method, url_on_success): form = forms.get_package_form_cls_by_source_type_text(source_type_text)() if "reset" in flask.request.form: try: package = PackagesLogic.get(copr.main_dir.id, package_name)[0] except IndexError: flask.flash( "Package {package_name} does not exist in copr_dir {copr_dir}." .format(package_name, copr.main_dir.full_name)) return flask.redirect(url_on_success) # should be url_on_fail try: PackagesLogic.reset_package(flask.g.user, package) db.session.commit() except InsufficientRightsException as e: flask.flash(str(e)) return flask.redirect(url_on_success) # should be url_on_fail flask.flash("Package default source successfully reset.") return flask.redirect(url_on_success) if form.validate_on_submit(): try: if package_name: package = PackagesLogic.get(copr.main_dir.id, package_name)[0] else: package = PackagesLogic.add(flask.app.g.user, copr.main_dir, form.package_name.data) package.source_type = helpers.BuildSourceEnum(source_type_text) package.webhook_rebuild = form.webhook_rebuild.data package.source_json = form.source_json package.chroot_blacklist_raw = form.chroot_blacklist.data package.max_builds = form.max_builds.data db.session.add(package) db.session.commit() except (InsufficientRightsException, IndexError) as e: db.session.rollback() flask.flash(str(e), "error") else: flask.flash( "Package successfully saved" if package_name else "New package has been created.", "success") return flask.redirect(url_on_success) kwargs = { "coprname": copr.name, "package_name": package_name, "source_type_text": source_type_text, "form": form, } kwargs.update({"group_name": copr.group.name} if copr. is_a_group_project else {"username": copr.user.name}) return view_method(**kwargs)
def package_reset(): copr = get_copr() form = forms.BasePackageForm() try: package = PackagesLogic.get(copr.main_dir.id, form.package_name.data)[0] except IndexError: raise ObjectNotFound("No package with name {name} in copr {copr}" .format(name=form.package_name.data, copr=copr.name)) PackagesLogic.reset_package(flask.g.user, package) db.session.commit() return flask.jsonify(to_dict(package))
def process_save_package(copr, source_type_text, package_name, view, view_method, url_on_success): form = forms.get_package_form_cls_by_source_type_text(source_type_text)() if "reset" in flask.request.form: try: package = PackagesLogic.get(copr.id, package_name)[0] except IndexError: flask.flash("Package {package_name} does not exist in copr {copr}.".format(package_name, copr.full_name)) return flask.redirect(url_on_success) # should be url_on_fail try: PackagesLogic.reset_package(flask.g.user, package) db.session.commit() except InsufficientRightsException as e: flask.flash(str(e)) return flask.redirect(url_on_success) # should be url_on_fail flask.flash("Package default source successfully reset.") return flask.redirect(url_on_success) if form.validate_on_submit(): try: if package_name: package = PackagesLogic.get(copr.id, package_name)[0] else: package = PackagesLogic.add(flask.app.g.user, copr, form.package_name.data) package.source_type = helpers.BuildSourceEnum(source_type_text) package.webhook_rebuild = form.webhook_rebuild.data package.source_json = form.source_json db.session.add(package) db.session.commit() except (InsufficientRightsException, IndexError) as e: db.session.rollback() flask.flash(str(e), "error") else: flask.flash("Package successfully saved" if package_name else "New package has been created.") return flask.redirect(url_on_success) kwargs = { "coprname": copr.name, "package_name": package_name, "source_type_text": source_type_text, "form": form, } kwargs.update({"group_name": copr.group.name} if copr.is_a_group_project else {"username": copr.user.name}) return view_method(**kwargs)
def copr_reset_package(copr, package_name): try: package = PackagesLogic.get(copr.id, package_name)[0] except IndexError: raise LegacyApiError("No package with name {name} in copr {copr}".format(name=package_name, copr=copr.name)) try: PackagesLogic.reset_package(flask.g.user, package) db.session.commit() except InsufficientRightsException as e: raise LegacyApiError(str(e)) return flask.jsonify({ "output": "ok", "message": "Package's default source was successfully reseted.", 'package': package.to_dict(), })
def copr_reset_package(copr, package_name): try: package = PackagesLogic.get(copr.main_dir.id, package_name)[0] except IndexError: raise LegacyApiError( "No package with name {name} in copr {copr}".format( name=package_name, copr=copr.name)) try: PackagesLogic.reset_package(flask.g.user, package) db.session.commit() except InsufficientRightsException as e: raise LegacyApiError(str(e)) return flask.jsonify({ "output": "ok", "message": "Package's default source was successfully reseted.", 'package': package.to_dict(), })