Package: wnpp
Severity: wishlist
Owner: Roland Mas <[email protected]>
X-Debbugs-Cc: [email protected]

* Package name    : jenny
  Version         : 1.0.3
  Upstream Contact: Roland Mas <[email protected]>
* URL             : https://salsa.debian.org/debian/jenny
* License         : AGPLv3+
  Programming Lang: Python
  Description     : Jenny, an APT repository manager


Hi everyone,

As part of the development and publication process for Scibian, a Debian
derivative used for scientific computing at EDF, we were in need of an APT
repository manager that would be somewhere between mini-dinstall/reprepro and
the full dak suite. For years we've used wrapper scripts around reprepro, but
it became increasingly unwieldy as our needs progressed, so we set out to
develop a replacement, using Python/Flask and Aptly as the backend.

We'd like to contribute it to the general public, because we believe it's
generic enough to accomodate various workflows, simple enough to be installed
without huge sets of dependencies, and generally useful enough to be worth it.
Also, contributions welcome :-)

For some reason, including shared love for the Monty Python, we initially
called it Brian; but when it came to going public, Brian was already taken, so
we switched to Jenny, the sister of Brian. I just pushed the current code to
Salsa, where the renaming hasn't taken place yet.

Existing features:
- Handles mirroring of external sources into local mirrors
- Handles local repositories
- Handles several environments for each mirror/repository (can be used for
unstable/testing/stable workflows, or dev/iq/prod)
- Handles snapshots
- Web+CLI UI to list the contents of a mirror/repository
- Web+CLI UI to compare the state of a mirror/repository across environments or
snapshots
- Web+CLI UI to migrate packages across environments
- Web UI to migrate packages across environments and mirrors
- Web+CLI UI to delete packages from repositories
- Automated generation of consistent APT repositories, where each APT
repository can contain a specific set of mirrors/repositories/environments
- Allows uploading of packages via an incoming folder or via HTTP uploads

Known missing features:
- Authentication and access control
- Scriptability or API (for automated migrations)
- Unit tests + a full test suite

Implementation details: it's written in Python/Flask, using Aptly as the
backend.

Reply via email to