On Wed, 25 May 2016 12:58:52 +0200 Eystein Måløy Stenberg <[email protected]> wrote:
EMS> I think skipping promises with unexpanded variables is a safe and EMS> simple approach. EMS> I have seen too many issues with configurations (and thus services) EMS> being broken due to a variables not expanded for some reason. It is EMS> better to leave old and working configurations in this case. EMS> Unexpanded variables is a bug (either CFEngine or policy) and I don't EMS> think we should proceed, but flag the given promise as not kept. I agree, but also think the promise outcome should be a new one: "skipped". Or there should be no outcome at all. Otherwise, "promise not kept" is merging configuration language problems with agent problems like file permissions. I propose `mystring` to be a new "literal" string format that indicates variable expansion should not be done inside, for unusual cases where you really do need `$(foo)` in a Makefile etc. Usually this is 'mystring' in other languages but that's already taken in CFEngine. So when a string is specified with `mystring`, it can be skipped by the expander. But if it's inserted in a non-literal string, the "literal" flag won't be preserved, so there is only one level of complexity. Ted -- You received this message because you are subscribed to the Google Groups "dev-cfengine" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/dev-cfengine/874m9mrzq4.fsf%40lifelogs.com. For more options, visit https://groups.google.com/d/optout.
