Currently there are two approaches to installing databases in Perl. The first (initiate.pl) has officially been moved to add-ons and is a web-based interface for this process. I have not personally used it, although I have recently committed a lot of patches against it.
The second approach is the use of makefile targets installdb and installdb_interactive. These are not well documented at the moment and the interface of installdb is very sub-optimal. If you set appropriate environment variables as documented in README.tests file and rune make installdb, it will install a database for you and run sanity checks on that database. If you run make installdb_interactive, it will ask you for all relevant information and set the environment variables locally with the script. This comes build into the default installation of LedgerSMB 1.3 at the moment, but it relies on two important dependencies: make and a perl test harness. The structure of the scripts is such that we could do without make quite easily, but if we want to test the database post-install (ensuring no unexpectedly overloaded functions, etc), we cannot reasonably get rid of the test framework without maintaining additional levels of abstraction to the database tests. The user interface problems here can be reasonably solved through use of wrapper scripts which take command line arguments, set up appropriate environment variables, and run the relevant scripts or commands. But this leads to the question: do we want to depend on perl test infrastructure and/or make utilities to be on systems we are building databases from? And given the amount of code in the database, do we want to treat creating a new company database as a build process or an administrative task for dependency and/or UI reasons? Best Wishes, Chris Travers ------------------------------------------------------------------------------ vRanger cuts backup time in half-while increasing security. With the market-leading solution for virtual backup and recovery, you get blazing-fast, flexible, and affordable data protection. Download your free trial now. http://p.sf.net/sfu/quest-d2dcopy1 _______________________________________________ Ledger-smb-devel mailing list Ledger-smb-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/ledger-smb-devel