[Grok-dev] an application installation script?
faassen at startifact.com
Fri Oct 5 05:13:57 EDT 2007
Some of us have done some more thinking about the application
installation concerns voiced in the Admin UI discussions.
We have two different scenarios:
For deployment a pretty strong case can be made that in some cases you'd
not want people to go to the web UI at all to install an application. Of
course, this is mostly from a *nix perspective - on Windows for instance
people might very well prefer to install an application by clicking on a UI.
For development the case seems less strong. We've heard Philipp report
that this is confusing for beginners. I hadn't noticed this in the Grok
tutorial I gave and others don't seem to have noticed this either.
One feature that is currently missing is the way to configure a
particular application to act as the 'root', so that no further virtual
hosting configuration is needed. This feature would be useful during
deployment in particular.
This feature could be triggered from the Grok UI, but that won't help in
some deployment scenarios.
So let's sketch out a design:
* the ZODB knows which applications are installed
* the ZODB can be configured to make one application the traversal root.
* there is a UI to configure this. For deployment, it should be possible
not to install the UI.
* there is also a command-line tool to configure this. This can be used
to talk to Grok (perhaps by using XML-RPC or REST, or perhaps by
mounting the ZODB directly) and set up applications and the root, or
also to remove applications or 'de-root' the root.
The deployment installation scenario would be:
* run buildout
* a tool has been generated in 'bin'. Doing "bin/groksetup foo" or
whatever would set up application "foo" as the default root. (details to
be worked out. This is a command-line UI issue).
* we could research whether this tool could be made to run as the last
buildout step (and what would happen if you ran buildout multiple times).
There is some benefit to letting such installation be an explicit step.
I think this would be okay for sysadmins. It might be a problem if this
is also for newbies.
More information about the Grok-dev