注意:现阶段不确定这是否属于服务器故障...请根据需要移动!
我正在开发一个拥有自己的包管理软件的项目,并且已经到了需要一个集中且简单的机制来在主存储库中创建新包的阶段。
以下是我的要求:
- 前端 Web UI 允许上传 tarball。这些 tarball 包含一个已经根据我们的“包构建系统”明确定义的目录布局,并将在上传和批准后构建(取决于用户权限,稍后讨论)。
- 包将具有可搜索的元数据,并显示在 Web 用户界面中 - 要了解我的意思,请参阅 Ubuntu 的软件包站点。
- 具有不同权限的用户级别:“标准”可以上传需要审核的包,“开发人员”可以上传无需审核的包,“管理员”可以上传无需审核的包并对“标准”用户上传的包执行审核任务。
理想情况下,将使用诸如 buildbot 之类的集成来进行实际的包构建。这样用户就可以看到包构建的结果,而我们作为开发人员可以看到回归的图形表示(使用 builbot 的 Web UI)。
我不确定是否存在这样的东西,因为找出在该领域搜索的关键字非常困难。我正在考虑修改 bugzilla 或类似的东西来获得所需的行为,但如果更有针对性地针对我想做的事情已经存在,那就容易多了。 PHP + mysql 比其他解决方案更受青睐,但目前我并不太挑剔。
如果答案是“不存在,请编写自己的” - 没关系。我只是想确保在我开始研究这样的事情之前,不存在足够相似的东西,可以对其进行修改以满足这些要求。
NOTE: Unsure if this belongs on Server Fault at this stage... please move as necessary!
I'm working on a project that has its own package management software and have come to a stage where I need a centralised and simple mechanism for creating new packages in a master repository.
The following are my requirements:
- Front-facing web UI allows a tarball to be uploaded. These tarballs contain a directory layout already well-defined with respect to our "package build system", and would be built after upload and approval (depending on user privileges, discussed later).
- Packages will have metadata that should be searchable, and is displayed in a web user interface - to get an idea of what I mean, see Ubuntu's package site.
- User levels with different permissions: "standard" can upload potential packages to be moderated, "developer" can upload packages without moderation, "administrator" can upload packages without moderation and perform moderation tasks on packages uploaded by "standard" users.
Ideally, something like buildbot integration for actual package builds would be used. This way users could see the results of package builds, and we as developers can see graphical representations of regressions (using builbot's web UI).
I'm uncertain if something like this exists if only because figuring out keywords to search for in this area is very difficult. I was thinking about maybe modifying bugzilla or something like that to get the required behaviour, but if something more targeted to what I want to do already exists it would be much easier. PHP + mysql is preferred over other solutions, but I'm not overly picky at the moment.
If the answer is "none exists, write your own" - that's okay. I just want to make certain nothing exists that's similar enough that it could be modified to suit these requirements before I start working on such a thing.
发布评论
评论(1)
您可能需要结合 PEAR 进行包管理.net/package/PEAR_Frontend_Web/" rel="nofollow">PEAR_Frontend_Web 用于软件包安装以及用于软件包上传和分发的 PEAR 通道服务器:
You may want to look at PEAR for package management in combination with PEAR_Frontend_Web for package installation and a PEAR channel server for package upload and distribution: