Issue #9848 has been updated by Garrett Honeycutt.

Bump.

This came up on the puppet-users list

<https://groups.google.com/group/puppet-users/browse_thread/thread/30e491e4888ef219/1694050812ad8e89?lnk=gst#1694050812ad8e89>
----------------------------------------
Bug #9848: Variable interpolation in class parameters seems random
https://projects.puppetlabs.com/issues/9848#change-80611

Author: Carlos Sanchez
Status: Accepted
Priority: Normal
Assignee: 
Category: parameterized classes
Target version: 3.x
Affected Puppet version: 2.7.1
Keywords: parameter variable class interpolation evaluation BD
Branch: 


In class parameters, things like x="x", y="y${x}" don't always evaluate right 
(y="yx"), seems random. I'm using 2.7.1

<pre>
class test1(
    $servicex = "sonar",
    $logfoldera = "${homex}/logs",
    $logfoldere = "${homey}/logs",
    $logfolderh = "${homez}/logs",
    $logfolder = "${homex}/logs",
    $homex = "/var/${servicex}",
    $homey = "/var/${servicex}",
    $homez = "/var/${servicex}") {

    notice($homex)
    notice($homey)
    notice($homez)
    notice("-----")
    notice($logfoldera)
    notice($logfoldere)
    notice($logfolderh)
}
</pre>

output :

<pre>
notice: Scope(Class[Test1]): /var/sonar
notice: Scope(Class[Test1]): /var/sonar
notice: Scope(Class[Test1]): /var/sonar
notice: Scope(Class[Test1]): -----
notice: Scope(Class[Test1]): /var/sonar/logs
notice: Scope(Class[Test1]): /logs
notice: Scope(Class[Test1]): /logs
</pre>


Note the last two messages should print "/var/sonar/logs"
Ordering the paramenters in the order they are needed gets the same result.

Just by changing the name of the parameters from class test1 to test2 I get 
different evaluations of the variables, one is right and two are wrong, you can 
see that in [this gist](https://gist.github.com/1250837)

Commented on [the user 
list](https://groups.google.com/d/topic/puppet-users/x_BCxE6SQcM/discussion)



-- 
You have received this notification because you have either subscribed to it, 
or are involved in it.
To change your notification preferences, please click here: 
http://projects.puppetlabs.com/my/account

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Bugs" 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-bugs?hl=en.

Reply via email to