[wpkg-users] Setting a variable in a profile doesnt over-rides that set in a package

Ronny ladiko at web.de
Thu Jan 26 23:15:55 CET 2012



Am 26.01.2012 23:03, schrieb Ronny:
>
>
> Am 26.01.2012 22:12, schrieb Rainer Meier:
>> Hi Ronny,
>>
>> On 26.01.2012 18:58, Ronny wrote:
>>> does someone else know why the variable isn't overriden by the 
>>> profile-assigned
>>> variable and it is still using the package-assigned variable? I 
>>> don't find the
>>> reason.
>>
>> Initially this was changed intentionally for WPKG 1.3.0 since 
>> variable expansion in WPKG 1.2.0 was not clearly defined and could 
>> yield various results depending on package and profile structure. 
>> Unfortunately I thought by myself it would be better to override 
>> host/profile variables by packages while some people seem to prefer 
>> overriding package variables on host/profile level.
>>
>> I re-thought about the issue and meanwhile I tend to agree that this 
>> is often more comfortable.
>>
>> So I have reverted it (while keeping the implementation which clearly 
>> defines expansion order now). Results are available on SVN. WPKG 
>> version 1.3.1-RC2. See entire discussion in 
>> <http://bugzilla.wpkg.org/show_bug.cgi?id=262>.
>>
>> Moreover I've implemented checks to allow checking for 
>> empty/undefined variables. So one could still prevent package/host to 
>> overwrite a package variable if required.
>>
>> I hope this clarifies the situation.
>>
>>
>> br,
>> Rainer
> Hello Rainer,
>
> this is a good news. What about a config-variable which defines the 
> order in which they are resolved? something like:
>
> <param name='VariableResolveOrder' value='host,profile,package' />
>
> or at least something like <param name='OverrideVariablesBy' 
> value='package' />
>
> Regards and thank you
> Ronny
Hello Rainer,

I took a look at the named topic. So the current order for variables in 
1.3.0 is: Host, Profile, Package

I guess every package and host has to be assigned to a profile. 
Variables are mostly *used* in packages, but if the package itself 
define a "general" variable, it doesnt matter if i want to exclude some 
hosts by using a different variable there. So for 1.3.0 the solution 
would be to only define the variable in profiles.

So i need to have a general profile which defines a standard value and 
for the "special" hosts, i need to define a second profile *after* the 
general profile, which depends on the general profile, but defines 
another value for this variable. But whenever i assign a value in a 
package, there is no way to override it? In my mind this is not the way 
it should work. If it works like that, i would never be able to define a 
variable variable inside a package, strange thing...

So i will stay with 1.3.0 for the moment and will define the changing 
variable in the profiles only...

Regards Ronny



More information about the wpkg-users mailing list