Hello,
I have a use case where I'm trying to set a default variable for a defined
type parameter that's unfortunately fairly nested. Perhaps there's an
obvious solution for this that I'm missing, but I'm not finding it.
In my specific use case, we're trying to have the puppetlabs-lvm class
managed wholly in hiera, with an example as follows:
lvm::volume_groups:
Volume00:
physical_volumes:
- /dev/sda3
logical_volumes:
root:
size: 2G
mountpath: /
fs_type: xfs
usr:
size: 4G
mountpath: /
options: defaults,nodev
fs_type: xfs
And so forth. Unfortunately, it gets cumbersome setting fs_type to xfs for
every single mount, especially when spread across multiple yamls.
Unfortunately, the puppetlabs-lvm logical_volume.pp is a defined type that
defaults fs_type to ext4, and I'm not sure how to override that as a
default without having to enter it in for every single filesystem.
Is there any way to do this, or does it need to be done specifically for
every single filesystem? I think it's a bit too nested for a wrapper class
that calls create_resources('lvm::volume_groups', $my_filesystems,
$my_defaults) or similar, I think I'd have to instead create at least two
wrappers which I'd rather avoid and keep this as simple as practical.
So, I suppose in summary the question is if there's any way to effectively
globally override a defined type's parameter default value solely in hiera
and without writing wrapper classes?
Thanks,
-stefan
--
You received this message because you are subscribed to the Google Groups
"Puppet Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/puppet-users/ea6f4c9e-b4dc-4ab5-ba0a-7fe17a688ce5n%40googlegroups.com.