Package init

This commit is contained in:
eulerstorage 2020-03-07 18:59:27 +08:00
parent e1955dc3e7
commit 0f75ae7ae3
4 changed files with 924 additions and 0 deletions

212
Gemfile Normal file
View File

@ -0,0 +1,212 @@
# Edit this Gemfile to bundle your application's dependencies.
# This preamble is the current preamble for Rails 3 apps; edit as needed.
source 'https://rubygems.org'
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

582
Gemfile.lock Normal file
View File

@ -0,0 +1,582 @@
GEM
remote: https://rubygems.org/
specs:
actioncable (5.2.3)
actionpack (= 5.2.3)
nio4r (~> 2.0)
websocket-driver (>= 0.6.1)
actionmailer (5.2.3)
actionpack (= 5.2.3)
actionview (= 5.2.3)
activejob (= 5.2.3)
mail (~> 2.5, >= 2.5.4)
rails-dom-testing (~> 2.0)
actionpack (5.2.3)
actionview (= 5.2.3)
activesupport (= 5.2.3)
rack (~> 2.0)
rack-test (>= 0.6.3)
rails-dom-testing (~> 2.0)
rails-html-sanitizer (~> 1.0, >= 1.0.2)
actionview (5.2.3)
activesupport (= 5.2.3)
builder (~> 3.1)
erubi (~> 1.4)
rails-dom-testing (~> 2.0)
rails-html-sanitizer (~> 1.0, >= 1.0.3)
activejob (5.2.3)
activesupport (= 5.2.3)
globalid (>= 0.3.6)
activemodel (5.2.3)
activesupport (= 5.2.3)
activemodel-serializers-xml (1.0.2)
activemodel (> 5.x)
activesupport (> 5.x)
builder (~> 3.1)
activerecord (5.2.3)
activemodel (= 5.2.3)
activesupport (= 5.2.3)
arel (>= 9.0)
activestorage (5.2.3)
actionpack (= 5.2.3)
activerecord (= 5.2.3)
marcel (~> 0.3.1)
activesupport (5.2.3)
concurrent-ruby (~> 1.0, >= 1.0.2)
i18n (>= 0.7, < 2)
minitest (~> 5.1)
tzinfo (~> 1.1)
acts_as_list (0.9.19)
activerecord (>= 3.0)
acts_as_tree (2.9.0)
activerecord (>= 3.0.0)
addressable (2.6.0)
public_suffix (>= 2.0.2, < 4.0)
airbrake (8.0.1)
airbrake-ruby (~> 3.0)
airbrake-ruby (3.1.0)
tdigest (= 0.1.1)
ajax-datatables-rails (1.0.0)
railties (>= 4.2)
amq-protocol (2.3.0)
ansi (1.5.0)
arel (9.0.0)
ast (2.4.0)
autoprefixer-rails (9.6.0)
execjs
bcrypt (3.1.13)
bootstrap (4.3.1)
autoprefixer-rails (>= 9.1.0)
popper_js (>= 1.14.3, < 2)
sassc-rails (>= 2.0.0)
builder (3.2.3)
bullet (6.0.1)
activesupport (>= 3.0.0)
uniform_notifier (~> 1.11)
bunny (2.14.2)
amq-protocol (~> 2.3, >= 2.3.0)
bunny-mock (1.7.0)
bunny (>= 1.7)
byebug (11.0.1)
capybara (3.24.0)
addressable
mini_mime (>= 0.1.3)
nokogiri (~> 1.8)
rack (>= 1.6.0)
rack-test (>= 0.6.3)
regexp_parser (~> 1.5)
xpath (~> 3.2)
capybara_minitest_spec (1.0.7)
capybara (>= 2)
minitest (>= 4)
childprocess (3.0.0)
chunky_png (1.3.11)
clockwork (2.0.3)
tzinfo
cocoon (1.2.14)
codecov (0.1.14)
json
simplecov
url
codemirror-rails (5.16.0)
railties (>= 3.0, < 6.0)
coderay (1.1.2)
coffee-rails (5.0.0)
coffee-script (>= 2.2.0)
railties (>= 5.2.0)
coffee-script (2.4.1)
coffee-script-source
execjs
coffee-script-source (1.12.2)
colorize (0.8.1)
concurrent-ruby (1.1.5)
concurrent-ruby-ext (1.1.5)
concurrent-ruby (= 1.1.5)
coveralls (0.8.23)
json (>= 1.8, < 3)
simplecov (~> 0.16.1)
term-ansicolor (~> 1.3)
thor (>= 0.19.4, < 2.0)
tins (~> 1.6)
crack (0.4.3)
safe_yaml (~> 1.0.0)
crass (1.0.5)
cssmin (1.0.3)
daemons (1.3.1)
dalli (2.7.10)
data_migrate (5.3.2)
rails (>= 4.2)
database_cleaner (1.7.0)
deep_cloneable (2.4.0)
activerecord (>= 3.1.0, < 6)
delayed_job (4.1.7)
activesupport (>= 3.0, < 5.3)
delayed_job_active_record (4.1.3)
activerecord (>= 3.0, < 5.3)
delayed_job (>= 3.0, < 5)
diff-lcs (1.3)
docile (1.3.2)
equatable (0.6.1)
erubi (1.8.0)
erubis (2.7.0)
escape_utils (1.2.1)
execjs (2.7.0)
experimental-influxdb-rails (1.0.0.beta5)
influxdb (~> 0.6, >= 0.6.4)
railties (>= 4.2)
factory_bot (5.0.2)
activesupport (>= 4.2.0)
factory_bot_rails (5.0.2)
factory_bot (~> 5.0.2)
railties (>= 4.2.0)
faker (1.9.4)
i18n (>= 0.7)
pastel (~> 0.7.2)
thor (~> 0.20.0)
tty-pager (~> 0.12.0)
tty-screen (~> 0.6.5)
tty-tree (~> 0.3.0)
feature (1.4.0)
ffi (1.11.1)
flot-rails (0.0.7)
jquery-rails
font-awesome-sass (5.8.1)
sassc (>= 1.11)
globalid (0.4.2)
activesupport (>= 4.2.0)
gssapi (1.3.0)
ffi (>= 1.0.1)
haml (5.1.1)
temple (>= 0.8.0)
tilt
haml-rails (2.0.1)
actionpack (>= 5.1)
activesupport (>= 5.1)
haml (>= 4.0.6, < 6.0)
html2haml (>= 1.0.1)
railties (>= 5.1)
haml_lint (0.32.0)
haml (>= 4.0, < 5.2)
rainbow
rake (>= 10, < 13)
rubocop (>= 0.50.0)
sysexits (~> 1.1)
hashdiff (0.4.0)
html2haml (2.2.0)
erubis (~> 2.7.0)
haml (>= 4.0, < 6)
nokogiri (>= 1.6.0)
ruby_parser (~> 3.5)
i18n (1.6.0)
concurrent-ruby (~> 1.0)
influxdb (0.7.0)
innertube (1.1.0)
jaro_winkler (1.5.3)
joiner (0.4.2)
activerecord (>= 5.2.beta1)
jquery-datatables (1.10.19.1)
jquery-rails (4.3.5)
rails-dom-testing (>= 1, < 3)
railties (>= 4.2.0)
thor (>= 0.14, < 2.0)
jquery-ui-rails (4.2.1)
railties (>= 3.2.16)
json (2.2.0)
kaminari (1.1.1)
activesupport (>= 4.1.0)
kaminari-actionview (= 1.1.1)
kaminari-activerecord (= 1.1.1)
kaminari-core (= 1.1.1)
kaminari-actionview (1.1.1)
actionview
kaminari-core (= 1.1.1)
kaminari-activerecord (1.1.1)
activerecord
kaminari-core (= 1.1.1)
kaminari-core (1.1.1)
launchy (2.4.3)
addressable (~> 2.3)
lograge (0.11.2)
actionpack (>= 4)
activesupport (>= 4)
railties (>= 4)
request_store (~> 1.0)
loofah (2.3.1)
crass (~> 1.0.2)
nokogiri (>= 1.5.9)
mail (2.7.1)
mini_mime (>= 0.1.1)
marcel (0.3.3)
mimemagic (~> 0.3.2)
metaclass (0.0.4)
method_source (0.9.2)
middleware (0.1.0)
mimemagic (0.3.3)
mini_mime (1.0.1)
mini_portile2 (2.4.0)
minitest (5.11.3)
minitest-ci (3.4.0)
minitest (>= 5.0.6)
minitest-fail-fast (0.1.0)
minitest (~> 5)
minitest-reporters (1.3.6)
ansi
builder
minitest (>= 5.0)
ruby-progressbar
mocha (1.9.0)
metaclass (~> 0.0.1)
momentjs-rails (2.20.1)
railties (>= 3.1)
mousetrap-rails (1.4.6)
mysql2 (0.5.2)
nio4r (2.5.2)
nokogiri (1.10.5)
mini_portile2 (~> 2.4.0)
nokogumbo (2.0.1)
nokogiri (~> 1.8, >= 1.8.4)
parallel (1.17.0)
parser (2.6.3.0)
ast (~> 2.4.0)
pastel (0.7.3)
equatable (~> 0.6)
tty-color (~> 0.5)
peek (1.0.1)
concurrent-ruby (>= 0.9.0)
concurrent-ruby-ext (>= 0.9.0)
railties (>= 4.0.0)
peek-dalli (1.2.0)
concurrent-ruby
concurrent-ruby-ext
dalli
peek
peek-host (1.0.0)
peek
peek-mysql2 (1.2.0)
concurrent-ruby
concurrent-ruby-ext
mysql2
peek
pkg-config (1.3.7)
popper_js (1.14.5)
power_assert (1.1.4)
pry (0.12.2)
coderay (~> 1.1.0)
method_source (~> 0.9.0)
pry-byebug (3.7.0)
byebug (~> 11.0)
pry (~> 0.10)
public_suffix (3.1.0)
puma (4.3.1)
nio4r (~> 2.0)
pundit (2.0.1)
activesupport (>= 3.0.0)
rack (2.0.8)
rack-test (1.1.0)
rack (>= 1.0, < 3)
rails (5.2.3)
actioncable (= 5.2.3)
actionmailer (= 5.2.3)
actionpack (= 5.2.3)
actionview (= 5.2.3)
activejob (= 5.2.3)
activemodel (= 5.2.3)
activerecord (= 5.2.3)
activestorage (= 5.2.3)
activesupport (= 5.2.3)
bundler (>= 1.3.0)
railties (= 5.2.3)
sprockets-rails (>= 2.0.0)
rails-controller-testing (1.0.4)
actionpack (>= 5.0.1.x)
actionview (>= 5.0.1.x)
activesupport (>= 5.0.1.x)
rails-dom-testing (2.0.3)
activesupport (>= 4.2.0)
nokogiri (>= 1.6)
rails-html-sanitizer (1.0.4)
loofah (~> 2.2, >= 2.2.2)
rails-timeago (2.17.1)
actionpack (>= 3.1)
activesupport (>= 3.1)
rails_tokeninput (1.7.0)
railties (>= 3.1.0)
railties (5.2.3)
actionpack (= 5.2.3)
activesupport (= 5.2.3)
method_source
rake (>= 0.8.7)
thor (>= 0.19.0, < 2.0)
rainbow (3.0.0)
rake (12.3.3)
rantly (2.0.0)
rbtree (0.4.2)
rdoc (6.1.1)
redcarpet (3.4.0)
regexp_parser (1.5.1)
request_store (1.4.1)
rack (>= 1.4)
responders (3.0.0)
actionpack (>= 5.0)
railties (>= 5.0)
riddle (2.3.2)
rspec (3.8.0)
rspec-core (~> 3.8.0)
rspec-expectations (~> 3.8.0)
rspec-mocks (~> 3.8.0)
rspec-core (3.8.2)
rspec-support (~> 3.8.0)
rspec-expectations (3.8.4)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.8.0)
rspec-mocks (3.8.1)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.8.0)
rspec-rails (3.8.2)
actionpack (>= 3.0)
activesupport (>= 3.0)
railties (>= 3.0)
rspec-core (~> 3.8.0)
rspec-expectations (~> 3.8.0)
rspec-mocks (~> 3.8.0)
rspec-support (~> 3.8.0)
rspec-support (3.8.2)
rspec_junit_formatter (0.4.1)
rspec-core (>= 2, < 4, != 2.12.0)
rubocop (0.72.0)
jaro_winkler (~> 1.5.1)
parallel (~> 1.10)
parser (>= 2.6)
rainbow (>= 2.2.2, < 4.0)
ruby-progressbar (~> 1.7)
unicode-display_width (>= 1.4.0, < 1.7)
rubocop-performance (1.4.0)
rubocop (>= 0.71.0)
rubocop-rails (2.1.0)
rack (>= 1.1)
rubocop (>= 0.72.0)
rubocop-rspec (1.33.0)
rubocop (>= 0.60.0)
ruby-ldap (0.9.20)
ruby-progressbar (1.10.1)
ruby_parser (3.13.1)
sexp_processor (~> 4.9)
rubyzip (2.0.0)
safe_yaml (1.0.5)
sanitize (5.0.0)
crass (~> 1.0.2)
nokogiri (>= 1.8.0)
nokogumbo (~> 2.0)
sassc (2.0.1)
ffi (~> 1.9)
rake
sassc-rails (2.1.2)
railties (>= 4.0.0)
sassc (>= 2.0)
sprockets (> 3.0)
sprockets-rails
tilt
selenium-webdriver (3.142.6)
childprocess (>= 0.5, < 4.0)
rubyzip (>= 1.2.2)
sexp_processor (4.12.1)
shoulda-matchers (4.1.0)
activesupport (>= 4.2.0)
simplecov (0.16.1)
docile (~> 1.1)
json (>= 1.8, < 3)
simplecov-html (~> 0.10.0)
simplecov-html (0.10.2)
single_test (0.6.0)
rake
sprite-factory (1.7.1)
sprockets (3.7.2)
concurrent-ruby (~> 1.0)
rack (> 1, < 3)
sprockets-rails (3.2.1)
actionpack (>= 4.0)
activesupport (>= 4.0)
sprockets (>= 3.0.0)
strings (0.1.5)
strings-ansi (~> 0.1)
unicode-display_width (~> 1.5)
unicode_utils (~> 1.4)
strings-ansi (0.1.0)
sysexits (1.2.0)
tdigest (0.1.1)
rbtree (~> 0.4.2)
temple (0.8.1)
term-ansicolor (1.7.1)
tins (~> 1.0)
test-unit (3.3.3)
power_assert
thinking-sphinx (4.3.0)
activerecord (>= 3.1.0)
builder (>= 2.1.2)
innertube (>= 1.0.2)
joiner (>= 0.2.0)
middleware (>= 0.1.0)
riddle (~> 2.3)
thor (0.20.3)
thread_safe (0.3.6)
tilt (2.0.9)
timecop (0.9.1)
tins (1.20.3)
tty-color (0.5.0)
tty-pager (0.12.1)
strings (~> 0.1.4)
tty-screen (~> 0.6)
tty-which (~> 0.4)
tty-screen (0.6.5)
tty-tree (0.3.0)
tty-which (0.4.1)
tzinfo (1.2.5)
thread_safe (~> 0.1)
uglifier (4.1.20)
execjs (>= 0.3.0, < 3)
unicode-display_width (1.6.0)
unicode_utils (1.4.0)
uniform_notifier (1.12.1)
url (0.3.2)
vcr (5.0.0)
voight_kampff (1.1.3)
rack (>= 1.4, < 3.0)
webmock (3.6.0)
addressable (>= 2.3.6)
crack (>= 0.3.2)
hashdiff (>= 0.4.0, < 2.0.0)
websocket-driver (0.7.1)
websocket-extensions (>= 0.1.0)
websocket-extensions (0.1.4)
xmlhash (1.3.7)
pkg-config
xmlrpc (0.3.0)
xpath (3.2.0)
nokogiri (~> 1.8)
yajl-ruby (1.4.1)
PLATFORMS
ruby
DEPENDENCIES
activemodel-serializers-xml
acts_as_list
acts_as_tree
addressable
airbrake
airbrake-ruby
ajax-datatables-rails
bcrypt
bootstrap
builder
bullet
bunny
bunny-mock
capybara
capybara_minitest_spec
chunky_png
clockwork (>= 0.7)
cocoon
codecov
codemirror-rails
coffee-rails
colorize
coveralls
cssmin (>= 1.0.2)
daemons
dalli
data_migrate
database_cleaner (>= 1.0.1)
deep_cloneable (~> 2.4.0)
delayed_job_active_record (>= 4.0.0)
escape_utils
experimental-influxdb-rails (>= 1.0.0.beta5)
factory_bot_rails
faker
feature
flot-rails
font-awesome-sass
gssapi
haml
haml-rails
haml_lint
jquery-datatables
jquery-rails
jquery-ui-rails (~> 4.2.1)
kaminari
launchy
lograge
minitest
minitest-ci
minitest-fail-fast
minitest-reporters
mocha (> 0.13.0)
momentjs-rails
mousetrap-rails
mysql2
nokogiri
peek
peek-dalli
peek-host
peek-mysql2
pry (>= 0.9.12)
pry-byebug
puma (~> 4.0)
pundit
rails (~> 5.2)
rails-controller-testing
rails-timeago (~> 2.0)
rails_tokeninput (>= 1.6.1.rc1)
rantly
rdoc
redcarpet
responders (~> 3.0)
rspec
rspec-rails
rspec_junit_formatter
rubocop
rubocop-performance
rubocop-rails
rubocop-rspec
ruby-ldap
sanitize
sassc-rails
selenium-webdriver
shoulda-matchers (~> 4.0)
simplecov
single_test
sprite-factory (>= 1.5.2)
test-unit
thinking-sphinx (> 3.1)
tilt (>= 1.4.1)
timecop
uglifier (>= 1.2.2)
vcr
voight_kampff
webmock (>= 2.3.0)
xmlhash (>= 1.3.6)
xmlrpc
yajl-ruby
BUNDLED WITH
1.17.1

130
obs-bundled-gems.spec Normal file
View File

@ -0,0 +1,130 @@
#
# spec file for package obs-bundled-gems
#
# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
%global rake_version 12.3.3
%global rack_version 2.0.8
Name: obs-bundled-gems
Version: 2.10.1
Release: 0
Summary: The Open Build Service -- Bundled Gems
License: GPL-2.0-only OR GPL-3.0-only
URL: http://www.openbuildservice.org
Source0: Gemfile
Source1: Gemfile.lock
BuildRequires: cyrus-sasl-devel mysql-devel nodejs openldap-devel python3-devel
BuildRequires: gcc gcc-c++ glibc-devel libtool libxml2-devel libxslt-devel
BuildRequires: ruby-devel rubygem-bundler ruby-common
%description
This package is useful for the Open Build Service. It will figure out
denpendent gems, and add them to spec file.
%package -n obs-api-deps
Summary: Holding dependencies required to run the OBS frontend
Requires: build >= 20170315
Requires: memcached >= 1.4
Requires: mariadb
Requires: obs-bundled-gems = %{version}
Requires: sphinx >= 2.1.8
Requires: perl(GD)
Requires: rubygem-bundler
Requires: rubygem-rake
%description -n obs-api-deps
To simplify splitting the test suite packages off the main package,
this package is just a meta package used to run and build obs-api
%package -n obs-api-testsuite-deps
Summary: Holding dependencies required to run frontend test suites
Group: Productivity/Networking/Web/Utilities
Requires: inst-source-utils
Requires: nodejs
Requires: obs-api-deps = %{version}
%description -n obs-api-testsuite-deps
To simplify splitting the test suite packages off the main package,
this package is just a meta package used to build obs-api testsuite
%prep
echo "This package contains of requirements"> README
cp %{_sourcedir}/Gemfile %{_sourcedir}/Gemfile.lock .
%build
export QA_SKIP_BUILD_ROOT=1
# copy gem files into cache
mkdir -p vendor/cache
cp %{_sourcedir}/vendor/cache/*.gem vendor/cache
export GEM_HOME=~/.gems
bundle config build.nokogiri --use-system-libraries
%install
export QA_SKIP_BUILD_ROOT=1
bundle --local --path %{buildroot}%_libdir/obs-api/
# test that the rake and rack macros is still matching our Gemfile
test -f %{buildroot}%_libdir/obs-api/ruby/2.5.0/gems/rake-%{rake_version}/rake.gemspec
test -f %{buildroot}%_libdir/obs-api/ruby/2.5.0/gems/rack-%{rack_version}/rack.gemspec
# run gem clean up script
/usr/lib/rpm/gem_build_cleanup.sh %{buildroot}%_libdir/obs-api/ruby/*/
# work around sassc bug - and install libsass
sassc_dir=$(ls -1d %{buildroot}%_libdir/obs-api/ruby/2.5.0/gems/sassc-2*)
install -D -m 755 $sassc_dir/ext/libsass/lib/libsass.so $sassc_dir/lib
sed -i -e 's,/ext/libsass,,' $sassc_dir/lib/sassc/native.rb
# Remove sources of extensions, we don't need them
rm -rf %{buildroot}%_libdir/obs-api/ruby/*/gems/*/ext/
# remove binaries with invalid interpreters
rm -rf %{buildroot}%_libdir/obs-api/ruby/*/gems/diff-lcs-*/bin
# remove spec / test files from gems as they shouldn't be shipped in gems anyway
# and often cause errors / warning in rpmlint
rm -rf %{buildroot}%_libdir/obs-api/ruby/*/gems/*/spec/
rm -rf %{buildroot}%_libdir/obs-api/ruby/*/gems/*/test/
# we do not verify signing of the gem
rm -rf %{buildroot}%_libdir/obs-api/ruby/*/gems/mousetrap-rails-*/gem-public_cert.pem
# remove prebuilt binaries causing broken dependencies
rm -rf %{buildroot}%_libdir/obs-api/ruby/*/gems/selenium-webdriver-*/lib/selenium/webdriver/firefox/native
# remove all gitignore files to fix rpmlint version-control-internal-file
find %{buildroot}%_libdir/obs-api -name .gitignore | xargs rm -rf
# fix interpreter in installed binaries
for bin in %{buildroot}%_libdir/obs-api/ruby/*/bin/*; do
sed -i -e 's,/usr/bin/env ruby.ruby2.5,/usr/bin/ruby.ruby2.5,' $bin
done
# remove exec bit from all other files still containing /usr/bin/env - mostly helper scripts
find %{buildroot} -type f -print0 | xargs -0 grep -l /usr/bin/env | while read file; do
chmod a-x $file
done
%files
%_libdir/obs-api
%files -n obs-api-deps
%doc README
%files -n obs-api-testsuite-deps
%doc README
%changelog
*Sat Mar 7 2020 Shijie Luo <luoshijie1@huawei.com> 2.10.1-0
-Package Init.

BIN
verdor.obscpio Normal file

Binary file not shown.