[augeas-devel] Setting nodes with empty values (0.7 regression?)
David Lutterkort
lutter at redhat.com
Thu Jan 28 17:19:10 UTC 2010
On Thu, 2010-01-28 at 20:50 +1100, Matthew Palmer wrote:
> We've got an internal lens that, for various mostly-sane reasons, uses a key
> with no value (because we want to set modifiers on it in subkeys). In 0.5,
> we could just do:
>
> set /files/etc/x/y/z/A null
>
> And the save would succeed. When we reloaded the file, we'd see
>
> /files/etc/x/y/z/A (none)
>
> And all would be happy. In 0.7, however, attempting to do this results in
> the message:
>
> message = Failed to match
> ({ /[^\001-\004\t\n ,/A-Z\\]+/ } | { /A|L|U|K|P/ })({ /[^\001-\004\t\n ,/A-Z\\]+/ } | { /A|L|U|K|P/ })*
> with tree
> { "A" = "null" }
>
> Now, I expect this is due to the value matching code that got introduced a
> while ago (so I guess this is all my own fault, in a way), but I'm wondering
> if there's any way to work around this, or perhaps relax the requirement in
> sublenses that don't have a value regex at all?
Both augtool and the Augeas type for puppet have a 'clear' command that
you can use to set the value of a node to NULL - does that work for
you ?
> For reference, I can use "set /files/etc/x/y/z/A ''" to do the right thing
> in augtool, but I need to do this edit in the Puppet type, which maintains
> it's reputation for being epsilon short of being just too damned painful to
> use.
Anything I can do to make it more usable ?
David
More information about the augeas-devel
mailing list