Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Design for Option #1: Property file based configuration

We'll implement option #1.

First an overview. We'll change implement option #1 by changing Roller so that it's database configuration comes from the Roller properties override file and we'll have by adding table auto-creation/upgrade.

Not everbody will want to use auto-create and nobody will want install-logic running in a production system, so Roller will operate in two modes, controlled by the 'installation.type' property.

In production systems, 'installation.type' should be set to 'manual' to ensure that we never show an revealing database error page or "would you like to upgrade" tables page in production.

At installation time, users can choose turn on auto-install by setting 'installation.type=auto'. In this mode, Roller will give informative error messages when the database setup fails, it will create the Roller tables automatically and it will even upgrade them if they need upgrade.

Users with special needs, i.e. very large sites, upgrading from pre 1.2 Roller, customized data models, can choose not use auto-install. By setting 'installation.type=manual' they can choose to do upgrades the old way, running scripts by hand.

...