-
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
Validation of Deferred multivalued parameters fails #9438
Comments
The issue occurs because
We should correctly detect when puppet parameters are mulltivalued and at least one of the value is |
Migrated issue to PUP-12068 |
@joshcooper thanks. I actually checked the default value of
|
The puppet 8 docs are wrong puppetlabs/puppet-docs#1166 |
If an `exec` resource's `environment` parameter was specified as an array of values, where at least one of the values was deferred, then validation failed with: undefined method `=~' for #<Puppet::Pops::Evaluator::DeferredValue:0x00007ff6913f7908 This occurred because the transaction's `resolved_resolve` assumed the parameter's value was single-valued. As a result, the deferred value was never resolved before calling the type's `validate` method. This updates the transaction to support multi-valued parameters. All deferred values will be resolved before the type's `validate` method is called. Fixes puppetlabs#9438
Describe the Bug
Upgraded puppet agent from
7.30.0
to8.7.0
. Started to get this error for deferred functionsError persists even after setting
preprocess_deferred=false
within Agent'spuppet.conf
Tried Agent
8.8.1
but same issue.Expected Behavior
Puppet Apply should finish without any errors
Steps to Reproduce
The following puppet code fails
Environment
Agent-Version:
8.7.0
Puppet-Server Version:
puppetserver-7.13.0-1.el9.noarch
Additional Context
Add any other context about the problem here.
The text was updated successfully, but these errors were encountered: