-
Notifications
You must be signed in to change notification settings - Fork 497
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
(FACT-3207) Don't rescue NoMethodError in base resolver #2591
Conversation
c10bfd8
to
ed29723
Compare
jenkins please test this on all |
e6f8b20
to
600ff20
Compare
jenkins please test this on osx12-ARM64 |
Ah looks like you found another resolver bug. I wonder if this was causing the sporadic macOS 12 issue we were seeing in CI?
|
600ff20
to
a930f31
Compare
This comment was marked as duplicate.
This comment was marked as duplicate.
a930f31
to
153d217
Compare
This comment was marked as duplicate.
This comment was marked as duplicate.
153d217
to
0ea62e7
Compare
This comment was marked as duplicate.
This comment was marked as duplicate.
Update: osx 12 arm was temporarily removed as a test target from puppet-agent and will be added back when PA-5666 is resolved so this PR is no longer blocked |
This commit removes the logic to specifically rescue for just NoMethodError. Instead, since NameError is a superclass of NoMethodError, NoMethodErrors will be rescued when NameError is rescued and log at the error level instead of the debug level. By doing this, bugs in resolvers are no longer hidden. This commit also fixes various bugs in resolvers such as calling methods on nil objects and requiring/relying gems that may not be installed to resolve facts.
0ea62e7
to
50bbef9
Compare
This comment was marked as duplicate.
This comment was marked as duplicate.
1 similar comment
jenkins please test this on all |
This commit removes the logic to specifically rescue for just NoMethodError.
Instead, since NameError is a superclass of NoMethodError, NoMethodErrors will
be rescued when NameError is rescued and log at the error level instead of the
debug level. By doing this, bugs in resolvers are no longer hidden.
This commit also fixes various bugs in resolvers such as calling methods on nil
objects and requiring/relying gems that may not be installed to resolve facts.