I'm confused at your snippets because they don't seem right. For instance,
you show:

#log_special::log_vars: "test"
$log_vars=log_vars,

But that doesn't look syntactically correct... I'm pretty sure that would
fail to compile.

Anyway, I think if this really is what your yaml looks like:

log_special::log_vars:
    a: - 'jklkl'
       - 'test'

Then in your pp manifest, you'd want to have something like this:

$log_vars = hiera_hash('log_special::log_vars', false)

if ($log_vars) {

  $array = $log_vars['a']

}


And then $array should be an array containing 'jklkl' and 'test'.

Chris


On Thu, Sep 19, 2013 at 12:12 PM, Jeremiah Jester
<[email protected]>wrote:

> Chad,
>
> Thanks for the reply. I am using /etc/puppet/heiradata for the
> location of all my hiera files.
>
> [root@puppet-master-t1 puppet]# ls hieradata/
> defaults.yaml  global.yaml  groups  hosts
>
> Referencing non hashed/array variables from init.pp works. However, I
> cannot get the array variable $log_status2 - it is being returned as a
> string. I've included a snip of my init.pp file with comments to give
> more details. I've looked at the limited hiera docs included the one
> you sent, I'm clearly doing something wrong.
>
> Appreciate the help.
> JJ
>
> class log_special
> (
> #log_special::log_vars: "test"
> $log_vars=log_vars,
>
> #log_special::log_vars2:
> #    b: 'fdsa'
> #    c: 'fdsaaaa'
> $log_vars2=hiera_hash('log_vars'),
> $log_vars2=$log_vars2['b']
> )
> {
>   exec{"log_vars": command=> "/bin/echo '${log_vars}'", logoutput=>true;}
>   #Debug: Executing '/bin/echo 'test'
>   exec{"log_vars2": command=> "/bin/echo '${log_vars2}'", logoutput=>true;}
>   #Debug: Executing '/bin/echo 'bfdsacfdsaaaa''
> }
>
>
> On Thu, Sep 19, 2013 at 10:02 AM, Chad Huneycutt
> <[email protected]> wrote:
> > I'm pretty sure we need more information than that.
> >
> > 1. Is puppet using the proper hiera.yaml?  The command line client at
> > least used to use a different config than puppet (/etc/hiera.yaml vs
> > /etc/puppet/hiera.yaml).  It sounds like you have this right, if you
> > are able to pull basic variables from your data files.
> >
> > 2. Are you sure that hiera is not working?  What have you tried, and
> > what happened when you tried it?
> >
> > Have you looked at http://docs.puppetlabs.com/hiera/1/index.html ?
> > There are examples there.
> >
> > - Chad
> >
> > On Thu, Sep 19, 2013 at 11:53 AM, Jeremiah Jester
> > <[email protected]> wrote:
> >> I've been able to retrieve data from hiera via init.pp from a basic
> >> variable. However, when i try and pull an associative array from hiera,
> I'm
> >> unable to get the data. I've verified that my yaml syntax is correct by
> >> running hiera via the command line:
> >>
> >> *hiera yaml file
> >>
> >> log_special::log_vars:
> >>     a: - 'jklkl'
> >>        - 'test'
> >>
> >> *heira via cmd line
> >> [jjest@puppet-master-t1 templates]$ hiera log_special::log_vars
> >> hostname=puppet-client-t1
> >> {"a"=>["jklkl", "test"]}
> >>
> >>
> >> Anyone know how to pull and parse this from init.pp? Precise code would
> be
> >> helpful.
> >>
> >> Thanks,
> >> JJ
> >>
> >> --
> >> You received this message because you are subscribed to the Google
> Groups
> >> "Puppet Users" 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].
> >> Visit this group at http://groups.google.com/group/puppet-users.
> >> For more options, visit https://groups.google.com/groups/opt_out.
> >
> >
> >
> > --
> > Chad M. Huneycutt
> >
> > --
> > You received this message because you are subscribed to a topic in the
> Google Groups "Puppet Users" group.
> > To unsubscribe from this topic, visit
> https://groups.google.com/d/topic/puppet-users/3A5F9Wh6RdY/unsubscribe.
> > To unsubscribe from this group and all its topics, send an email to
> [email protected].
> > To post to this group, send email to [email protected].
> > Visit this group at http://groups.google.com/group/puppet-users.
> > For more options, visit https://groups.google.com/groups/opt_out.
>
> --
> You received this message because you are subscribed to the Google Groups
> "Puppet Users" 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].
> Visit this group at http://groups.google.com/group/puppet-users.
> For more options, visit https://groups.google.com/groups/opt_out.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" 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].
Visit this group at http://groups.google.com/group/puppet-users.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to