# puppet -ddd foo1.pp Could not parse for environment production: Syntax error at 'set /files/etc/services/service-name[port = '1002'] app_tcp'; expected ']' at /data/foo1.pp:5
I don't believe that works... On Wed, Jun 2, 2010 at 10:59 PM, Rob McBroom <mailingli...@skurfer.com>wrote: > On Jun 2, 2010, at 4:03 PM, Christopher Johnston wrote: > > > Has anyone attempted to use the augeas type to add a service? I got the > service to add no problem, but having some difficulties to get the match to > work to prevent duplicate entries from adding. Since the service-name[*] > has endless number of entries I used a glob so it checks all the entries but > that does not seem to work. Any ideas on how to proceed? > > > > augeas { app_tcp': > > context => '/files/etc/services', > > changes => ['insert service-name after service-name[last()]', > > 'set service-name[last()] app_tcp', > > 'set service-name[last()]/port 1002', > > 'set service-name[last()]/protocol tcp'], > > onlyif => "match service-name[.*] != '[port = 1002][protocol = > tcp]'" > > } > > I'm no expert, but I've messed with Augeas a bit and you can make it harder > than it needs to be without even trying. I haven't done anything in > `/etc/services`, but I had a similar issue with `sudoers`. A trick to keep > in mind is that if you set something on a path that doesn't exist, Augeas > will create it. So, if you can find something that makes an item unique, you > can use that to specify a path. In this case, the port number will probably > work. > > augeas { 'app_tcp': > context => '/files/etc/services', > changes => [ > "set /files/etc/services/service-name[port = '1002']/port 1002" > "set /files/etc/services/service-name[port = '1002'] app_tcp" > "set /files/etc/services/service-name[port = '1002']/protocol tcp" > "set /files/etc/services/service-name[port = '1002']/#comment foo" > ], > } > > This should create the line in `/etc/services` if it doesn't exist, but if > it does exist and nothing has changed, Puppet won't do anything to the line > (which is generally what you want). Setting the “name” doesn't seem to work > until after the thing exists, which is why it appears second on the list. > > -- > Rob McBroom > <http://www.skurfer.com/> > > It's not that I think guns, drugs, prostitution, swimming, eating and > reading should be legal. It's just that no one on Earth has the authority to > make them illegal. > > > -- > You received this message because you are subscribed to the Google Groups > "Puppet Users" group. > To post to this group, send email to puppet-us...@googlegroups.com. > To unsubscribe from this group, send email to > puppet-users+unsubscr...@googlegroups.com<puppet-users%2bunsubscr...@googlegroups.com> > . > For more options, visit this group at > http://groups.google.com/group/puppet-users?hl=en. > > -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-us...@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.