[dokuwiki] Re: status of farms?
- From: Christopher Smith <chris@xxxxxxxxxxxxx>
- To: dokuwiki@xxxxxxxxxxxxx
- Date: Sun, 25 Oct 2009 13:48:42 +0000
On 25 Oct 2009, at 12:07, Anika Henke wrote:
Hi list,
This weekend I finally tried some DokuWiki farming [http://www.dokuwiki.org/tips:farm2
] for the first time.
I was impressed at how easy it is. :)
This also leads to 2 questions:
1. What is the complete status of farming in DokuWiki?
I haven't tested it properly and only clicked randomly around a bit.
So, I was wondering if anyone with a better insight and more
experience could report on what still needs to be done?
As far as I could see, templates and plugins *per animal* are the
only things that are missing? Is there any unexpected behaviour left?
There might be issues with plugins that directly access themselves.
Do any plugins do this?
Apart from that I don't thinks so.
2. Whenever farming will be in a stable state, will it be
implemented into the core?
I think inc/preload.php should be part of the core. If no farm
directory is specified it would be no harm. And if it is specified
($conf['farmdir']?) anyone can add an animal by simply copying the
appropriate folders into the animal folder.
Preload makes farming possible/easier, its not the only use.
I really like the way Drupal handles animals!
For those of you not familiar with it: Drupal has one directory ('./
sites/') which contains
a) all non-core modules and themes (or in DokuWiki terms: plugins
and templates) which are shared across all animals (in 'sites/all').
b) all default config files and more (in 'sites/default').
c) all animals, each in its own directory in the form of
'domain.org' which contains the site-specific config files, themes
and modules!
See also http://drupal.org/getting-started/6/install/multi-site
AFAIK we are already half-way there. The "only" things missing are:
* a particular directory for non-core plugins and templates (this is
not important for farming, but I like it :) )
* animal-specific plugins and templates
I am wary of this. Plugins and templates are executable PHP and have
unrestricted access to the server (much like enabling php in a wiki).
I prefer a single repository of plugins/templates with per animal
enable/disable.
I implemented the handy and more flexible way Drupal handles its
farm directory into a preload.php, see http://www.dokuwiki.org/tips:farm2#variant_of_the_virtual_host_based_setup_like_multi-sites_with_drupal
So, my dream in one line: path_to_dokufarm/domain.org/conf|data|tpl|
plugins
Any thoughts?
I'm in favour of directory separation of default config from local
config. The config cascade allows this while also allowing the
current shared directory setup. You'll need to prevail on Andy to get
a change in the default setup. I did ask already ;-)
The things still missing are:
- farm management admin plugins.
-- create/remove animals.
-- restrict config settings by animal (equivalent to setting
local.protected, e.g. php=off)
-- restrict plugin availability by animal.
-- restrict template availability by animal.
- animal management admin plugin.
-- animal specific plugin page that allows enable/disable of plugins
available to animal
(there maybe other functions, iirc, we brainstormed on this back at
Froscon '08)
Once there are the farm plugins, I think it would be worthwhile to
have a farm enabled dokuwiki install version, which included those
plugins and preload.
- Chris
--
DokuWiki mailing list - more info at
http://wiki.splitbrain.org/wiki:mailinglist
Other related posts: