On Mon, 2008-09-08 at 10:49 -0400, Bryan Kearney wrote:
> David Lutterkort wrote:
> >
> > Yeah, Augeas should be able to tell the caller whether changes were made
> > or not, so that the plugin can suppress spurious reports. This could be
> > done in a number of ways:
> >
> > 1. Indicated through the return value of individual calls like
> > aug_set, aug_insert etc.
> > 2. Through the return value of aug_save
> > 3. Through some metadata entries underneath /augeas
> >
> > Bryan, what would be the easiest for you to integrate into the plugin ?
> > Actually, option (1) won't really help you in the scenario of 'rm /path;
> > set /path value' since it will always look like a change, even if there
> > is none in the end.
>
> I almost need a "dry run" model. Currently, puppet seems to follow a
> model for each property of "Get the current value, if different, execute
> the code to sync it up". So, (I think) I would need to be able to
> execute the code to see if I need to execute it :(
True .. unless you want to implement the logic to see if a change to the
tree actually changes the underlying file yourself ;)
If you want to know at the tree-level if anything changed, you can query
that with aug_get beforehand, but that's not really what the user is
interested in. If they give you the commands
rm /foo
set /foo/bar 1
set /foo/JarJar Binks
each of the commands will make a change to the tree, even if the net
result is no change to the underlying file. That's the situation I was
wondering about with the 3 options above; you'd really want to report a
change only when the underlying file is actually changed. And there's no
way to know that until you actually go to save the file.
David
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"Puppet Users" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at
http://groups.google.com/group/puppet-users?hl=en
-~----------~----~----~----~------~----~------~--~---