raise tornado.web.HTTPError(400)
# Query database.
- packages = self.pakfire.packages.autocomplete(query, limit=8)
+ packages = self.backend.packages.autocomplete(query, limit=8)
res = {
"query" : query,
passphrase = self.get_argument("pass", None)
# Log in the user
- user = self.pakfire.users.auth(name, passphrase)
+ user = self.backend.users.auth(name, passphrase)
# If the login was unsuccessful
if not user:
class ActivationHandler(base.BaseHandler):
def get(self, _user):
- user = self.pakfire.users.get_by_name(_user)
+ user = self.backend.users.get_by_name(_user)
if not user:
raise tornado.web.HTTPError(404)
ns.update({
"backend" : self.backend,
- "bugtracker" : self.pakfire.bugzilla,
+ "bugtracker" : self.backend.bugzilla,
"hostname" : self.request.host,
"format_date" : self.format_date,
"format_size" : misc.format_size,
self.render(error_document, status_code=status_code,
status_message=status_message, exc_info=exc_info, tb=tb, **kwargs)
- @property
- def pakfire(self):
- return self.backend
-
class ApiBaseHandler(BaseHandler):
pass
class BuilderDetailHandler(base.BaseHandler):
def get(self, hostname):
- builder = self.pakfire.builders.get_by_name(hostname)
+ builder = self.backend.builders.get_by_name(hostname)
# Get running and pending jobs.
- jobs = self.pakfire.jobs.get_active(builder=builder)
+ jobs = self.backend.jobs.get_active(builder=builder)
jobs += builder.jobqueue
# Get log.
if not self.current_user.has_perm("maintain_mirrors"):
raise tornado.web.HTTPError(403, "User is not allowed to do this.")
- builder = self.pakfire.builders.get_by_name(hostname)
+ builder = self.backend.builders.get_by_name(hostname)
with self.db.transaction():
builder.description = self.get_argument("description", None)
class BuilderEditHandler(base.BaseHandler):
@tornado.web.authenticated
def get(self, hostname):
- builder = self.pakfire.builders.get_by_name(hostname)
+ builder = self.backend.builders.get_by_name(hostname)
if not builder:
raise tornado.web.HTTPError(404, "Builder not found")
@tornado.web.authenticated
def post(self, hostname):
- builder = self.pakfire.builders.get_by_name(hostname)
+ builder = self.backend.builders.get_by_name(hostname)
if not builder:
raise tornado.web.HTTPError(404, "Builder not found: %s" % hostname)
class BuilderRenewPassphraseHandler(base.BaseHandler):
@tornado.web.authenticated
def get(self, name):
- builder = self.pakfire.builders.get_by_name(name)
+ builder = self.backend.builders.get_by_name(name)
passphrase = builder.regenerate_passphrase()
class BuilderDeleteHandler(base.BaseHandler):
@tornado.web.authenticated
def get(self, name):
- builder = self.pakfire.builders.get_by_name(name)
+ builder = self.backend.builders.get_by_name(name)
if not builder:
raise tornado.web.HTTPError(404, "Builder not found: %s" % name)
@tornado.web.authenticated
def get(self, hostname):
- builder = self.pakfire.builders.get_by_name(hostname)
+ builder = self.backend.builders.get_by_name(hostname)
if not builder:
raise tornado.web.HTTPError(404, "Builder not found: %s" % hostname)
class BuildBaseHandler(base.BaseHandler):
def get_build(self, uuid):
- build = self.pakfire.builds.get_by_uuid(uuid)
+ build = self.backend.builds.get_by_uuid(uuid)
if not build:
raise tornado.web.HTTPError(404, "No such build: %s" % uuid)
class BuildBugsHandler(base.BaseHandler):
@tornado.web.authenticated
def get(self, uuid):
- build = self.pakfire.builds.get_by_uuid(uuid)
+ build = self.backend.builds.get_by_uuid(uuid)
if not build:
raise tornado.web.HTTPError(404, "No such build: %s" % uuid)
fixed_bugs = build.get_bugs()
open_bugs = []
- for bug in self.pakfire.bugzilla.get_bugs_from_component(build.pkg.name):
+ for bug in self.backend.bugzilla.get_bugs_from_component(build.pkg.name):
if bug in fixed_bugs:
continue
@tornado.web.authenticated
def post(self, uuid):
- build = self.pakfire.builds.get_by_uuid(uuid)
+ build = self.backend.builds.get_by_uuid(uuid)
if not build:
raise tornado.web.HTTPError(404, "No such build: %s" % uuid)
def get(self, user_name=None):
user = None
if user_name:
- user = self.pakfire.users.get_by_name(user_name)
+ user = self.backend.users.get_by_name(user_name)
limit = self.get_argument("limit", 10)
offset = self.get_argument("offset", 0)
# Try to get one more comment than requested and check if there
# is a next page that it to be shown.
- comments = self.pakfire.builds.get_comments(limit=limit + 1,
+ comments = self.backend.builds.get_comments(limit=limit + 1,
offset=offset, user=user)
# Set markers for next and prev pages.
class BuildStateHandler(base.BaseHandler):
def get(self, uuid):
- build = self.pakfire.builds.get_by_uuid(uuid)
+ build = self.backend.builds.get_by_uuid(uuid)
if not build:
raise tornado.web.HTTPError(404, "No such build: %s" % uuid)
@tornado.web.authenticated
def post(self, uuid):
- build = self.pakfire.builds.get_by_uuid(uuid)
+ build = self.backend.builds.get_by_uuid(uuid)
if not build:
raise tornado.web.HTTPError(404, "No such build: %s" % uuid)
class BuildDetailCommentHandler(base.BaseHandler):
@tornado.web.authenticated
def post(self, uuid):
- build = self.pakfire.builds.get_by_uuid(uuid)
+ build = self.backend.builds.get_by_uuid(uuid)
if not build:
raise tornado.web.HTTPError(404, "Build not found")
class BuildManageHandler(base.BaseHandler):
@tornado.web.authenticated
def get(self, uuid):
- build = self.pakfire.builds.get_by_uuid(uuid)
+ build = self.backend.builds.get_by_uuid(uuid)
if not build:
raise tornado.web.HTTPError(404, "Build not found: %s" % uuid)
@tornado.web.authenticated
def post(self, uuid):
- build = self.pakfire.builds.get_by_uuid(uuid)
+ build = self.backend.builds.get_by_uuid(uuid)
if not build:
raise tornado.web.HTTPError(404, "Build not found: %s" % uuid)
class BuildPriorityHandler(base.BaseHandler):
@tornado.web.authenticated
def get(self, uuid):
- build = self.pakfire.builds.get_by_uuid(uuid)
+ build = self.backend.builds.get_by_uuid(uuid)
if not build:
raise tornado.web.HTTPError(404, "Build not found")
@tornado.web.authenticated
def post(self, uuid):
- build = self.pakfire.builds.get_by_uuid(uuid)
+ build = self.backend.builds.get_by_uuid(uuid)
if not build:
raise tornado.web.HTTPError(404, "Build not found")
class BuildWatchersHandler(base.BaseHandler):
def get(self, uuid):
- build = self.pakfire.builds.get_by_uuid(uuid)
+ build = self.backend.builds.get_by_uuid(uuid)
if not build:
raise tornado.web.HTTPError(404, "Build not found")
class BuildWatchersAddHandler(base.BaseHandler):
@tornado.web.authenticated
def get(self, uuid, error_msg=None):
- build = self.pakfire.builds.get_by_uuid(uuid)
+ build = self.backend.builds.get_by_uuid(uuid)
if not build:
raise tornado.web.HTTPError(404, "Build not found")
watchers = build.get_watchers()
self.render("builds-watchers-add.html", error_msg=error_msg,
- build=build, users=self.pakfire.users, watchers=watchers)
+ build=build, users=self.backend.users, watchers=watchers)
@tornado.web.authenticated
def post(self, uuid):
- build = self.pakfire.builds.get_by_uuid(uuid)
+ build = self.backend.builds.get_by_uuid(uuid)
if not build:
raise tornado.web.HTTPError(404, "Build not found")
user_id = self.get_argument("user_id", self.current_user.id)
assert user_id
- user = self.pakfire.users.get_by_id(user_id)
+ user = self.backend.users.get_by_id(user_id)
if not user:
_ = self.locale.translate
error_msg = _("User not found.")
builder = self.get_argument("builder", None)
state = self.get_argument("state", None)
- builds = self.pakfire.builds.get_latest(state=state, builder=builder,
+ builds = self.backend.builds.get_latest(state=state, builder=builder,
limit=25)
self.render("build-list.html", builds=builds)
class BuildFilterHandler(base.BaseHandler):
def get(self):
- builders = self.pakfire.builders.get_all()
- distros = self.pakfire.distros.get_all()
+ builders = self.backend.builders.get_all()
+ distros = self.backend.distros.get_all()
self.render("build-filter.html", builders=builders, distros=distros)
class DistributionDetailHandler(base.BaseHandler):
def get(self, name):
- distro = self.pakfire.distros.get_by_name(name)
+ distro = self.backend.distros.get_by_name(name)
if not distro:
raise tornado.web.HTTPError(404, "Distro not found")
class DistributionEditHandler(base.BaseHandler):
def prepare(self):
- self.sources = self.pakfire.sources.get_all()
+ self.sources = self.backend.sources.get_all()
@tornado.web.authenticated
def get(self, name):
- distro = self.pakfire.distros.get_by_name(name)
+ distro = self.backend.distros.get_by_name(name)
if not distro:
raise tornado.web.HTTPError(404, "Distro not found")
@tornado.web.authenticated
def post(self, name):
- distro = self.pakfire.distros.get_by_name(name)
+ distro = self.backend.distros.get_by_name(name)
if not distro:
raise tornado.web.HTTPError(404, "Distro not found")
class DistroSourceDetailHandler(base.BaseHandler):
def get(self, distro_ident, source_ident):
- distro = self.pakfire.distros.get_by_name(distro_ident)
+ distro = self.backend.distros.get_by_name(distro_ident)
if not distro:
raise tornado.web.HTTPError(404, "Distro not found")
class DistroSourceCommitsHandler(base.BaseHandler):
def get(self, distro_ident, source_ident):
- distro = self.pakfire.distros.get_by_name(distro_ident)
+ distro = self.backend.distros.get_by_name(distro_ident)
if not distro:
raise tornado.web.HTTPError(404, "Distro not found")
class DistroSourceCommitDetailHandler(base.BaseHandler):
def get(self, distro_ident, source_ident, commit_ident):
- distro = self.pakfire.distros.get_by_name(distro_ident)
+ distro = self.backend.distros.get_by_name(distro_ident)
if not distro:
raise tornado.web.HTTPError(404, "Distribution '%s' not found" % distro_ident)
class DistroSourceCommitResetHandler(base.BaseHandler):
@tornado.web.authenticated
def get(self, distro_ident, source_ident, commit_ident):
- distro = self.pakfire.distros.get_by_name(distro_ident)
+ distro = self.backend.distros.get_by_name(distro_ident)
if not distro:
raise tornado.web.HTTPError(404, "Distribution '%s' not found" % distro_ident)
class DistroUpdateCreateHandler(base.BaseHandler):
def get(self, distro_ident):
- distro = self.pakfire.distros.get_by_name(distro_ident)
+ distro = self.backend.distros.get_by_name(distro_ident)
if not distro:
raise tornado.web.HTTPError(404, "Distribution '%s' not found" % distro_ident)
# Get all preset builds.
builds = []
for build in self.get_arguments("builds", []):
- build = self.pakfire.builds.get_by_uuid(build)
+ build = self.backend.builds.get_by_uuid(build)
builds.append(build)
builds.sort()
class DistroUpdateDetailHandler(base.BaseHandler):
def get(self, distro_ident, year, num):
- distro = self.pakfire.distros.get_by_name(distro_ident)
+ distro = self.backend.distros.get_by_name(distro_ident)
if not distro:
raise tornado.web.HTTPError(404, "Distribution '%s' not found" % distro_ident)
# XXX currently unused
class SourceListHandler(base.BaseHandler):
def get(self):
- sources = self.pakfire.sources.get_all()
+ sources = self.backend.sources.get_all()
self.render("source-list.html", sources=sources)
class SourceDetailHandler(base.BaseHandler):
def get(self, id):
- source = self.pakfire.sources.get_by_id(id)
+ source = self.backend.sources.get_by_id(id)
self.render("source-detail.html", source=source)
class IndexHandler(base.BaseHandler):
def get(self):
- jobs = self.pakfire.jobs.get_active()
- jobs += self.pakfire.jobs.get_latest(age="24 hours", limit=5)
+ jobs = self.backend.jobs.get_active()
+ jobs += self.backend.jobs.get_latest(age="24 hours", limit=5)
# Updates
updates = []
active = True
for type in ("stable", "unstable", "testing"):
- u = self.pakfire.updates.get_latest(type=type)
+ u = self.backend.updates.get_latest(type=type)
if u:
updates.append((type, u, active))
active = False
class FileDetailHandler(base.BaseHandler):
def get(self, uuid):
- pkg, file = self.pakfire.packages.get_with_file_by_uuid(uuid)
+ pkg, file = self.backend.packages.get_with_file_by_uuid(uuid)
if not file:
raise tornado.web.HTTPError(404, "File not found")
class LogHandler(base.BaseHandler):
def get(self):
- self.render("log.html", log=self.pakfire.log)
+ self.render("log.html", log=self.backend.log)
class SessionsHandler(base.BaseHandler):
class RepositoryDetailHandler(base.BaseHandler):
def get(self, distro, repo):
- distro = self.pakfire.distros.get_by_name(distro)
+ distro = self.backend.distros.get_by_name(distro)
if not distro:
raise tornado.web.HTTPError(404)
class RepositoryEditHandler(base.BaseHandler):
@tornado.web.authenticated
def get(self, distro, repo):
- distro = self.pakfire.distros.get_by_name(distro)
+ distro = self.backend.distros.get_by_name(distro)
if not distro:
raise tornado.web.HTTPError(404)
class RepositoryConfHandler(base.BaseHandler):
def get(self, distro, repo):
- distro = self.pakfire.distros.get_by_name(distro)
+ distro = self.backend.distros.get_by_name(distro)
if not distro:
raise tornado.web.HTTPError(404)
class RepositoryMirrorlistHandler(base.BaseHandler):
def get(self, distro, repo):
- distro = self.pakfire.distros.get_by_name(distro)
+ distro = self.backend.distros.get_by_name(distro)
if not distro:
raise tornado.web.HTTPError(404)
action_id = self.get_argument("id")
- action = self.pakfire.repos.get_action_by_id(action_id)
+ action = self.backend.repos.get_action_by_id(action_id)
if not action:
raise tornado.web.HTTPError(400)
class JobDetailHandler(base.BaseHandler):
def get(self, uuid):
- job = self.pakfire.jobs.get_by_uuid(uuid)
+ job = self.backend.jobs.get_by_uuid(uuid)
if not job:
raise tornado.web.HTTPError(404, "No such job: %s" % job)
class JobBuildrootHandler(base.BaseHandler):
def get(self, uuid):
- job = self.pakfire.jobs.get_by_uuid(uuid)
+ job = self.backend.jobs.get_by_uuid(uuid)
if not job:
raise tornado.web.HTTPError(404, "Job not found: %s" % uuid)
type = self.get_argument("type")
assert type in self.allowed_types
- job = self.pakfire.jobs.get_by_uuid(uuid)
+ job = self.backend.jobs.get_by_uuid(uuid)
if not job:
raise tornado.web.HTTPError(404, "Job not found: %s" % uuid)
type = self.get_argument("type")
assert type in self.allowed_types
- job = self.pakfire.jobs.get_by_uuid(uuid)
+ job = self.backend.jobs.get_by_uuid(uuid)
if not job:
raise tornado.web.HTTPError(404, "Job not found: %s" % uuid)
class JobAbortHandler(base.BaseHandler):
def get_job(self, uuid):
- job = self.pakfire.jobs.get_by_uuid(uuid)
+ job = self.backend.jobs.get_by_uuid(uuid)
if not job:
raise tornado.web.HTTPError(404, "Job not found: %s" % uuid)
def post(self):
data = self.get_argument("data")
- key = self.pakfire.keys.create(data)
+ key = self.backend.keys.create(data)
assert key
self.redirect("/keys")
class KeysDeleteHandler(KeysActionHandler):
@tornado.web.authenticated
def get(self, fingerprint):
- key = self.pakfire.keys.get_by_fpr(fingerprint)
+ key = self.backend.keys.get_by_fpr(fingerprint)
if not key:
raise tornado.web.HTTPError(404, "Could not find key: %s" % fingerprint)
class KeysListHandler(base.BaseHandler):
def get(self):
- keys = self.pakfire.keys.get_all()
+ keys = self.backend.keys.get_all()
self.render("keys-list.html", keys=keys)
class KeysDownloadHandler(base.BaseHandler):
def get(self, fingerprint):
- key = self.pakfire.keys.get_by_fpr(fingerprint)
+ key = self.backend.keys.get_by_fpr(fingerprint)
if not key:
raise tornado.web.HTTPError(404, "Could not find key: %s" % fingerprint)
states = ["building", "stable", "testing"]
# Get all packages that fulfill the required parameters.
- pkgs = self.pakfire.packages.get_all_names(
+ pkgs = self.backend.packages.get_all_names(
user=self.current_user, states=states)
# Sort all packages in an array like "<first char>" --> [packages, ...]
class PackageNameHandler(base.BaseHandler):
def get(self, name):
- builds = self.pakfire.builds.get_active_builds(name)
+ builds = self.backend.builds.get_active_builds(name)
if not builds:
raise tornado.web.HTTPError(404, "Package '%s' was not found" % name)
latest_build = builds[0]
# Get the latest bugs from bugzilla.
- bugs = self.pakfire.bugzilla.get_bugs_from_component(name)
+ bugs = self.backend.bugzilla.get_bugs_from_component(name)
self.render("package-detail-list.html", name=name, builds=builds,
latest_build=latest_build, pkg=latest_build.pkg, bugs=bugs)
offset = self.get_argument("offset", 0)
limit = self.get_argument("limit", 10)
- scratch_builds = self.pakfire.builds.get_by_name(name, type="scratch",
+ scratch_builds = self.backend.builds.get_by_name(name, type="scratch",
limit=limit, offset=offset)
if scratch_builds:
latest_build = scratch_builds[0]
else:
- release_builds = self.pakfire.builds.get_by_name(name, type="release", limit=1)
+ release_builds = self.backend.builds.get_by_name(name, type="release", limit=1)
if not release_builds:
raise tornado.web.HTTPError(404, "Could not find any build with this name: %s" % name)
# Get one more build than requested to find out if there are more items
# to display (next button).
- builds = self.pakfire.builds.get_changelog(name, limit=limit + 1, offset=offset)
+ builds = self.backend.builds.get_changelog(name, limit=limit + 1, offset=offset)
if len(builds) >= limit:
have_next = True
class PackageDetailHandler(base.BaseHandler):
def get(self, uuid):
- pkg = self.pakfire.packages.get_by_uuid(uuid)
+ pkg = self.backend.packages.get_by_uuid(uuid)
if not pkg:
raise tornado.web.HTTPError(404, "Package not found: %s" % uuid)
@tornado.web.authenticated
def post(self, name, epoch, version, release):
- pkg = self.pakfire.packages.get_by_tuple(name, epoch, version, release)
+ pkg = self.backend.packages.get_by_tuple(name, epoch, version, release)
action = self.get_argument("action", None)
class PackagePropertiesHandler(base.BaseHandler):
@tornado.web.authenticated
def get(self, name):
- build = self.pakfire.builds.get_latest_by_name(name)
+ build = self.backend.builds.get_latest_by_name(name)
if not build:
raise tornado.web.HTTPError(404, "Package '%s' was not found" % name)
@tornado.web.authenticated
def post(self, name):
- build = self.pakfire.builds.get_latest_by_name(name)
+ build = self.backend.builds.get_latest_by_name(name)
if not build:
raise tornado.web.HTTPError(404, "Package '%s' was not found" % name)
class PackageFileDownloadHandler(base.BaseHandler):
def get_file(self, pkg_uuid, filename):
# Fetch package.
- pkg = self.pakfire.packages.get_by_uuid(pkg_uuid)
+ pkg = self.backend.packages.get_by_uuid(pkg_uuid)
if not pkg:
raise tornado.web.HTTPError(404, "Package not found: %s" % pkg_uuid)
class PackageBuildsTimesHandler(base.BaseHandler):
def get(self, name):
- latest_build = self.pakfire.builds.get_latest_by_name(name)
+ latest_build = self.backend.builds.get_latest_by_name(name)
# If no build with this name was found, we cannot go on.
if not latest_build:
raise tornado.web.HTTPError(404)
# Get the summary stats.
- build_times_summary = self.pakfire.builds.get_build_times_summary(name)
+ build_times_summary = self.backend.builds.get_build_times_summary(name)
self.render("packages/builds/times.html", pkg=latest_build.pkg,
build_times_summary=build_times_summary)
# Search for a matching object and redirect to it.
# Search in packages.
- pkg = self.pakfire.packages.get_by_uuid(pattern)
+ pkg = self.backend.packages.get_by_uuid(pattern)
if pkg:
self.redirect("/package/%s" % pkg.uuid)
return
# Search in builds.
- build = self.pakfire.builds.get_by_uuid(pattern)
+ build = self.backend.builds.get_by_uuid(pattern)
if build:
self.redirect("/build/%s" % build.uuid)
return
# Search in jobs.
- job = self.pakfire.jobs.get_by_uuid(pattern)
+ job = self.backend.jobs.get_by_uuid(pattern)
if job:
self.redirect("/job/%s" % job.uuid)
return
if pattern.startswith("/"):
# Do a file search.
- files = self.pakfire.packages.search_by_filename(pattern, limit=50)
+ files = self.backend.packages.search_by_filename(pattern, limit=50)
else:
# Make fulltext search in the packages.
- pkgs = self.pakfire.packages.search(pattern, limit=50)
+ pkgs = self.backend.packages.search(pattern, limit=50)
# Search for users.
- users = self.pakfire.users.search(pattern, limit=50)
+ users = self.backend.users.search(pattern, limit=50)
if len(pkgs) == 1 and not files and not users:
pkg = pkgs[0]
user = self.current_user
if name:
- user = self.pakfire.users.get_by_name(name)
+ user = self.backend.users.get_by_name(name)
if not user:
raise tornado.web.HTTPError(404, "User does not exist: %s" % name)
class UserActionHandler(base.BaseHandler):
def get_user(self, name):
- user = self.pakfire.users.get_by_name(name)
+ user = self.backend.users.get_by_name(name)
if not user:
raise tornado.web.HTTPError(404)
class UserEditHandler(base.BaseHandler):
@tornado.web.authenticated
def get(self, name):
- user = self.pakfire.users.get_by_name(name)
+ user = self.backend.users.get_by_name(name)
if not user:
raise tornado.web.HTTPError(404)
def post(self, name):
_ = self.locale.translate
- user = self.pakfire.users.get_by_name(name)
+ user = self.backend.users.get_by_name(name)
if not user:
raise tornado.web.HTTPError(404)
if name is None:
user = self.current_user
else:
- user = self.pakfire.users.get_by_name(name)
+ user = self.backend.users.get_by_name(name)
if not user:
raise tornado.web.HTTPError(404, "User not found: %s" % name)
# Get a list of the builds this user has built.
- builds = self.pakfire.builds.get_by_user(user)
+ builds = self.backend.builds.get_by_user(user)
self.render("user-profile-builds.html", user=user, builds=builds)