forked from elastic/apm-agent-ruby
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Gemfile
86 lines (75 loc) · 2.13 KB
/
Gemfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
# frozen_string_literal: true
source 'https://rubygems.org'
git_source(:github) { |repo_name| "https://github.com/#{repo_name}" }
# Tools
gem 'bootsnap', require: false
gem 'cucumber', require: false
gem 'pry'
gem 'rack-test'
gem 'rspec', '~> 3'
gem 'rspec-its'
gem 'rubocop', require: nil
gem 'rubocop-performance', require: nil
gem 'timecop'
gem 'webmock'
# Integrations
gem 'aws-sdk-sqs', require: nil
gem 'elasticsearch', require: nil
gem 'fakeredis', require: nil
gem 'faraday', require: nil
gem 'graphql', require: nil
gem 'grpc' if !defined?(JRUBY_VERSION) && RUBY_VERSION < '2.7'
gem 'json-schema', require: nil
gem 'mongo', require: nil
gem 'opentracing', require: nil
gem 'rake', require: nil
gem 'resque', require: nil
gem 'sequel', require: nil
gem 'shoryuken', require: nil
gem 'sidekiq', require: nil
gem 'simplecov', require: false
gem 'simplecov-cobertura', require: false
gem 'sneakers', '~> 2.12', require: nil
gem 'yard', require: nil
gem 'yarjuf'
## Install Framework
GITHUB_REPOS = {
'grape' => 'ruby-grape/grape',
'rails' => 'rails/rails',
'sinatra' => 'sinatra/sinatra'
}.freeze
# new || legacy || default
env_frameworks = ENV['FRAMEWORKS'] || ENV['FRAMEWORK'] || ''
parsed_frameworks = env_frameworks.split(',')
frameworks_versions = parsed_frameworks.inject({}) do |frameworks, str|
framework, *version = str.split('-')
frameworks.merge(framework => version.join('-'))
end
frameworks_versions.each do |framework, version|
case version
when 'master'
gem framework, github: GITHUB_REPOS.fetch(framework)
when /.+/
gem framework, "~> #{version}.0"
else
gem framework
end
end
if frameworks_versions.key?('rails')
unless frameworks_versions['rails'] =~ /^(master|6)/
gem 'delayed_job', require: nil
end
end
if RUBY_PLATFORM == 'java'
gem 'activerecord-jdbcsqlite3-adapter'
gem 'jdbc-sqlite3'
elsif frameworks_versions['rails'] =~ /^(4|5)/
gem 'sqlite3', '~> 1.3.6'
else
gem 'sqlite3' # rubocop:disable Bundler/DuplicatedGem
end
group :bench do
gem 'ruby-prof', require: nil, platforms: %i[ruby]
gem 'stackprof', require: nil, platforms: %i[ruby]
end
gemspec