Database data for CI Server
Currently, the CI server https://ci.in-portal.org/ has 4 jobs:
In-Portal 5.2.x
In-Portal 5.2.x with all modules
In-Portal 5.3.x
In-Portal 5.3.x with all modules
Problem
The builds only perform static analysis and don’t run In-Portal to see if it’s working. This happens because there is no database data to test with.
Solution
transform In-Portal installation wizard (its code) in a way, that it can be executed in an automated fashion without a Web Browser
add possible Phing build action called “run-installer”, that will:
clean current database
run the installation (if any error happens in a process, then about the whole process and report back a non-zero exit code)
dump the database
add a caching layer, that will use the previous dump, when a working copy revision hasn’t changed since the last generation time
improve each build so that it will create/populate the database as needed and retain database dumps (somehow ask Jenkins not to delete that dump during “svn revert”, that it does)
Maybe in future dump generation process could be improved to populate database with some test data to be used for unit testing.