【问题标题】:How to programatically create Hobby of type `Dyno` from Heroku API (Preferrably with Ruby)?如何从 Heroku API(最好使用 Ruby)以编程方式创建类型为“Dyno”的爱好?
【发布时间】:2017-11-09 01:38:46
【问题描述】:

当我尝试使用 heroku app api 创建Dyno 时,以下方法返回422 HTTP 状态代码:

  client = PlatformAPI.connect_oauth(API_KEY)
  dyno_interface = PlatformAPI::Dyno.new(client)
  begin
    dyno_interface.create('my-cool-app', {"command" => " bin/rails server -p 
  $PORT -e $RAILS_ENV", "size" => "hobby", "type"=> "run"})
  rescue => e
   resp = e.response
  end

失败并显示消息:Requested type Hobby is not available. Please use Free.

如果重要的话,我已经尝试过不同版本的 Ruby 客户端(版本 2.0.0)。此外,我的应用目前没有 Procfile,但我不确定这是否重要。

TLDR:如何通过 Heroku API(最好使用 Ruby)自动创建 Hobby 类型的 Dynos。

【问题讨论】:

  • 看到一些地方暗示可能无法使用工具带以外的任何东西设置测功机类型,但没有任何结论:github.com/heroku/heroku-dyno-types/blob/… 或者,它可能是可能的,但必须创建测功机第一个?github.com/heroku/hatchet/blob/…
  • 这可能是付款方式问题,而不是程序化问题。除非您为某个应用设置了信用卡或其他付款方式,否则我相信它不会让您使用除免费测功机以外的任何东西。
  • @geemus 该帐户之前设置了付款信息和爱好测功机。不知道为什么它仍然失败。
  • 我寻求了额外的反馈,我认为问题可能是 Heroku 不允许在同一个应用程序上混合爱好和免费测功机。因此,如果您的网络 dynos 是免费的,那么您的一次性产品也应该是免费的。当您尝试在 Ruby 和 bash 中编写脚本时,Web dynos 层是否可能以其他方式发生变化?此外,我收集了一些旧版本的 CLI 可能在这里做了一些“神奇”的事情,这可能会导致您看到的行为。您使用的是最新的 CLI 吗?
  • 据我所知,CLI 版本是最新的。我猜想混合免费和爱好测功机可能是一个问题,因为它似乎创建了一个未使用的免费工人测功机。但是,从命令行更新时不会导致问题。感谢您的帮助。

标签: heroku heroku-api


【解决方案1】:

从未弄清楚如何从 Ruby 更改 dyno 类型,因此我们最终从 ruby​​ 调用 bash/Heroku CLI。

如果有人知道如何从 Ruby 中做到这一点,仍然很感兴趣。

【讨论】:

    猜你喜欢
    • 2011-03-12
    • 2018-01-11
    • 1970-01-01
    • 2016-09-11
    • 2019-01-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-02
    相关资源
    最近更新 更多