fixes #9101 - refresh db:migrate if DB class changes or settings are missing
When the DB is missing, the foreman::database::${type} class will refresh as it recreates it, and now triggers the migration. On a clean install, this was working mostly by luck as foreman::config refreshed everything.
foreman_config_entry didn't cause a refresh due to ignore_missing, which meant it would only help when Foreman settings had been initialised, but before the migration had completed. With an empty DB, it wouldn't work.
Removing ignore_missing means foreman_config_entry will also continue to refresh the db:migrate until the setting is populated, and the migration completes.
Only compatible with Foreman 1.7+ as it'll cause continuous refreshes on older versions without the setting.
Related issues
Bug #9101: After dropping Foreman database, cannot re-run installer successfully
fixes #9101 - refresh db:migrate if DB class changes or settings are missing
When the DB is missing, the foreman::database::${type} class will refresh as
it recreates it, and now triggers the migration. On a clean install, this was
working mostly by luck as foreman::config refreshed everything.
foreman_config_entry didn't cause a refresh due to ignore_missing, which meant
it would only help when Foreman settings had been initialised, but before the
migration had completed. With an empty DB, it wouldn't work.
Removing ignore_missing means foreman_config_entry will also continue to
refresh the db:migrate until the setting is populated, and the migration
completes.
Only compatible with Foreman 1.7+ as it'll cause continuous refreshes on older
versions without the setting.