On Mon, May 07, 2012 at 12:01:12PM -0700, Aleksey Tsalolikhin wrote:
> On Sat, May 5, 2012 at 4:12 PM, Victor Balada Diaz <[email protected]> wrote:
> > Hello,
> >
> > I'm trying to write a policy (attached at the end) to play with
> > resolv.conf. For
> > it to work i need to use $(this) context and i can't understand why and
> > when should
> > i use $(this).
>
> Dear Victor,
>
> Use the "this" context to use Special Variables available to you by
> invoking the
> special context "this".
>
> This is documented at
>
> http://cfengine.com/manuals/cf3-Reference#Variable-context-this
>
> Please read that and then if you still have questions, let us know.
Hello Alskey,
Thanks a lot for your answer. Probably i wasn't clear on my first question. I've
already read that part of the documentation, but:
Note that every unqualified variable is automatically considered to be in
context ‘this’, so that a reference to the variable $(foo) is identical to
referencing $(this.foo)
In theory this:
edit_defaults => no_backup,
edit_line =>
resolvconf("@($(this.cnf)[domains])",
"@($(this.cnf)[dns_servers])");
Should be the same as this:
edit_defaults => no_backup,
edit_line => resolvconf("@($(cnf)[domains])",
"@($(cnf)[dns_servers])");
In my example isn't. One (the second) fails, and one (the first) works.
A previous paragraph says:
It is context dependent and not universally meaningful or available, but
provides a context for variables where one is needed (such as when passing the
value of a list variable into a parameterized edit_line promise from a file
promise)
Ie: this could mean anything.
My question is: When you MUST use $(this)?
Regards.
Victor.
--
La prueba más fehaciente de que existe vida inteligente en otros
planetas, es que no han intentado contactar con nosotros.
_______________________________________________
Help-cfengine mailing list
[email protected]
https://cfengine.org/mailman/listinfo/help-cfengine