If there's environment drift in Whimsy VM versus Whimsy Docker, could
we deploy Whimsy as a container instead? Make the Whimsy VM a
container host, that sort of thing. Decouples our versions of Apache,
Ruby, etc., from the underlying OS.

On Tue, Apr 26, 2022 at 10:10 AM sebb <seb...@gmail.com> wrote:
>
> On Tue, 26 Apr 2022 at 16:03, Sam Ruby <ru...@intertwingly.net> wrote:
> >
> > On Tue, Apr 26, 2022 at 10:27 AM sebb <seb...@gmail.com> wrote:
> > >
> > > On Tue, 26 Apr 2022 at 14:53, Sam Ruby <ru...@intertwingly.net> wrote:
> > > >
> > > > On Tue, Apr 26, 2022 at 9:29 AM sebb <seb...@gmail.com> wrote:
> > > > >
> > > > > There are a lot of older versions of Gems around - maybe time to do a 
> > > > > cleanup?
> > > >
> > > > It would take a bit of refactoring, but there is code in the Rakefile
> > > > that might be useful.  On my ubuntu machine, I need to prefix gem
> > > > install commands with `sudo` and having `rake udpate` iterate through
> > > > the gemfiles and prompting me many times grew old fast so I added a
> > > > check to see if Bundler.bundle_path.writable? and if not I would build
> > > > a single gemfile that collected up all the dependencies.  Having a
> > > > 'rake gem:clean' or equivalent task that would do this followed
> > > > immediately by an update might be useful.  The update is required as
> > > > there are rare cases where different apps use different gems (until
> > > > recently, active_support required an old version of tzinfo, for
> > > > example).
> > >
> > > I don't think that is the case at present.
> >
> > True, but it won't always be the case.
> >
> > > I just did a cleanup on the Docker build, and a subsequent update did
> > > not install anything.
> > >
> > > Is a separate task needed?
> > > Why not just always do a cleanup just before an update?
> >
> > Routinely uninstalling a gem that is still needed (like was the case
> > with the tzinfo gem) will likely cause user visible failures.
>
> If it is done just before an update then the time window during which
> the required gem version is missing should be quite short.
>
> But if that is unacceptable I guess it would be possible to parse the
> versions installed by the update process and work out which others are
> not needed.
>
> > > The update might then introduce new versions, but next time around
> > > they should be cleaned up.
> > >
> > > > Of course, all this will be cleaned up when infra supports Ubuntu
> > > > 22.04 and we move to whimsy-vm7.
> > >
> > > That will result in an initial cleanup, but versions will continue to
> > > build up over time, so cleanup will still be needed.
> > >
> > > > - Sam Ruby
> >
> > - Sam Ruby

Reply via email to