我在玩New Relic,想提醒New Relic注意部署。我可以在命令行中使用以下命令来完成此操作:
curl -H "x-api-key:MY_API_KEY" -d "deployment[application_id]=MY_APP_ID "https://api.newrelic.com/deployments.xml我应该在capfile中添加什么才能让capistrano在部署时运行上面的curl?
我知道我可以安装新的遗迹gem,并在Capfile中需要它,但我想避免依赖。
发布于 2012-12-02 08:16:27
您可以像这样使用"run“命令:
task :foo, :hosts => "my.example.com" do
run "curl <your info here>"
end"run“命令字符串是典型的Ruby,因此可以使用任何字符串分隔符:
run %{curl -H "x-api-key:MY_API_KEY" -d ... }您可以像往常一样嵌入参数:
key = "xyz"
run %{curl -H "x-api-key:#{key}" -d ... }Frederick钟的评论中有很好的信息:
运行“
”命令将在所有远程主机上运行它。我会使用run_locally,甚至只使用。
如果您想知道每个主机是否部署,请使用"run“;每个主机将自己的信息发送到New Relic。
如果您只想知道本地脚本是否已运行,而不想知道每个远程主机是否已部署,请使用"run_locally“。
发布于 2013-03-30 06:26:04
https://stackoverflow.com/questions/13662243
复制相似问题