是否有使用heroku api(rails)的示例?

时间:2012-10-25 00:03:26

标签: ruby-on-rails ruby api heroku

我正在尝试使用heroku.api。因为heroku gem已被折旧。

我发现的是一种令人费解的狗早餐 获取api gem,在一个站点上验证密钥,在另一个站点上使用curl命令。然后调用方法..

我的应用程序在heroku上运行。我怀疑它知道这一点。为什么让我在他们为他们设计的系统中向我们跳过箍。

无论如何..

是否有人知道有关如何使用此API执行操作的教程?就像获取堆栈(我在代码中)或获取工作人员/ dyno的数量我已经运行?真的任何有效的东西......只是这样我才能看到如何让它发挥作用

2 个答案:

答案 0 :(得分:5)

好的,首先,不推荐使用heroku gem,但heroku toolbelt的工作方式几乎相同。除非您在应用程序中以编程方式执行此操作,否则无需转换为直接API调用。如果你这样做,请继续阅读:

使用heroku-api包装器。

gem install heroku-api

https://dashboard.heroku.com/account

获取您的API_KEY

如果您想获取名为“your-app-here”的应用程序堆栈

require 'heroku-api'
heroku = Heroku::API.new(:api_key => YOUR_API_KEY)
puts heroku.get_app('your-app-here').body["stack"]

或者告诉您当前有多少个进程:

total_processes =  heroku.get_ps('your-app-here').body.count

扩展到2个网络流程:

heroku.post_ps_scale('your-app-here', 'web', '2')

您需要的所有信息:https://github.com/heroku/heroku.rb

答案 1 :(得分:0)

也许我误解了你要做的事情,但我根据他们的文档做了以下事情。

curl -H "Accept: application/json" -u :SECRET -X GET https://api.heroku.com/apps

https://api-docs.heroku.com/apps

这将返回一个json对象:

[
  {
    "id": 000000,
    "name": "example",
    "create_status": "complete",
    "created_at": "2011/01/01 00:00:00 -0700",
    "stack": "bamboo-ree-1.8.7",
    "requested_stack": null,
    "repo_migrate_status": "complete",
    "slug_size": 1000000,
    "repo_size": 1000000,
    "dynos": 1,
    "workers": 0
  }
]