Problem:
Foreman installer fails during upgrade.
Expected outcome:
Smoth installation and db migration.
Foreman and Proxy versions:
Foreman 2.1…2-1
Foreman and Proxy plugin versions:
Katello 3.16.0-1
Distribution and version:
CentOS 7.8
Other relevant data:
Our Foreman installation is using an external PostgreSQL 10 database, which created some hickups during the upgrade to Katello 3.15 with the introduction of Pulp3 and the “enforcement” of the installer to use a local PosgreSQL 12 database (se notes from ekohl)
My issue seems partial related to Katello 3.16 upgrade fails (foreman-rake db:migrate). I was missing the rh-postgresql12-postgresql-evr
package, however the db:migrate
process tries to load the evr extension from a PostgreSQL 10 path (which matches my external DB version), instead of the local PostgreSQL 12.
/Stage[main]/Foreman::Database/Foreman::Rake[db:migrate]/Excec[foreman-rake-db:migrate]/returns: PG::UndefinedFile: ERROR: could not open extension control file "/opt/rh/rh-postgresql10/root/root/usr/share/pgsql/extension/evr.control": No such file or directory
It is entirely correct, that no such file exists, however after manual installation of the above evr rpm, it now exists under the PostgreSQL 12 folder. However the foreman-installer insists on trying to use the PostgreSQL 10 directory, and I’m tempted to suggest that it gets the version 10 from my remote database? However I’m not 100% sure how to proof this, as that database can’t be upgraded easily due to other dependencies.
I thought i would be able to cheat, and create a local symlink of
/opt/rh/rh-postgresql10 -> /opt/rh/rh-postgresql12
but no cigar.