From: Michael Tremer Date: Tue, 11 Feb 2025 10:32:47 +0000 (+0000) Subject: releases: Fix publishing releases X-Git-Url: http://git.ipfire.org/gitweb/gitweb.cgi?a=commitdiff_plain;h=fa6355fab0e8709c711bb391be07548196997c69;p=pbs.git releases: Fix publishing releases Signed-off-by: Michael Tremer --- diff --git a/src/templates/distros/releases/publish.html b/src/templates/distros/releases/publish.html index 5cfda0e5..0d2b6b4e 100644 --- a/src/templates/distros/releases/publish.html +++ b/src/templates/distros/releases/publish.html @@ -1,6 +1,6 @@ -{% extends "../../modal.html" %} +{% extends "modal.html" %} -{% block title %}{{ release }} - {{ _("Publish") }}{% end block %} +{% block title %}{{ release }} - {{ _("Publish") }}{% endblock %} {% block breadcrumbs %} -{% end block %} +{% endblock %} {% block modal_title %}

{{ _("Publish Release") }}

{{ release }}
-{% end block %} +{% endblock %} {% block modal %}
- {% raw xsrf_form_html() %} + {{ xsrf_form_html() | safe }}

@@ -50,4 +50,4 @@

-{% end block %} +{% endblock %} diff --git a/src/web/distributions.py b/src/web/distributions.py index 08d15011..b15208f9 100644 --- a/src/web/distributions.py +++ b/src/web/distributions.py @@ -213,13 +213,13 @@ class ReleasesDeleteHandler(base.BaseHandler): class ReleasesPublishHandler(base.BaseHandler): @base.authenticated - def get(self, distro_slug, release_slug): - distro = self.backend.distros.get_by_slug(distro_slug) + async def get(self, distro_slug, release_slug): + distro = await self.backend.distros.get_by_slug(distro_slug) if not distro: raise tornado.web.HTTPError(404, "Could not find distro: %s" % distro_slug) # Fetch the release - release = distro.get_release(release_slug) + release = await distro.get_release(release_slug) if not release: raise tornado.web.HTTPError(404, "Could not find release %s" % release_slug) @@ -227,16 +227,16 @@ class ReleasesPublishHandler(base.BaseHandler): if not release.has_perm(self.current_user): raise tornado.web.HTTPError(403) - self.render("distros/releases/publish.html", release=release, distro=distro) + await self.render("distros/releases/publish.html", release=release, distro=distro) @base.authenticated async def post(self, distro_slug, release_slug): - distro = self.backend.distros.get_by_slug(distro_slug) + distro = await self.backend.distros.get_by_slug(distro_slug) if not distro: raise tornado.web.HTTPError(404, "Could not find distro: %s" % distro_slug) # Fetch the release - release = distro.get_release(release_slug) + release = await distro.get_release(release_slug) if not release: raise tornado.web.HTTPError(404, "Could not find release %s" % release_slug) @@ -244,7 +244,8 @@ class ReleasesPublishHandler(base.BaseHandler): if not release.has_perm(self.current_user): raise tornado.web.HTTPError(403) - with self.db.transaction(): + # Publish the release + async with await self.db.transaction(): await release.publish() # Redirect back to the release