[9245] in athena10
[Debathena] #1156: Entirely new thirdparty infrastructure
daemon@ATHENA.MIT.EDU (Debathena Trac)
Tue Jun 26 13:46:15 2012
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
From: "Debathena Trac" <debathena@MIT.EDU>
Cc: debathena@MIT.EDU
To: jdreed@MIT.EDU
Date: Tue, 26 Jun 2012 17:46:00 -0000
Reply-To:
Message-ID: <042.427cc63837d27e4391c2a3d3106dee5f@mit.edu>
Content-Transfer-Encoding: 8bit
#1156: Entirely new thirdparty infrastructure
----------------------------+-----------------------------
Reporter: jdreed | Owner:
Type: enhancement | Status: new
Priority: high | Milestone: Precise Release
Component: -- | Keywords:
Upstream bug: |
----------------------------+-----------------------------
We spend way too much time and effort on updating thirdparty, and have to
play stupid games to work around broken dependency resolvers, and the
whole thing is just too fragile. I propose a new design for thirdparty
that makes everyone's lives easier (where "everyone" is me and alexp), and
fixes #372:
Basically, we supply a list of packages (possibly separated into
dependencies and recommendations), but I think we can do away with those
concepts. This list can be a global list, or it can be per-distro.
debathena-thirdparty is a package that knows where to find these lists,
copies them locally, and iterates over the packages, apt-get installing
each one (presumably not in its postinst, but rather as a cron job, or a
trigger at the end of auto-update, or something). If a package fails, it
retries. After 3 consecutive failures, it whines, either via athinfo
(which we can add a new Nagios check for, or use update-status, or
something) or syslog, or whatever. When someone uninstalls thirdparty, we
can either remove those packages (again, failing if there are dependency
issues), or perhaps mark them as auto-installed or something?
Benefits:
- Changing the membership of thirdparty is as simple as editing a plain
text file, no rebuilds are necessary.
- We don't have to play stupid dependency games
- Removal of metapackages is far less likely.
- Fixes #372
- Installs possibly go faster as we can relegate this to firstboot or
something?
Cons:
- We're reverting to what are essentially control files. (Counterpoint:
They worked.)
- There's no longer a hard guarantee that all of thirdparty must be
installed for a machine to call itself cluster.
I'm fully aware that using APT is the Right(tm) way to do this. But it
causes more trouble than it's worth, IMHO.
--
Ticket URL: <http://athena10.mit.edu/trac/ticket/1156>
Debathena <http://debathena.mit.edu>
MIT Debathena Project