Re: [Puppet Users] Newbie basic parameterized class usage question

2013-10-02 Thread Cory Stoker
Not sure if you got help or not but that error is telling you that
filesys_group_acl is not a resource type.  This is because you created
it as a class and not a defined resource type.  Defined types use the
"define" keyword instead of the "class" keyword.

http://docs.puppetlabs.com/puppet/3/reference/lang_defined_types.html

HTH

-Cory

On Tue, Oct 1, 2013 at 9:17 AM, Patrick Spinler  wrote:
>
> I'd like to create and call a parameterized class from another class,
> both in modules.  Here's what I'm trying to do:
>
> First, my module path:
>
> ap00375@ROFTMA901A ~ $ sudo puppet apply --configprint modulepath
> /modules:/shares/nfs/unixnoarch/config/puppet:/shares/nfs/unixnoarch/config/puppet/linux
>
> Here, you can see the two modules in question:
>
> ap00375@ROFTMA901A ~ $ find /shares/nfs/unixnoarch/config/puppet/ -name
> 'init.pp'
> /shares/nfs/unixnoarch/config/puppet/tws_node/manifests/init.pp
> /shares/nfs/unixnoarch/config/puppet/filesys_group_acl/manifests/init.pp
>
> Here's the contents of tws_node's init.pp:
>
> class tws_node {
>
>   $userhome="/opt/IBM/TWS"
>
>   filesys_group_acl { "ibmtm_acl_group_ibmtm" :
> #subscribe  => File["$userhome"],
> dir => $userhome,
> group => "ibmtm",
>   }
>
> }
>
> And the contents of filesys_group_acl's init.pp (the parameterized one)
>
>
> class filesys_group_acl ($dir = '', $group = '') {
>
>   exec { "apply_acl_${title}":
> unless => "/usr/bin/getfacl $dir 2>/dev/null | /bin/grep
> group:$group: > /dev/null",
> command=> "/usr/bin/setfacl -R -m group:$group:rwx -m
> default:group:$group:rwx $dir",
>   }
>
> }
>
>
> And it's complaining about the parameterized class, filesys_group_acl:
>
> ap00375@ROFTMA901A ~ $ sudo puppet apply --noop --verbose  --execute
> "include tws_node"
> Error: Puppet::Parser::AST::Resource failed with error ArgumentError:
> Invalid resource type filesys_group_acl at
> /shares/nfs/unixnoarch/config/puppet/tws_node/manifests/init.pp:10 on
> node roftma901a.mayo.edu
> Error: Puppet::Parser::AST::Resource failed with error ArgumentError:
> Invalid resource type filesys_group_acl at
> /shares/nfs/unixnoarch/config/puppet/tws_node/manifests/init.pp:10 on
> node roftma901a.mayo.edu
>
>
> Any help, please?  What am I missing?
>
> Thanks,
> -- Pat
>

-- 
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 puppet-users+unsubscr...@googlegroups.com.
To post to this group, send email to puppet-users@googlegroups.com.
Visit this group at http://groups.google.com/group/puppet-users.
For more options, visit https://groups.google.com/groups/opt_out.


[Puppet Users] Newbie basic parameterized class usage question

2013-10-01 Thread Patrick Spinler

I'd like to create and call a parameterized class from another class,
both in modules.  Here's what I'm trying to do:

First, my module path:

ap00375@ROFTMA901A ~ $ sudo puppet apply --configprint modulepath
/modules:/shares/nfs/unixnoarch/config/puppet:/shares/nfs/unixnoarch/config/puppet/linux

Here, you can see the two modules in question:

ap00375@ROFTMA901A ~ $ find /shares/nfs/unixnoarch/config/puppet/ -name
'init.pp'
/shares/nfs/unixnoarch/config/puppet/tws_node/manifests/init.pp
/shares/nfs/unixnoarch/config/puppet/filesys_group_acl/manifests/init.pp

Here's the contents of tws_node's init.pp:

class tws_node {

  $userhome="/opt/IBM/TWS"

  filesys_group_acl { "ibmtm_acl_group_ibmtm" :
#subscribe  => File["$userhome"],
dir => $userhome,
group => "ibmtm",
  }

}

And the contents of filesys_group_acl's init.pp (the parameterized one)


class filesys_group_acl ($dir = '', $group = '') {

  exec { "apply_acl_${title}":
unless => "/usr/bin/getfacl $dir 2>/dev/null | /bin/grep
group:$group: > /dev/null",
command=> "/usr/bin/setfacl -R -m group:$group:rwx -m
default:group:$group:rwx $dir",
  }

}


And it's complaining about the parameterized class, filesys_group_acl:

ap00375@ROFTMA901A ~ $ sudo puppet apply --noop --verbose  --execute
"include tws_node"
Error: Puppet::Parser::AST::Resource failed with error ArgumentError:
Invalid resource type filesys_group_acl at
/shares/nfs/unixnoarch/config/puppet/tws_node/manifests/init.pp:10 on
node roftma901a.mayo.edu
Error: Puppet::Parser::AST::Resource failed with error ArgumentError:
Invalid resource type filesys_group_acl at
/shares/nfs/unixnoarch/config/puppet/tws_node/manifests/init.pp:10 on
node roftma901a.mayo.edu


Any help, please?  What am I missing?

Thanks,
-- Pat



signature.asc
Description: OpenPGP digital signature