-
Notifications
You must be signed in to change notification settings - Fork 2.2k
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
Negative lookahead regex issue on node definition #9483
Comments
This is a regression introduced by #9420 as puppetserver calls puppet as a library when compiling the catalog. It works when using puppet 8.8.1
But not with 8.9.0
The server's log contains
|
Migrated issue to PUP-12081 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Describe the Bug
When upgrading to Puppet Server version 8.6.3, certain node regex patterns stop functioning correctly. Specifically, regex patterns that use negative lookahead (
?!
) no longer match nodes as expected. Instead, the Puppet agent throws an error when attempting to retrieve the catalog.Expected Behavior
The regex patterns should continue to match nodes as defined, including those using negative lookahead assertions, and the catalog should be successfully retrieved.
Steps to Reproduce
Steps to reproduce the behavior:
node /^aws-server\d{2}-(af|ap|ca|eu|me|sa|us)-(central|(north|south)?(east|west)?)-\d(?!\.test)/
Could not retrieve catalog from remote server: Error 500 on SERVER: Server Error: Cannot find definition Node on node aws-server01-us-west-1.domain.com
Environment
Additional Context
This issue only seems to occur after upgrading to Puppet Server 8.6.3. Previous versions did not experience this problem. The issue appears related to the handling of negative lookahead (
?!
) within the regex engine used by Puppet Server.The text was updated successfully, but these errors were encountered: