Rubygem-puppetdb_foreman.noarch breaks foreman-rake

Problem:
I got the following:
Foreman 3.6.1 running on AlmaLinux 8.7 (CentOS 8 variant)
installed puppetdb via packages:

# rpm -qa | grep puppetdb
puppetdb-7.13.0-1.el8.noarch
puppetdb-termini-7.13.0-1.el8.noarch

puppet agent works with puppetdb.

But after installing the puppetdb-plugin for foreman with “dnf install rubygem-puppetdb_foreman.noarch”, the forman-installer fails, especially foreman-rake:

2023-04-20 13:26:10 [ERROR ] [configure] '/usr/sbin/foreman-rake db:migrate' returned 1 instead of one of [0]
2023-04-20 13:26:10 [ERROR ] [configure] /Stage[main]/Foreman::Database/Foreman::Rake[db:migrate]/Exec[foreman-rake-db:migrate]/returns: change from 'notrun' to ['0'] failed: '/usr/sbin/foreman-rake db:migrate' returned 1 instead of one of [0]
2023-04-20 13:26:15 [NOTICE] [configure] 1000 configuration steps out of 1244 steps complete.
2023-04-20 13:26:17 [NOTICE] [configure] System configuration has finished.

  There were errors detected during install.
  Please address the errors and re-run the installer to ensure the system is properly configured.
  Failing to do so is likely to result in broken functionality.

  The full log is at /var/log/foreman-installer/foreman.log

When I restart foreman (systemctl restart foreman) the WebUI is broken and shows the following error:

 Service unavailable ERF64-6496 [Foreman::MaintenanceException]: There are migrations pending in the system.

When I uninstall rubygem-puppetdb_foreman.noarch with “dnf remove rubygem-puppetdb_foreman.noarch” und rerun foreman-installer it works again.

Any hints or ideas what’s going wrong here ?
How can I install Foreman-puppetDB-Plugin successfully ?

Expected outcome:
rubygem-puppetdb_foreman.noarch should not break foreman-rake, foreman-installer should run successfully

Foreman and Proxy versions:
Foreman 3.6.1
Puppet 7.24.0
PuppetDB 7.13.0
Foreman-PuppetDB-Plugin (not listed in below rpm -qa output because I had to uninstall it):
rubygem-puppetdb_foreman noarch 6.0.1-1.fm3_5.el8

# rpm -qa | egrep 'foreman|puppet'
foreman-cli-3.6.1-1.el8.noarch
puppetdb-7.13.0-1.el8.noarch
foreman-debug-3.6.1-1.el8.noarch
puppet-agent-7.24.0-1.el8.x86_64
foreman-service-3.6.1-1.el8.noarch
foreman-selinux-3.6.1-1.el8.noarch
puppet-agent-oauth-0.5.10-1.el8.noarch
puppet7-release-7.0.0-11.el8.noarch
foreman-3.6.1-1.el8.noarch
foreman-postgresql-3.6.1-1.el8.noarch
foreman-proxy-3.6.1-1.el8.noarch
puppetdb-termini-7.13.0-1.el8.noarch
rubygem-hammer_cli_foreman_puppet-0.0.6-1.fm3_4.el8.noarch
puppetserver-7.11.0-1.el8.noarch
foreman-release-3.6.1-1.el8.noarch
foreman-dynflow-sidekiq-3.6.1-1.el8.noarch
rubygem-hammer_cli_foreman-3.6.0-1.el8.noarch
rubygem-foreman_puppet-5.0.0-1.fm3_6.el8.noarch
foreman-installer-3.6.1-1.el8.noarch

Foreman and Proxy plugin versions:
all 3.6.1-1.el8

Distribution and version:
AlmaLinux 8.7 (CentOS/Redhat 8 variant)

Other relevant data:
foreman.log:

# grep ERROR /var/log/foreman-installer/foreman.log
2023-04-20 13:25:44 [NOTICE] [root] Use -l to set the terminal output log level to ERROR, WARN, NOTICE, INFO, or DEBUG. See --full-help for definitions.
2023-04-20 13:25:52 [DEBUG ] [configure] -D DEFAULT_ERRORLOG="logs/error_log"
2023-04-20 13:26:10 [INFO  ] [configure] /Stage[main]/Foreman::Database/Foreman::Rake[db:migrate]/Exec[foreman-rake-db:migrate]/returns: PG::UndefinedColumn: ERROR:  column settings.category does not exist
2023-04-20 13:26:10 [INFO  ] [configure] /Stage[main]/Foreman::Database/Foreman::Rake[db:migrate]/Exec[foreman-rake-db:migrate]/returns: ActiveRecord::StatementInvalid: PG::UndefinedColumn: ERROR:  column settings.category does not exist
2023-04-20 13:26:10 [INFO  ] [configure] /Stage[main]/Foreman::Database/Foreman::Rake[db:migrate]/Exec[foreman-rake-db:migrate]/returns: PG::UndefinedColumn: ERROR:  column settings.category does not exist
2023-04-20 13:26:10 [ERROR ] [configure] '/usr/sbin/foreman-rake db:migrate' returned 1 instead of one of [0]
2023-04-20 13:26:10 [ERROR ] [configure] /Stage[main]/Foreman::Database/Foreman::Rake[db:migrate]/Exec[foreman-rake-db:migrate]/returns: change from 'notrun' to ['0'] failed: '/usr/sbin/foreman-rake db:migrate' returned 1 instead of one of [0]

foreman-rake db:migrate:status shows:

# foreman-rake db:migrate:status

database: foreman

 Status   Migration ID    Migration Name
--------------------------------------------------
   up     20090714132448  Create hosts
   up     20090714132449  Add audits table
   up     20090715143858  Create architectures
   up     20090717025820  Create media
   up     20090718060746  Create domains
   up     20090718064254  Create subnets
   up     20090720134126  Create operatingsystems
   up     20090722140138  Create models
   up     20090722141107  Create environmentsforeman puppet
   up     20090729132209  Create reports
   up     20090730152224  Create ptables
   up     20090802062223  Create puppetclassesforeman puppet
   up     20090804130144  Create parameters
   up     20090820130541  Create auth sources
   up     20090905150131  Create hostgroups
   up     20090905150132  Create hostgroups puppetclassesforeman puppet
   up     20090905155444  Add type to parameter
   up     20090907045751  Add domain to parameter
   up     20090916053824  Change host build default to false
   up     20090920043521  Add index to host
   up     20090920064156  Add index to parameters
   up     20090920065522  Add index to reports
   up     20091012135004  Create users
   up     20091016031017  Create sessions
   up     20091022054108  Add status to report
   up     20091219132338  Create lookup keys
   up     20091219132839  Create lookup values
   up     20100310080727  Add family to os
   up     20100414125652  Add releasename to os
   up     20100416124600  Create usergroups
   up     20100419151910  Add owner to hosts
   up     20100523141204  Create media operatingsystems and migrate data
   up     20100525094200  Simplify parameters
   up     20100601221000  Update os minor
   up     20100616114400  Change family in os
   up     20100625155400  Create notices
   up     20100628123400  Add internal auth
   up     20100629093200  Create roles
   up     20100701081235  Add user domains and hostgroups
   up     20100822072954  Create user facts
   up     20100823181036  Add enabled to hosts
   up     20100914092104  Add my booleans to user
   up     20101018120548  Create messages
   up     20101018120603  Create sources
   up     20101018120621  Create logs
   up     20101019122857  Add metrics to report
   up     20101019183859  Convert reports
   up     20101103150254  Add owned filter to user
   up     20101118130026  Correct media
   up     20101121080425  Create config templates
   up     20101121135521  Create template combinations
   up     20101121140000  Add environment to template combinationsforeman puppet
   up     20101122132041  Create operatingsystems config templates
   up     20101123152150  Create template kinds
   up     20101123153303  Create os default templates
   up     20101130093613  Add sub systems to subnet
   up     20101130100315  Create proxies
   up     20101202104444  Add proxy to domain
   up     20110117162722  Add host group defaults
   up     20110213104226  Create proxy features
   up     20110216101848  Change puppetmaster column
   up     20110301154453  Add managed to hosts
   up     20110327123639  Add priority to parameter
   up     20110404150043  Add media path to medium
   up     20110407091150  Add image to host
   up     20110412103238  Remove unused fields from puppet classesforeman puppet
   up     20110417102947  Add table bookmarks
   up     20110616080444  Add look up key id to puppet class
   up     20110617190131  Add sparc info to model
   up     20110619130336  Add ancestry to hostgroup
   up     20110628115422  Create settings
   up     20110712070522  Create host classforeman puppet
   up     20110801090318  Add vm defaults to hostgroup
   up     20110803114134  Add subnet and domain to host groups
   up     20111124095053  Rename changes to audited changes
   up     20111124095054  Add remote address to audits
   up     20111124095055  Rename parent to association
   up     20111205231500  Add gateway and dns to subnets
   up     20120102071633  Add from and to ranges to subnets
   up     20120110113051  Create subnet domain
   up     20120122131037  Create compute resources
   up     20120126113850  Add uuid and compute id to host
   up     20120311081257  Create nics
   up     20120313081913  Add puppet master proxy to host and host group
   up     20120502105518  Update report field to large int
   up     20120506143325  Create images
   up     20120509131302  Add cert name to host
   up     20120510113417  Create key pairs
   up     20120521142924  Add dns id to subnet
   up     20120523065531  Add image id to host
   up     20120529113900  Add user compute resources
   up     20120529115814  Add compute resources boolean to user
   up     20120607074318  Convert params to text
   up     20120612070100  Change bookmark column to text
   up     20120613082125  Rename association to associated
   up     20120621135042  Create taxonomies
   up     20120624081510  Add auditable name and associated name to audit
   up     20120624093958  Add os family to media
   up     20120624094034  Add os family to ptable
   up     20120705130038  Add attributes to compute resources
   up     20120824142048  Add some indexesforeman puppet
   up     20120905095532  Create environment classesforeman puppet
   up     20120905131841  Add lookup keys override and required
   up     20120916080843  Add lookup values count to lookup keys
   up     20120921000313  Add iam role to images
   up     20120921105349  Create tokens
   up     20121003172526  Add taxonomy ids to hosts
   up     20121011115320  Change domain character count
   up     20121015113502  Update media path limit
   up     20121018152459  Create hostgroup classesforeman puppet
   up     20121101141448  Add locations organizations
   up     20121118120028  Migrate hypervisors to compute resources
   up     20121118125341  Create taxable taxonomies
   up     20121119102104  Add my taxonomy to user
   up     20121210214810  Add subscribe to all hostgroups to users
   up     20121218084123  Change smart variable length
   up     20130109155024  Add ignore types to taxonomy
   up     20130121130826  Add digest to messages
   up     20130211160200  Add sti to hosts
   up     20130228145456  Add digest to sources
   up     20130409081924  Add label to host group
   up     20130417110127  Add sti to settings
   up     20130419145808  Add id to user hostgroup
   up     20130430150500  Add locale to users
   up     20130520161514  Add unique constraint to fact name
   up     20130523131455  Add unique constraints to fact values
   up     20130530061844  Change column lengths
   up     20130804131949  Add public to key pairs
   up     20130813105054  Change compute resource password to text
   up     20130814132531  Add ldap filter to auth sources
   up     20130908170524  Add keys
   up     20130924145800  Remove unused role fields
   up     20131014133347  Add compose flag and short name to fact name
   up     20131017142515  Allow null values on fact value
   up     20131021125612  Add type to fact name
   up     20131021152315  Change name index on fact name
   up     20131107094849  Add ancestry to fact names
   up     20131114084718  Extend user role
   up     20131114094841  Create cached user roles
   up     20131122170726  Create cached usergroup members
   up     20131125230654  Create realms
   up     20131128150357  Add admin flag to usergroup
   up     20131202120621  Create permissions
   up     20131202131847  Create filters
   up     20131202144415  Create filterings
   up     20131204174455  Add description to operatingsystem
   up     20131212125626  Add ldap avatar support
   up     20131223120945  Add userdata flag to images
   up     20131224153518  Create compute profiles
   up     20131224153743  Create compute attributes
   up     20131224154836  Add compute profile to hostgroup
   up     20140110164135  Add foreign keys to filters and filterings
   up     20140115130443  Add password to images
   up     20140123185537  Add default organization id to users
   up     20140123194519  Add default location id to users
   up     20140128123153  Add ancestry to taxonomies
   up     20140219183342  Change label to title
   up     20140219183345  Add taxonomy searches to filter
   up     20140304184854  Add provision method to hosts
   up     20140314004243  Add counter caches
   up     20140318221513  Change host managed default to false
   up     20140320000449  Add server type to auth source
   up     20140320004050  Add groups base to auth source
   up     20140325093623  Add lowerlogin to users
   up     20140407161817  Create config groupsforeman puppet
   up     20140407162007  Create config group classesforeman puppet
   up     20140407162059  Create host config groupsforeman puppet
   up     20140409031625  Create external usergroups
   up     20140410134234  Remove subscribe to all hostgroups from users
   up     20140415052549  Cleanup users properties
   up     20140415053029  Remove user join tables
   up     20140522122215  Add hidden value to parameter
   up     20140630114339  Add boot mode to subnet
   up     20140705173549  Add locked and default and vendor to config template
   up     20140707113214  Remove architecture default
   up     20140710132249  Extract nic attributes
   up     20140711142510  Add attributes to nic base
   up     20140716102950  Add managed to nics
   up     20140716140436  Change auditable name column to text
   up     20140725101621  Add primary interface to hosts
   up     20140728190218  Add ip suggestion to subnets
   up     20140805114754  Add unique index to parameter
   up     20140826104209  Add merge overrides and avoid duplicates to lookup key
   up     20140901115249  Add request uuid to audits
   up     20140902102858  Convert ipam to string
   up     20140908192300  Change nil admin users to false
   up     20140910111148  Add bond attributes to nic base
   up     20140910153654  Move host nics to interfaces
   up     20140912113254  Add password hash to operatingsystem
   up     20140912114124  Add grub password to hosts
   up     20140912145052  Add grub password to hostgroup
   up     20140915141937  Add should use puppet default to lookup value and key
   up     20140928131124  Add title to os
   up     20140928140206  Create widgets
   up     20140929073150  Create mail notifications
   up     20140929073343  Create user mail notifications
   up     20140930201523  Add mail enabled to user
   up     20141014131912  Add subscription type to mail notifications
   up     20141023114229  Add timezone to user
   up     20141112165600  Add type to parameter index
   up     20141116131324  Add mail query to user mail notification
   up     20141117093914  Add queryable to mail notification
   up     20141120140051  Remove audit user fk
   up     20141124055509  Rename smart proxy auth related settings
   up     20141217101211  Add compute attributes to nics
   up     20141225073211  Add description to taxonomies
   up     20150127085513  Set ptable layout to text
   up     20150212161904  Move description fields to text
   up     20150225131946  Change default subnet boot mode
   up     20150428070436  Add index to logs source
   up     20150428110835  Change os default password hash
   up     20150514072626  Add type to config template
   up     20150514114044  Migrate ptables to templates
   up     20150514121649  Add usergroup sync to auth sources
   up     20150521121315  Rename config template to provisioning template
   up     20150525081931  Remove duplicate tokens
   up     20150602153751  Change usergroup name to be required
   up     20150605073820  Fix template snippet flag
   up     20150606065713  Add sti to lookup keys
   up     20150612135546  Create host status
   up     20150616080015  Create core template input
   up     20150618093433  Remove unused fields from hosts
   up     20150622090115  Change reported at
   up     20150705131449  Add type to reports
   up     20150708070742  Add full name to setting
   up     20150713143226  Add unique to operatingsystems title
   up     20150714132601  Remove is param
   up     20150811170401  Add merge default to lookup key
   up     20150819105725  Add lookup value match to host and hostgroup
   up     20150827152730  Add options to core template input
   up     20150917155300  Update host status status field int
   up     20151009084350  Drop ptables
   up     20151019174035  Rename domain host count
   up     20151025120534  Add hidden value to lookup key
   up     20151104100257  Add hosts count to hostgroup
   up     20151109152507  Add host status host id index
   up     20151210143537  Add type to mail notification
   up     20160127134031  Add advanced to core template input
   up     20160201131211  Add expired logs to smart proxy
   up     20160203110216  Add default value for bookmark public field
   up     20160215143900  Add subnet domain relation constraints
   up     20160308102459  Remove permissions from roles
   up     20160315161936  Add encrypted to settings
   up     20160414063050  Add sti to subnets
   up     20160415134454  Add ipv6 to hosts
   up     20160415135858  Add ipv6 subnet
   up     20160527093031  Limit os description
   up     20160609092110  Remove nil from merge override
   up     20160616074718  Remove host counter cache
   up     20160715131352  Set role builtin default
   up     20160717125402  Unify permissions
   up     20160719081324  Change templates type default
   up     20160725142557  Add pxe loader to host
   up     20160726085358  Rename lookup value use puppet default
   up     20160727084256  Add description to user
   up     20160727142242  Add pxe loader to hostgroup
   up     20160728095626  Add description to role
   up     20160818091420  Add override flag to filter
   up     20160831121418  Rename lookup key use puppet default
   up     20160927071039  Create notification blueprints
   up     20160927071147  Create notifications
   up     20160927073233  Create notification recipients
   up     20161205142618  Delete orphaned smart class parametersforeman puppet
   up     20161227082709  Change architecture name limit
   up     20161227082721  Change usergroup name limit
   up     20170109115157  Fix lookup key auditable typeforeman puppet
   up     20170110113824  Change id value range
   up     20170118142654  Add auto increment to bigint ids
   up     20170118154134  Add type index to reports
   up     20170127094357  Add caching enabled to compute resource
   up     20170201135815  Add domain to compute resources
   up     20170209084517  Add actions to notification blueprint
   up     20170213154641  Add index reports on host id type
   up     20170214132230  Create ssh keys
   up     20170221100747  Add origin to roles
   up     20170226193446  Move subject to notifications
   up     20170228134258  Add clone info to role
   up     20170301155205  Remove widget hide
   up     20170306100129  Add message to notification
   up     20170315154334  Add report time type host index
   up     20170316142703  Add missing indexes to notification
   up     20170319131341  Add ancestry name index on fact name
   up     20170404134531  Add description to subnets
   up     20170424131346  Add description to hostgroup
   up     20170604082313  Add compute resource to hostgroup
   up     20170606115344  Change lookup key path to text
   up     20170608130132  Add use netgroups to ldap auth source
   up     20170610132326  Create personal access tokens
   up     20170622011347  Add http proxies
  down    20170717140010  Migrate puppetdb api version setting
   up     20170815130257  Add index to ssh keys
   up     20170911133318  Drop default type in templates
   up     20171016202300  Increase fact value size
   up     20171109095957  Add key type to parameters
   up     20171119094913  Add mtu to subnet
   up     20171126131104  Remove duplicate taxable taxonomies
   up     20171213161035  Add indexes on images
   up     20171225122601  Add version to auditable index
   up     20171231134017  Change vlan to int
   up     20180102082705  Add taxonomy index to hosts
   up     20180111130853  Add config reports origin
   up     20180123140634  Remove limit ldap filter
   up     20180129143410  Create jwt secrets
   up     20180208053256  Create table preferences
   up     20180216094550  Add template to subnets
   up     20180305111232  Add build errors to hosts
   up     20180312080251  Change digests limit
   up     20180424080702  Change subnet vlanid size
   up     20180613100703  Add type to token
   up     20180702102759  Remove params value limit
   up     20180705191153  Add upgrade task
   up     20180705230311  Smart proxy capabilities
   up     20180713154128  Add index on role names
   up     20180715202514  Optimize indices
   up     20180806151925  Add subnet name unique constraint
   up     20180816110716  Add httpboot do subnet
   up     20180816134832  Cast lookup key valuesforeman puppet
   up     20180820072858  Add help text to template kinds
   up     20180831115634  Add uniqueness to puppetclass nameforeman puppet
   up     20180904142922  Add nic delay to subnet
  down    20181001113836  Remove puppetdb dashboard address settingpuppetdb foreman
   up     20181023112532  Add environment puppetclass idforeman puppet
   up     20181101101145  Add index to lookup values
   up     20181224174419  Add index to environment class by lookup key and puppetclassforeman puppet
   up     20190116120705  Remove timestamps from logs
   up     20190121084601  Change compute resource password length
   up     20190225115728  Create stored values
   up     20190226182746  Create registration facets
   up     20190228160047  Add value type and resource type to template input
   up     20190510082811  Add taxonomy id taxable type indices to taxable taxonomies
   up     20190604081000  Change root pass in host
   up     20190627083110  Change token value type
   up     20190630034751  Create host facets reported data facets
   up     20190705060630  Add searchable value to parameters
   up     20190821135704  Feature unique name
   up     20190829102315  Http proxy unique name
   up     20190918170516  Add default to template inputs
   up     20190919155550  Add description to templates
   up     20191001120743  Add fields to reported data facet
   up     20191017151119  Add external ipam id to subnets
   up     20191028082812  Remove limit from root pass
   up     20200107181613  Add foreman internal table
   up     20200127103144  Ssh keys fingerprints sha1
   up     20200129123555  Add disabled to users
   up     20200205105956  Drop parameterized classes setting
   up     20200217110708  Alter session sequence to cycle
   up     20200311131527  Drop smart variable permissions
   up     20200311134414  Change match to text in lookupvalue
   up     20200318135632  Rename report templates
   up     20200324210540  Rename default variable lookup path
   up     20200326164755  Change oidc audience setting type
   up     20200402190048  Add hidden value to template input
   up     20200406113832  Drop variable lookup key
   up     20200427151946  Drop rackspace cr
   up     20200513092446  Change config chart class
   up     20200521082853  Rename cent os7 install media
   up     20200525073201  Drop puppet class id from look up key
   up     20200602155700  Drop puppet run
   up     20200615071719  Add bmc to subnet
   up     20200616134403  Remove setting enable orchestration
   up     20200625081552  Add unique index to lookup value
   up     20200709160133  Set empty filter taxonomy search nil
   up     20200720123005  Migrate puppet core typesforeman puppet
   up     20200722171017  Create host puppet facetforeman puppet
   up     20200803113531  Create hostgroup puppet facetforeman puppet
   up     20200803113803  Migrate environment to puppet facetforeman puppet
   up     20200803113903  Migrate host type in host config groupsforeman puppet
   up     20200825121733  Drop compare content host template
   up     20200908120905  Rebuild taxonomy search
   up     20200911083030  Use hash index for reports
   up     20200918223816  Update login delegation description
   up     20200921135723  Create host facets infrastructure facets
   up     20201030102020  Enlarge report status
   up     20201125113903  Migrate puppetclasses to facetsforeman puppet
   up     20201224095619  Remove ovirt use api from attr
   up     20210114143800  Nilify empty proxy credentials
   up     20210115124508  Template kind registration
   up     20210317090500  Add disks total to host facets
   up     20210317170111  Remove the remote add setting
   up     20210401124332  Drop db pending migration setting
   up     20210407104300  Downcase mac addresses
   up     20210502113529  Drop view bookmarks permission
   up     20210525144427  Enforce unique templates
   up     20210609093404  Drop override taxonomies from filter
   up     20210610131920  Restrict sendmail location
   up     20210901081438  Drop view tasks permission
   up     20210915132645  General setting to dsl
   up     20210924103241  Remove katello id from environmentsforeman puppet
   up     20210929132645  Core setting to dsl
   up     20211111115000  Drop fix db cache setting
   up     20211111125003  Drop puppetclasses direct referencesforeman puppet
   up     20211112130803  Cleanup environment from core tablesforeman puppet
   up     20220111110149  Drop require ssl smart proxies setting
   up     20220124174632  Drop setting fields
   up     20220201205305  Migrate host class permissionforeman puppet
   up     20220204155632  Rename job report template
   up     20220208134539  Rename cent os stream os
   up     20220208135305  Migrate environment ignore typeforeman puppet
   up     20220421204325  Drop environment from host and hgforeman puppet
   up     20220515130414  Drop unnecessary timestamps
   up     20220628083024  Change default value for mail enabled to user
   up     20220630104300  Fix facet audits
   up     20220809191656  Add ssl ca to http proxy
   up     20220907145552  Clean trends and foreman docker data
   up     20221010174230  Add kernel version to host facets
   up     20221017161042  Remove host power status from settings
   up     20221025151600  Add creator id to hosts
  down    20221026123754  Fix puppetdb settings category to dsl
   up     20221102134032  Add bios to host facets
   up     20221126232030  Remove category from settings

Looks like foreman-puppetdb is currently broken on Foreman 3.6. If found this open PR that should fix this, but that has not yet been merged and seems to be incomplete. Maybe @lstejska can take another look at this?

PR updated, migration issues fixed but now it’s failing on the webpack

2 Likes

Thank you, that explains my issues.
So I have to wait for a working update.

I just realized that all facts from agent-nodes are empty in foreman since I installed puppetdb.
I don’t know why the facts are not updated in foreman anymore.

In your puppet.conf (on the Puppet master), do you have

reports = puppetdb,foreman

set to both or just puppetdb?
This would be the only config I can think of that could cause this behaviour.

I have this in my puppet.conf:

[main]
...  
  reports = foreman,puppetdb
...
[master]
...
  storeconfigs = true
  storeconfigs_backend = puppetdb
...

partly solution:
After Updating Foreman from 3.6.1 to 3.7.0 I was able to install “rubygem-puppetdb_foreman” with:

dnf install rubygem-puppetdb_foreman.noarch

Foreman-WebUI is not broken now, I can Login and it works.
“foreman-rake db:migrate:status” shows everything as “up” now.
And I got a “PuppetDB”-Tab in Forem-WebUI under “Administer->Settings”.
In this PuppetDB-Tab in Foreman I enabled it in puppetdb_enabled and set the hostname in puppetdb_address.

So far the problem is solved with Foreman 3.7.0, new version of the puppetdb-plugin is “rubygem-puppetdb_foreman-6.0.2-1.fm3_7.el8.noarch”.

That’s great !

BUT I don’t see any facts in Foreman-WebUI from new hosts, but I can find them in puppetdb.

Do I need to configure something for that to work ?

Has anyone an idea or hints for me ?
Maybe where can I look for errors or so ?

I found the solution myself:

my routes.yaml was configured to “cache: yaml” … I had to change it to “cache: json”.
Now Foreman get the updated facts too.

##### wrong routes.yaml ##### 
---
master:
  facts:
    terminus: puppetdb
    cache: yaml

##### corrected routes.yaml ##### 
---
master:
  facts:
    terminus: puppetdb
    cache: json
1 Like