On Tue, Feb 26, 2019 at 5:43 PM Ryan Lerch rlerch@redhat.com wrote:
On Wed, 27 Feb 2019 at 05:39, Clement Verna cverna@fedoraproject.org wrote:
Hi all,
fedora-packages [0] code base is showing its age. The code base and the technology stack (Turbogears2 [1] web framework and the Moksha [2] middleware) is currently not ready for Python3 and I am not planning to do the work required to make it Python3 compatible, so the application will stop working when Fedora 29 is EOL.
In order to keep the service running, I have started a Proof Of Concept (fedora-search [3]) to replace the backend of the application. Fedora-search would be a REST API service offering full test search API. Such a service would then be available for other application to use, fedora-packages would then become a frontend only application using the service provided by fedora-search.
While the POC shows that this is a viable solution, I don't think that we should be proceeding that way, for the simple reason that this add yet another code base to maintain, I think we should use this opportunity to consider using Elasticsearch instead of maintaining our own "search engine".
I think that Elasticsearch offers quite a few advantages :
- Powerful Query language
- Python bindings
- Javascript bindings
- Can be deployed in our infrastructure or used as a service
- Can be useful for other applications ( docs.fp.o, pagure, ??)
So what is the general feeling about using Elasticsearch in our infrastructure ? Should we look at deploying a cluster in our infra / Should we approach the Council to see if we can get founding to have this service hosted by Elastic ?
Thanks Clément
From an information point of view, the package-centric view of Fedora-packages is quite similar to the pagure dist-git. Would it worth investgating merging the front-end functionality of packages (lists of builds, bugs, updates, etc) into pagure dist-git, and retiring the Fedora packages front end?
How would you propose we'd allow people to search by binary packages and seeing contents, changelog, and seeing which versions are shipped in releases?
I don't think it would be a good idea to merge the two views, because it really doesn't make this any easier. The package search is a user-focused view into the package collection, and is a helpful reference (when it works!). I think it still serves a purpose to have a dedicated frontend.