Hi,

May not be the best solution but you can specify the command to run when 
starting a service, you could use that instead.

service {blah:
  start => 'test .... && service blah start'
}

Alternatively you might want to put logic in the init file, into a facter value 
or some other way.

Cheers
Den

> On 11 Jun 2015, at 16:13, Eddie Mashayev <eddie...@gmail.com> wrote:
> 
> Anyone?!
> 
>> On Wednesday, June 10, 2015 at 2:30:33 PM UTC+3, Eddie Mashayev wrote:
>> Hi All,
>> 
>> I want to check that my service "nails" running on all my servers only if 
>> file "/etc/NONAILS" not exists on this server.
>> 
>> If it exists don’t start this process, this file works like a flag.
>> 
>> I wrote script in puppet to check that and it works. 
>> 
>> 
>> 
>> Still it throes error when this file do exists:
>> 
>> 
>> 
>> [root@test ~]# puppet  agent -t
>> 
>> Info: Retrieving pluginfacts
>> 
>> Info: Retrieving plugin
>> 
>> Info: Loading facts
>> 
>> Info: Loading facts
>> 
>> Info: Caching catalog for test
>> 
>> Info: Applying configuration version '1433921081'
>> 
>> Error: Could not find command 'checkForFile'
>> 
>> Error: /Stage[main]/Check_service/Exec[checkForFile]/returns: change from 
>> notrun to 0 failed: Could not find command 'checkForFile'
>> 
>> Notice: /Stage[main]/Check_service/Service[nails]: Dependency 
>> Exec[checkForFile] has failures: true
>> 
>> Warning: /Stage[main]/Check_service/Service[nails]: Skipping because of 
>> failed dependencies
>> 
>> 
>> Question can I do it in cleaner way without throwing errors??
>> 
>>   
>> 
>> This is my script:
>> 
>> 
>> 
>> class check_service {
>> 
>>         service { "nails":
>>                 ensure => "running",
>>                 enable => true,
>>                 hasstatus  => false,
>>                 hasrestart => true,
>>                 require => exec['checkForFile'],
>>         }
>> 
>>         exec {"checkForFile":
>>                 path => "/usr/bin/",
>>                 onlyif => "test -e /etc/NONAILS",
>>         }
>> }
> -- 
> 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 view this discussion on the web visit 
> https://groups.google.com/d/msgid/puppet-users/6cc13de4-eeba-44d7-8bd6-15af22d775fc%40googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.

-- 
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 view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/571C832C-A48A-43D0-9179-6A937FE3800B%40gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to