voxpupuli / puppet-redis

Puppet Module to manage Redis
https://forge.puppet.com/puppet/redis
Apache License 2.0
40 stars 183 forks source link

Allow deferrables for masterauth & requirepass #476

Closed ThiefMaster closed 1 year ago

ThiefMaster commented 1 year ago

This allows getting the redis password (and/or master password) from an external secret storage using Puppet's Deferred mechanism.

I don't know if there's some way to use epp() in case deferrable_epp() doesn't exist in order to avoid bumping the stdlib requirement...

closes #473

alexjfisher commented 1 year ago

What version of Puppet are you using? From what I've read, this shouldn't be required since Puppet 7.17??

Remove compiler errors for deferred function mismatched types Before, it was not possible to compile a catalog that used a Deferred value for a typed parameter class. The compiler would give an error message stating that the type expected did not match Deferred. Now, the compiler inspects the Deferred class's return type and ensures it matches the class parameter type. If the Deferred function has no return type, the compiler warns that it cannot guarantee whether the type adheres to the type the class specifies

See https://tickets.puppetlabs.com/browse/PUP-11518

But... I've not tried yet and perhaps there are still some issues.

traylenator commented 1 year ago

Using 7.12 at this environment - it is indeed time we upgraded.

ThiefMaster commented 1 year ago

In any case, even without the type requirement failing, I think the deferrable_epp() is required for it to work.