On Jun 21, 2009, at 7:53 AM, Niels Mayer wrote:
How about having an entire site's state
snapshotted as a release or
branch (in subversion). You could then (1) fetch the next "site
release tag", (2) xml-transform all markup, (3) build the associated
xml documents, (4) create the package.xml manifest, (5) 'zip/jar'
it up as a Xar, then (6) import via LargeXARImportScriptSnippet ---
in "one-click" have the entire site (or staging server) upgraded to
a new release.
Re state snapshot of versions we want to do this but with the new
model/storage using JCR. See
http://dev.xwiki.org/xwiki/bin/view/Design/XWikiModel20
I don't think this is related to the extension manager which role
should be to import/export XARs. Whether the XAR is built from SVN or
some other mechanism is independent IMO.
One should also be able to go the other direction --
have an
existing Xwiki site, and a Space.Doc>filename mapping so that an
existing site/package/or/space can be snapshotted into subversion,
and saved as a new branch. I would imagine the application manager
would be the component which constructs the mappings from Space.Doc-
> svn filename from the user's entries.
Again for me this is about implementing a storage based on SVN. When
we have JCR support all we'd need is a JCR implementation for SVN (I
looked some time ago and couldn't find one though).
People preferring to edit in richer editing
environments may prefer
this because they can use their favorite syntax highlighting and
built in revision-control integration. (i prefer xemacs and various
extensions that allow it to save or load snapshots from a variety of
revision control systems, including subversion ). By saving the non-
Xml transformed HTML data into the revision control system, this
becomes possible -- do all the transforms and packaging on-the-fly
as part of the xar construction and importing process.
One could use this approach to easily snapshot a release from a
development server, move it to a production server, make any fixes
to the current "branch" and when ready to release, snapshot that
branch and move to the "live server."
Finally, it wouldn't hurt to have an extra "backup" that sensibly
snapshots the state of multiple xwiki subcomponents comprising a
package or release. Often the "granularity" of changes saved in
Xwiki's history (whch is great to have, I'm not complaining) is too
"fine" -- especially if you're "rapid prototyping" ... and
there's
no way to specify that revision 743 of file #1 corresponds to
revision 321 of file #2, called from #1....
Speaking of subversion... FYI, Karl Fogel's employment interview at
Collabnet happened at my house in SF, back when I lived there and
worked there (ca 2000 employee# < 10). My cat decided to get stuck
on the neighbor's balcony immediately before the interview, and Karl
found her loud meowling annoying enough that he interrupted the
interview, climbed up the tree onto the 2ond story balcony (given
the slope of the street, it was > 3 stories), and successfully
rescued the cat, then completed the interview... He got the job, and
I called the fire department to cancel the cat-rescue.... :-)
nice :)
Thanks
-Vincent
Niels
http://nielsmayer.com
On Sat, Jun 20, 2009 at 3:34 AM, Vincent Massol <vincent(a)massol.net>
wrote:
Note that I've also started putting ideas on
http://dev.xwiki.org/xwiki/bin/view/Design/ApplicationManager
It's not quite ready to be proposed officially yet (I'll send an email
when it is) but if you don't agree with something listed already
please let me know.
Thanks
-Vincent
On Jun 20, 2009, at 12:03 PM, Vincent Massol wrote:
Hi,
We need to start working on the new module to install wiki pages,
components, UI extensions, etc.
I propose to call it Extension Manager instead of the Application
Manager name we had used till now.
If ok I'll rename the existing page at
http://dev.xwiki.org/xwiki/bin/view/Design/ApplicationManager
Thanks
-Vincent
____________________________________