-
Notifications
You must be signed in to change notification settings - Fork 303
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
Concat 8.0.0 / Puppet 8.0 - Deferred function calls incompatibility #775
Comments
I'm not sure if checking here ( https://github.com/puppetlabs/puppetlabs-concat/blob/main/lib/puppet/type/concat_file.rb#L299 ) whether the content is a deferred function makes sense... |
Update: The problem still persists with 8.0.1 |
Will need further investigation. We are, however, a bit overloaded currently trying to cut releases for modules. Next concat release (v8.1.0) should be cut very soon and will contain compatibility for Stdlib 9.x.x. I hope that will have some sort of impact on this issue. If not, I will come back to investigate further on the root of the problem. |
@LukasAud issue persists with concat 9.0.0 / stdlib 9.1.0 and puppet-agent 8.1.0 |
From Puppet Agent v8 onwards, a deferred value needs to be explicitly resolved.
This bug also causes failures with the official |
@smoeding can you check whether it works again with the changes that I proposed in my pull request? |
@LukasAud can you look into my PR? I think I found the issue, but wonder if I'm now just working around some puppet bug, as it used to work with Puppet 7. |
@LukasAud This bug currently prevents me from upgrading my Apache nodes to Puppet 8.x. Is there any progress in finding the root of the problem here? |
#775 - Explicitly resolve deferred values
With 9.0.1 (which includes my workaround) this is fixed for me. |
Describe the Bug
Concat v8 (and also prior) does not play well with Deferred function calls in Puppet 8. They do not get properly evaluated when using them as a content parameter. I first encountered this issue at voxpupuli/puppet-gitlab_ci_runner#167 - but tracked it down to concat / puppet v8.
Expected Behavior
Concat should be able to properly use Deferred function calls.
Steps to Reproduce
With docker.
Filename: Dockerfile-8
Commands:
docker build -f Dockerfile-8 -t concat8_puppet8 . && docker run -it concat8_puppet8 cat /tmp/file
Output:
Environment
Additional Context
I tried the same with puppet 7, which yields the correct result:
Dockerfile-7:
docker build -f Dockerfile-7 -t concat8_puppet7 . && docker run -it concat8_puppet7 cat /tmp/file
Output:
The text was updated successfully, but these errors were encountered: