2013-01-23 11 views

答えて

12

execでlinux sleepコマンドを使用し、Webサービスの後に実行するようにステージングすることができます。次のようなものです:

exec { 'wait_for_my_web_service' : 
    require => Service["my_web_service"], 
    command => "sleep 10 && /run/my/command/to/get/results/from/the/web/service", 
    path => "/usr/bin:/bin", 
} 
1

私はローカルでのみ待機+設定可能な再試行を行います。

define wait_for_port ($protocol = 'tcp', $retry = 10) { 
    $port = $title 
    exec { "wait-for-port${port}": 
    command => "until fuser ${port}/${protocol}; do i=\$[i+1]; [ \$i -gt ${retry} ] && break || sleep 1; done", 
    provider => 'shell', 
    } 
} 

wait_for_port { '3000': } 
関連する問題