Today the installation instruction prescribes database initialization in different ways for different database engines. For MySQL and PostgreSQL a combination of perl, cd and mysql/psql is used. For SQLite, a combination of perl, cd, install and chown is used. The same approach is used in the section about cleaning up the database.
Today the definitions themselves are located in different places. For MySQL and PostgreSQL the definitions are duplicated across the share/ and script/ directories in the repository. For SQLite the definition is located in the database adapter module.
There is already an issue #689 to deduplicate the database definitions for MySQL and PostgreSQL. This issue goes beyond that.
Requirements:
A command line tool should be created for initializing and cleaning up the database.
The tool should be used in the installation instruction.
The database definitions for all database engines should be located in their respective database adapter modules.
Today the installation instruction prescribes database initialization in different ways for different database engines. For MySQL and PostgreSQL a combination of
perl
,cd
andmysql
/psql
is used. For SQLite, a combination ofperl
,cd
,install
andchown
is used. The same approach is used in the section about cleaning up the database.Today the definitions themselves are located in different places. For MySQL and PostgreSQL the definitions are duplicated across the share/ and script/ directories in the repository. For SQLite the definition is located in the database adapter module.
There is already an issue #689 to deduplicate the database definitions for MySQL and PostgreSQL. This issue goes beyond that.
Requirements: