4
# Gemfile:
source 'https://rubygems.org'
ruby '1.9.3'
gem 'sinatra'
gem 'figaro'
gem 'octokit'

# app.rb
require 'sinatra'
require 'json'
require 'cgi'
require 'octokit'
require 'figaro'

class Application < Sinatra::Base
  get '/' do
    'Hi'
  end
end

# config.ru
require './app'
$stdout.sync = true
run Application

推送时:
-----> Ruby/Rails app detected

但是,如果我删除figarogem 并重新推送它可以正常工作。

4

1 回答 1

3

您自己回答了:figaro 依赖于 Rails(参见 gemspec:https ://github.com/laserlemon/figaro/blob/master/figaro.gemspec )。Heroku通过查看他们的 Gemfile.lock 是否包含 Railties gem 来检测 rails 应用程序,这是 rails 的依赖项。

所以:yourapp -> figaro -> rails -> railties。

因此,将您的 gem 识别为 Rails 应用程序。如果不是为了帮助配置 Rails 应用程序,为什么还要使用 Figaro?

于 2013-10-18T08:34:10.647 回答