Jira (FACT-2417) Facter throws noisy "No resolver for external facts file" warning on custom fact files

15 views
Skip to first unread message

Jory Osterptak (JIRA)

unread,
Feb 27, 2020, 1:58:04 PM2/27/20
to puppe...@googlegroups.com
Jory Osterptak created an issue
 
Facter / Bug FACT-2417
Facter throws noisy "No resolver for external facts file" warning on custom fact files
Issue Type: Bug Bug
Affects Versions: FACT 3.14.8
Assignee: Unassigned
Created: 2020/02/27 10:57 AM
Priority: Normal Normal
Reporter: Jory Osterptak

Puppet Version: 6.13.0
Puppet Server Version: 6.9.0
OS Name/Version: RHEL7

After upgrading to version 6.13.0 of puppet-agent (which includes facter 3.14.8) we have started seeing a "No resolver for external facts file {filename}" warning message for every file in our custom facts directory (/opt/puppetlabs/facter/facts.d), both when running puppet agent -t, as well as running facter directly.

$ puppet agent -t
Warning: Facter: skipping file "/opt/puppetlabs/facter/facts.d/customfact.rb": No resolver for external facts file /opt/puppetlabs/facter/facts.d/customfact.rb
...
Info: Using configured environment 'development'
Info: Retrieving pluginfacts
Info: Retrieving plugin
Info: Retrieving locales
Info: Loading facts
Warning: Facter: skipping file "/opt/puppetlabs/facter/facts.d/customfact.rb": No resolver for external facts file /opt/puppetlabs/facter/facts.d/customfact.rb
...
Info: Caching catalog for myserver.my.domain
Info: Applying configuration version '1582828949'$ facter hostname
2020-02-27 13:56:50.591690 WARN  puppetlabs.facter - skipping file "/opt/puppetlabs/facter/facts.d/customfact.rb": No resolver for external facts file /opt/puppetlabs/facter/facts.d/customfact.rb
myserver

 All files in our facts.d directory have .rb extensions and 644 permissions (non-executable)

Further research indicates that this does not occur in puppet-agent 6.12 with facter 3.14.7, as the message at the time was a debug message "checking execution on {filename}"...

It looks like the relevant change was made here.

We can prevent facter from attempting to load external facts by setting no-external=true in facter.conf, but this does not have any impact on the output of our puppet runs (likely due to using the facter API?)

Desired Behavior:

I would prefer to revert to the previous behavior where our custom facts load successfully without the noisy warning messages. I would prefer not to adjust our verbosity to avoid missing real warnings.

It seems to me that facter should only attempt to load the external facts if the files are executable?

Actual Behavior:

The warnings cause our puppet runs to be unnecessarily noisy.

Thanks for your attention.

Add Comment Add Comment
 
This message was sent by Atlassian JIRA (v7.7.1#77002-sha1:e75ca93)
Atlassian logo

Jory Osterptak (JIRA)

unread,
Feb 27, 2020, 2:01:03 PM2/27/20
to puppe...@googlegroups.com
Jory Osterptak updated an issue
Change By: Jory Osterptak
*Puppet Version: 6.13.0*
*Puppet Server Version: 6.9.0*
*OS Name/Version: RHEL7*


After upgrading to version 6.13.0 of puppet-agent (which includes facter 3.14.8) we have started seeing a "No resolver for external facts file \{filename}" warning message for every file in our custom facts directory (/opt/puppetlabs/facter/facts.d), both when running puppet agent -t, as well as running facter directly.
{noformat}$ puppet agent -t

Warning: Facter: skipping file "/opt/puppetlabs/facter/facts.d/customfact.rb": No resolver for external facts file /opt/puppetlabs/facter/facts.d/customfact.rb
...
Info: Using configured environment 'development'
Info: Retrieving pluginfacts
Info: Retrieving plugin
Info: Retrieving locales
Info: Loading facts
Warning: Facter: skipping file "/opt/puppetlabs/facter/facts.d/customfact.rb": No resolver for external facts file /opt/puppetlabs/facter/facts.d/customfact.rb
...
Info: Caching catalog for myserver.my.domain
Info: Applying configuration version '1582828949'$ facter hostname
2020-02-27 13:56:50.591690 WARN  puppetlabs.facter - skipping file "/opt/puppetlabs/facter/facts.d/customfact.rb": No resolver for external facts file /opt/puppetlabs/facter/facts.d/customfact.rb
myserver
{noformat}

 All files in our facts.d directory have .rb extensions and 644 permissions (non-executable)

Further research indicates that this does not occur in puppet-agent 6.12 .0 with facter 3.14.7, as the message at the time was a debug message "checking execution on \{filename}"...

It looks like the relevant change was made [here.|https://github.com/puppetlabs/facter/commit/6ffb0965e8df2546fc66a686fbd719a7f441420e]


We can prevent facter from attempting to load external facts by setting no-external=true in facter.conf, but this does not have any impact on the output of our puppet runs (likely due to using the facter API?)

*Desired Behavior:*


I would prefer to revert to the previous behavior where our custom facts load successfully without the noisy warning messages. I would prefer not to adjust our verbosity to avoid missing real warnings.

It seems to me that facter should only attempt to load the external facts if the files are executable?

*Actual Behavior:*


The warnings cause our puppet runs to be unnecessarily noisy.


Thanks for your attention.

Jory Osterptak (JIRA)

unread,
Feb 27, 2020, 2:04:03 PM2/27/20
to puppe...@googlegroups.com
Jory Osterptak updated an issue
*Puppet Version: 6.13.0*
*Puppet Server Version: 6.9.0*
*OS Name/Version: RHEL7*

After upgrading to version 6.13.0 of puppet-agent (which includes facter 3.14.8) we have started seeing a "No resolver for external facts file \{filename}" warning message for every file in our custom facts directory (/opt/puppetlabs/facter/facts.d), both when running puppet agent -t, as well as running facter directly.
{noformat}$ puppet agent -t
Warning: Facter: skipping file "/opt/puppetlabs/facter/facts.d/customfact.rb": No resolver for external facts file /opt/puppetlabs/facter/facts.d/customfact.rb
...
Info: Using configured environment 'development'
Info: Retrieving pluginfacts
Info: Retrieving plugin
Info: Retrieving locales
Info: Loading facts
Warning: Facter: skipping file "/opt/puppetlabs/facter/facts.d/customfact.rb": No resolver for external facts file /opt/puppetlabs/facter/facts.d/customfact.rb
...
Info: Caching catalog for myserver.my.domain
Info: Applying configuration version '1582828949'

{noformat}

{noformat}
$ facter hostname
2020-02-27 13:56:50.591690 WARN  puppetlabs.facter - skipping file "/opt/puppetlabs/facter/facts.d/customfact.rb": No resolver for external facts file /opt/puppetlabs/facter/facts.d/customfact.rb
myserver
{noformat}

 All files in our facts.d directory have .rb extensions and 644 permissions (non-executable)

Further research indicates that this does not occur in puppet-agent 6.12.0 with facter 3.14.7, as the message at the time was a debug message "checking execution on \{filename}"...


It looks like the relevant change was made [here.|https://github.com/puppetlabs/facter/commit/6ffb0965e8df2546fc66a686fbd719a7f441420e]

We can prevent facter from attempting to load external facts by setting no-external=true in facter.conf, but this does not have any impact on the output of our puppet runs (likely due to using the facter API?)

*Desired Behavior:*

I would prefer to revert to the previous behavior where our custom facts load successfully without the noisy warning messages. I would prefer not to adjust our verbosity to avoid missing real warnings.

It seems to me that facter should only attempt to load the external facts if the files are executable?

*Actual Behavior:*

The warnings cause our puppet runs to be unnecessarily noisy.

Ciprian Badescu (Jira)

unread,
Feb 28, 2020, 6:06:02 AM2/28/20
to puppe...@googlegroups.com
Ciprian Badescu updated an issue
Change By: Ciprian Badescu
Story Points: 1
This message was sent by Atlassian Jira (v8.5.2#805002-sha1:a66f935)
Atlassian logo

Mihai Buzgau (Jira)

unread,
Feb 28, 2020, 6:06:03 AM2/28/20
to puppe...@googlegroups.com

Mihai Buzgau (Jira)

unread,
Feb 28, 2020, 6:06:03 AM2/28/20
to puppe...@googlegroups.com

Mihai Buzgau (Jira)

unread,
Feb 28, 2020, 6:06:04 AM2/28/20
to puppe...@googlegroups.com

Mihai Buzgau (Jira)

unread,
Mar 3, 2020, 5:31:03 AM3/3/20
to puppe...@googlegroups.com

Austin Boyd (Jira)

unread,
Apr 23, 2020, 10:16:04 AM4/23/20
to puppe...@googlegroups.com
Austin Boyd updated an issue
Change By: Austin Boyd
Zendesk Ticket Count: 1
Zendesk Ticket IDs: 38956

Austin Boyd (Jira)

unread,
Apr 23, 2020, 10:16:04 AM4/23/20
to puppe...@googlegroups.com
Reply all
Reply to author
Forward
0 new messages