Migrating an existing Friki installation to release 2.1
Friki 2.1 includes some sweeping internal changes, including how it finds stored pages and page templates, and what it does with them. On the Friki-interest mailing list, someone asked about how best to migrate an old installation to the new software. This can be a bit tricky, especially if you have put effort into customizing the page templates.
With that in mind, here is a rough series of steps for migrating an old Friki installation:
download or build the new Friki war file.
temporarily rename it to something else (e.g. Friki211.war)
tell it the path to a fresh but writable directory. Friki will then configure and install all the new default values to this directory
stop the new web application, so you can tweak with the settings
copy all your old page files (and the "old" directory) from the previous installation to the newly created "pages" directory.
edit RecentChanges and ReadRequests using a text editor. Remove the lines starting with "content.prefix=" and "content.suffix="
copy all your old template files into the newly created "templates" directory
edit search.tpl and remove the <pre> and </pre> round @CONTENT@
edit edit.tpl and view.tpl and change "email@example.com@" to "firstname.lastname@example.org@"; if you want a "diff" link, add something like <a email@example.com@'>What's Changed?</a>
restart the new web application, and check that it works OK. Note that changes and logs generated by the old version will not look sensible. I suggest archiving them and then deleting them from the new installation.
When you are happy that it works, rename the war file back to "friki" and deploy it in your original context.
tell it the path to a the data directory you have just configured
That's all off the top of my head, so I have probably missed something. If anyone wants to follow these steps for me to see if they make sense, I'd love to hear the results so I can write it up for other users.
Grow your own food... or this tiny ad:
a bit of art, as a gift, that will fit in a stocking