On Tuesday, December 11, 2012 7:16:17 AM UTC-5, Javier Arduini wrote:

> Hi all, im trying to make a module to add a line at the end of the 
> /etc/profile file to redirect all the loggins to a remote server. It´s 
> something like this:
>
> class syslog {
>
> define append_if_no_such_line ($file, $line) {
>              exec { "Line1" :
>              command => "/bin/echo '$line' >> '$file'",
>              unless => "/bin/grep -Fx '$line' '$file'",
>              alias => "Line1",
>              }
> }
>
> append_if_no_such_line {
>          "modify.profile.redhat" :
>           file => "/etc/profile",
>           line =>  " PROMPT_COMMAND='history -a >(tee -a ~/.bash_history | 
> logger -t "USER: $USER[$$] SSH: $SSH_CONNECTION $PWD")'  ",
>          }
>
> }
>
> The problem is that the line i want to add have a lot of " " and ' ' and 
> puppet cut the line and give me an error of execution. 
> Anyone know how to pass this line: PROMPT_COMMAND='history -a >(tee -a 
> ~/.bash_history | logger -t "USER: $USER[$$] SSH: $SSH_CONNECTION $PWD")'  
> as a single line in puppet? 
> Thanks a lot, sorry about my english
> Javier Arduini
>

Javier,

Your English is fine, but your quotes are not. :) I ran a few different 
tests and found that quoting the line value as follows will result in the 
line actually being appended to /etc/profile:

  line => 'PROMPT_COMMAND="history -a >(tee -a ~/.bash_history | logger -t 
\"USER: $USER[$$] SSH: $SSH_CONNECTION $PWD\")" ',

--
Peter

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/puppet-users/-/DBPzXfAJ0TUJ.
To post to this group, send email to puppet-users@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.

Reply via email to