-
-
Notifications
You must be signed in to change notification settings - Fork 32
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
augeas
should not be the default provider for sshkey
#106
Comments
When I look at just the |
My opinion is that 300-2000x performance decrease should not ever be the default. If people want additional features, they should have to opt in to it. @joshcooper even if we remove the |
According to #55 this provider is currently broken; which is odd as it didn't explode for me, (but it wasn't making any changes so maybe I missed the broken code path.) Also quite scary how it monkey patches the original type...
Maybe this made slightly more sense at the time, when the type was in |
If there are no default providers,, then puppet magically picks the provider with the "most specificity" https://github.com/puppetlabs/puppet/blob/a423af825d1e87a3158cd68d630e77352e9a5454/lib/puppet/provider.rb#L336-L345 The whole specificity thing is fragile and dumb. Refactoring a provider to use a new base provider can cause the specificity to change, thereby causing a different provider to be chosen.
Probably because it used to be in core and I'm guessing predated this provider? TBH I don't think either provider should be the |
This is also strange. I would expect augeas to be much faster than parsed file, unless augeas is accidentally loading the entire |
puppet-augeasproviders_ssh/lib/puppet/provider/sshkey/augeas.rb Lines 82 to 97 in 5d20cee
hashed hostnames) with a large number of resources. Looks like it gets called 3 times per sshkey catalog resource.
With 1000 |
I started using this module for the
ssh_config
type, but meanwhile it became the default provider forsshkey
(a type from thesshkeys_core
module). This has had a hideous impact on performance.In my testing, 2000 resources take 330 seconds to enforce (even with no changes), compared to 0.91 seconds if I force the provider back to
parsed
.It's not uncommon to manage a large number of
sshkey
resources, so I think using this module to managesshkey
resources should be opt-in, (or thesshkey
provider moved into its own module).The text was updated successfully, but these errors were encountered: