I've begun testing this module across a couple of VMs. On setting up the second VM (with a bit of test data in the database), I've found that the database gets reinitialized, wiping out the data.
This is due to Exec['setup gitlab database'] looking at a local file to determine whether the database needs "setting up".
For such a dangerous operation, one might speculate that this functionality should be separate from the main install process (either as a separate class or by setting a parameter).