Hello Reno -

Use the "unless" exec parameter

http://reductivelabs.com/trac/puppet/wiki/TypeReference#unless

With unless, (from the page): "If this parameter is set, then this exec 
will run unless the command returns 0."

Regards,
-Roy

Reno wrote:
> opssss sorry I didn't see too! :-)
>
> Btw
>
> onlyif => "/usr/bin/apt-get -q -q update"
>
> say  to do that just after the apt-get command is lunched  but what if
> I want the contrary ... to run the command only if the apt-get fail to
> run?
>
>
>
> On Oct 21, 6:02 pm, Roy Nielsen <r...@lanl.gov> wrote:
>   
>> oops, quote in the wrong place, try:
>>
>> exec { "touch /home/ciao":
>>       cwd => "/home",
>>       path => "/usr/bin:/usr/sbin:/bin",
>>       onlyif => "/usr/bin/apt-get -q -q update"
>>
>> }
>> Reno wrote:
>>     
>>> err: Could not retrieve catalog: Could not parse for environment
>>> production: Syntax error at 'cwd'; expected '}' at /etc/puppet/
>>> manifests/classes/source.list.pp:24
>>>       
>>> On Oct 21, 5:45 pm, Roy Nielsen <r...@lanl.gov> wrote:
>>>       
>>>> Use the onlyif parameter of the exec type:
>>>>         
>>>> exec { "touch /home/ciao:"
>>>>      cwd => "/home",
>>>>      path => "/usr/bin:/usr/sbin:/bin",
>>>>      onlyif => "/usr/bin/apt-get -q -q update"
>>>>         
>>>> }
>>>>         
>>>> Note: the onlyif parameter only works this way with the
>>>> "exec" type (works a bit differently for the augeas type)
>>>> The unless parameter only works with exec at this point.
>>>>         
>>>> Regards,
>>>> -Roy
>>>>         
>>>> Reno wrote:
>>>>         
>>>>> Yes I agree,
>>>>> for example what you will do if I want to run the touch command only
>>>>> if /usr/bin/apt-get -q -q update has run without error?
>>>>>  exec { subscribe-echo:
>>>>>                command     => "/usr/bin/apt-get -q -q update",
>>>>>                logoutput   => false,
>>>>>                refreshonly => true,
>>>>>                subscribe   => file["/etc/apt/sources.list"]
>>>>>        }
>>>>>  exec { "touch /home/ciao":
>>>>>     cwd => "/home",
>>>>>     path => "/usr/bin:/usr/sbin:/bin"
>>>>> }
>>>>> On Oct 21, 4:56 pm, Brice Figureau <brice-pup...@daysofwonder.com>
>>>>> wrote:
>>>>>           
>>>>>> On Wed, 2009-10-21 at 08:53 -0700, Reno wrote:
>>>>>>             
>>>>>>> hi and thanks for the help
>>>>>>> I use a more simple ( to me ) but effective solution:
>>>>>>>  exec { "touch /home/ciao":
>>>>>>>     cwd => "/home",
>>>>>>>     path => "/usr/bin:/usr/sbin:/bin"
>>>>>>> }
>>>>>>>               
>>>>>> You can't guarantee this exec won't run _before_ your other exec if you
>>>>>> don't add strict ordering metaparameters (require/before).
>>>>>> --
>>>>>> Brice Figureau
>>>>>> Follow the latest Puppet Community evolutions onwww.planetpuppet.org!
>>>>>>             
> >
>   


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
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