source 'http://rubygems.org'

gem 'rails'
gem 'json'
gem 'json_pure'
gem 'parseconfig', '~> 1.0.2'
gem 'xml-simple'
gem 'rack'
gem 'regin'
gem 'open4'
gem 'systemu'
gem 'mongoid'
gem 'bson'
gem 'bson_ext'
gem 'pry', :require => 'pry' if ENV['PRY']
gem 'minitest'
# Fedora 19 splits psych out into its own gem.
if Gem::Specification.respond_to?(:find_all_by_name) and not Gem::Specification::find_all_by_name('psych').empty?
  gem 'psych'
end

# For performance reasons, the following scripts will not be
# refactored to use mongoid exclusively:
#  * broker-util/oo-admin-chk
#  * broker-util/oo-admin-fix-sshkeys
#  * broker-util/oo-stats
# These scripts use the OpenShift::DataStore API, and thus depend on
# the mongo rubygem:
gem 'mongo'

if ENV['BROKER_SOURCE']
  gem 'openshift-origin-common', :path => '../common'
  gem 'openshift-origin-controller', :path => '../controller'
  gem 'netrc' # rest-client has an undeclared prereq on netrc

  # Optionally load plugins from source
  eval((IO.read(File.expand_path('~/.openshift/broker_plugins.rb')) rescue ''))
else
  gem 'openshift-origin-controller'
  
  # Load plugin gems.
  Dir["/etc/openshift/plugins.d/*.conf"].delete_if{ |x| x.end_with? "-dev.conf" }.map{|x| File.basename(x, ".conf")}.each {|plugin| gem plugin}
end

# Bundle edge Rails instead:
# gem 'rails', :git => 'git://github.com/rails/rails.git'

# Use unicorn as the web server
# gem 'unicorn'

# Deploy with Capistrano
# gem 'capistrano'

# To use debugger (ruby-debug for Ruby 1.8.7+, ruby-debug19 for Ruby 1.9.2+)
# gem 'ruby-debug'
# gem 'ruby-debug19', :require => 'ruby-debug'

# Bundle the extra gems:
# gem 'bj'
# gem 'nokogiri'
# gem 'sqlite3-ruby', :require => 'sqlite3'
# gem 'aws-s3', :require => 'aws/s3'

# Bundle gems for the local environment. Make sure to
# put test-only gems in this group so their generators
# and rake tasks are available in development mode:
group :development, :test do
  # The require part from http://tinyurl.com/3pf68ho
  gem 'rest-client', :require => 'rest-client'
  gem 'mocha'
  gem 'rake'
  gem 'simplecov'
  gem 'cucumber'
end
