213 lines
5.6 KiB
Ruby
213 lines
5.6 KiB
Ruby
# Edit this Gemfile to bundle your application's dependencies.
|
|
# This preamble is the current preamble for Rails 3 apps; edit as needed.
|
|
source 'https://mirrors.huaweicloud.com/repository/rubygems'
|
|
|
|
gem 'rails', '~> 5.2'
|
|
|
|
# as our database
|
|
gem 'mysql2'
|
|
# for XML handling
|
|
gem 'nokogiri'
|
|
# for delayed tasks
|
|
gem 'delayed_job_active_record', '>= 4.0.0'
|
|
# to fill errbit
|
|
gem 'airbrake'
|
|
gem 'airbrake-ruby'
|
|
# as JSON library - the default json conflicts with activerecord (by means of vice-versa monkey patching)
|
|
gem 'yajl-ruby', require: 'yajl/json_gem'
|
|
# to search the database
|
|
gem 'thinking-sphinx', '> 3.1'
|
|
# to paginate search results
|
|
gem 'kaminari'
|
|
# for abstract HTML
|
|
gem 'haml'
|
|
# streamline HAML's integration in Rails
|
|
gem 'haml-rails'
|
|
# to avoid tilt downgrade
|
|
gem 'tilt', '>= 1.4.1'
|
|
# to use markdown in the comment system
|
|
gem 'redcarpet'
|
|
# for nested attribute forms
|
|
gem 'cocoon'
|
|
# for activerecord lists. Used for AttribValues
|
|
gem 'acts_as_list'
|
|
# to parse a XML string into a ruby hash
|
|
gem 'xmlhash', '>=1.3.6'
|
|
# to escape HTML (FIXME: do we still use this?)
|
|
gem 'escape_utils'
|
|
# to sanitize HTML/CSS
|
|
gem 'sanitize'
|
|
# as authorization system
|
|
gem 'pundit'
|
|
# for password hashing
|
|
gem 'bcrypt'
|
|
#
|
|
gem 'responders', '~> 3.0'
|
|
# for threaded comments
|
|
gem 'acts_as_tree'
|
|
# js plotting (OBS monitor)
|
|
gem 'flot-rails'
|
|
# colorize for scripts
|
|
gem 'colorize', require: false
|
|
# XML Serialization got moved here
|
|
gem 'activemodel-serializers-xml'
|
|
# Spider Identification
|
|
gem 'voight_kampff'
|
|
# support coffeescript
|
|
gem 'coffee-rails'
|
|
# bind keyboard shortcuts to actions
|
|
gem 'mousetrap-rails'
|
|
# for issue tracker communication
|
|
gem 'xmlrpc'
|
|
# Multiple feature switch
|
|
gem 'feature'
|
|
# for profiling
|
|
gem 'peek'
|
|
gem 'peek-dalli'
|
|
gem 'peek-host'
|
|
gem 'peek-mysql2'
|
|
# for kerberos authentication
|
|
gem 'gssapi', require: false
|
|
# for sending events to rabbitmq
|
|
gem 'bunny'
|
|
# for making changes to existing data
|
|
gem 'data_migrate'
|
|
# for URI encoding
|
|
gem 'addressable'
|
|
# for XML builder
|
|
gem 'builder'
|
|
# to write the rails metrics directly into InfluxDB.
|
|
gem 'experimental-influxdb-rails', '>=1.0.0.beta5'
|
|
# for client side time ago
|
|
gem 'rails-timeago', '~> 2.0'
|
|
# for copying objects with their relations
|
|
gem 'deep_cloneable', '~> 2.4.0'
|
|
# Server-side datatables
|
|
gem 'ajax-datatables-rails'
|
|
|
|
group :development, :production do
|
|
# to have the delayed job daemon
|
|
gem 'daemons'
|
|
# as memcache client
|
|
gem 'dalli'
|
|
# to document ruby code
|
|
gem 'rdoc'
|
|
# to not rely on cron+rake
|
|
gem 'clockwork', '>= 0.7'
|
|
# as interface to LDAP
|
|
gem 'ruby-ldap', require: false
|
|
# to have better logs
|
|
gem 'lograge'
|
|
end
|
|
|
|
group :production do
|
|
# if you have an account, it can be configured by
|
|
# placing a config/newrelic.yml
|
|
# be aware about the non-OSS license
|
|
# gem 'newrelic_rpm'
|
|
end
|
|
|
|
# Gems used only for testing the application and not required in production environments by default.
|
|
group :test do
|
|
# as testing frameworks
|
|
gem 'minitest'
|
|
gem 'test-unit'
|
|
# to ensure a clean state for testing
|
|
gem 'database_cleaner', '>= 1.0.1'
|
|
# for test coverage reports
|
|
gem 'codecov', require: false
|
|
gem 'simplecov', require: false
|
|
# for failing fast
|
|
gem 'minitest-fail-fast'
|
|
# for spec like reporting
|
|
gem 'minitest-reporters'
|
|
# for integration testing
|
|
gem 'capybara'
|
|
# for rspec like matchers
|
|
gem 'capybara_minitest_spec'
|
|
# to freeze time
|
|
gem 'timecop'
|
|
# to fake backend replies
|
|
gem 'webmock', '>= 2.3.0'
|
|
# for mocking and stubbing
|
|
gem 'mocha', '> 0.13.0', require: false
|
|
# for testing common Rails functionality with simple one-liners
|
|
gem 'shoulda-matchers', '~> 4.0'
|
|
# assigns has been extracted to a gem
|
|
gem 'rails-controller-testing'
|
|
# To generate random data
|
|
gem 'rantly'
|
|
# for test analysis in CircleCI
|
|
gem 'coveralls'
|
|
gem 'minitest-ci'
|
|
gem 'rspec_junit_formatter'
|
|
# to test rabbitmq support
|
|
gem 'bunny-mock'
|
|
end
|
|
|
|
group :development, :test do
|
|
gem 'rspec'
|
|
# as testing framework
|
|
gem 'rspec-rails'
|
|
# for fixtures
|
|
gem 'factory_bot_rails'
|
|
# for mocking the backend
|
|
gem 'vcr'
|
|
# as alternative to the standard IRB shell
|
|
gem 'pry', '>= 0.9.12'
|
|
# add step-by-step debugging and stack navigation capabilities to pry
|
|
gem 'pry-byebug'
|
|
# for style checks
|
|
gem 'rubocop', require: false
|
|
# for rails style checks
|
|
gem 'rubocop-rails', require: false
|
|
# for rspec style checks
|
|
gem 'rubocop-rspec', require: false
|
|
# for performance checks
|
|
gem 'rubocop-performance'
|
|
# integrates with RuboCop to analyse HAML files
|
|
gem 'haml_lint'
|
|
# to generate random long strings
|
|
gem 'faker'
|
|
# to launch browser in test
|
|
gem 'launchy'
|
|
# for calling single testd
|
|
gem 'single_test'
|
|
# to find n+1 queries
|
|
gem 'bullet'
|
|
# Use Puma as the app server (rails 5 default)
|
|
gem 'puma', '~> 4.0'
|
|
# to drive headless chrome
|
|
gem 'selenium-webdriver'
|
|
end
|
|
|
|
# Gems used only for assets and not required in production environments by default.
|
|
group :assets do
|
|
# for minifying CSS
|
|
gem 'cssmin', '>= 1.0.2'
|
|
# for minifying JavaScript
|
|
gem 'uglifier', '>= 1.2.2'
|
|
# to use sass in the asset pipeline
|
|
gem 'sassc-rails'
|
|
# assets for jQuery DataTables
|
|
gem 'jquery-datatables'
|
|
# assets for the text editor
|
|
gem 'codemirror-rails'
|
|
# assets for jQuery tokeninput
|
|
gem 'rails_tokeninput', '>= 1.6.1.rc1'
|
|
# to create our sprite images/stylesheets
|
|
gem 'sprite-factory', '>= 1.5.2'
|
|
# to read and write PNG images
|
|
gem 'chunky_png'
|
|
# assets for jQuery and jQuery-ujs
|
|
gem 'jquery-rails'
|
|
# assets for jQuery-ui
|
|
gem 'jquery-ui-rails', '~> 4.2.1'
|
|
# assets for the bootstrap front-end framework
|
|
gem 'bootstrap'
|
|
# assets for font-awesome vector icons
|
|
gem 'font-awesome-sass'
|
|
# assets for formatting dates
|
|
gem 'momentjs-rails'
|
|
end
|