Skip to content

Commit

Permalink
Merge branch 'main' into bulkrax_importing_work
Browse files Browse the repository at this point in the history
  • Loading branch information
orangewolf authored Sep 18, 2023
2 parents bb607a7 + f0a54ed commit 1488803
Show file tree
Hide file tree
Showing 68 changed files with 1,452 additions and 224 deletions.
27 changes: 18 additions & 9 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
@@ -1,16 +1,19 @@
version: 2.1
orbs:
samvera: samvera/circleci-orb@0
browser-tools: circleci/[email protected]
samvera: samvera/circleci-orb@1
browser-tools: circleci/[email protected]
ruby: circleci/ruby@2
node: circleci/node@5

jobs:
bundle_lint_test:
bundle:
parameters:
ruby_version:
type: string
default: 2.7.6
default: 2.7.8
bundler_version:
type: string
default: '2.0.1'
default: 2.4.8
rails_version:
type: string
default: '5.1.6'
Expand Down Expand Up @@ -76,7 +79,13 @@ jobs:
ruby_version: << parameters.ruby_version >>
bundler_version: << parameters.bundler_version >>
- samvera/rubocop
- browser-tools/install-browser-tools
- browser-tools/install-chrome
- browser-tools/install-chromedriver
- run:
name: Check Chrome install
command: |
google-chrome --version
chromedriver --version
- run: bundle exec rake db:create db:schema:load
- run: bin/solrcloud-upload-configset.sh solr/conf
- samvera/parallel_rspec
Expand All @@ -85,7 +94,7 @@ jobs:
workflows:
ci:
jobs:
- bundle_lint_test:
ruby_version: "2.7.6"
name: "ruby2-7-6"
- bundle:
ruby_version: "2.7.8"
name: "ruby2-7-8"
solr_config_path: 'solr/conf'
5 changes: 5 additions & 0 deletions .gitguardian.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
secret:
ignored-matches:
- match: 2ace7433e96955aeed1a310d7dcc61f8761d05fbff91b92d79d860e307d6ea6a
name: Generic High Entropy Secret - .env
version: 2
14 changes: 8 additions & 6 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -82,16 +82,18 @@ COPY --chown=1001:101 ./ops/exiftool_image_to_fits.xslt /app/fits/xml/exiftool/e
RUN ln -sf /usr/lib/libmediainfo.so.0 /app/fits/tools/mediainfo/linux/libmediainfo.so.0 && \
ln -sf /usr/lib/libzen.so.0 /app/fits/tools/mediainfo/linux/libzen.so.0

FROM hyku-base as hyku-web
ONBUILD COPY --chown=1001:101 $APP_PATH/bin/db-migrate-seed.sh /app/samvera/

COPY --chown=1001:101 $APP_PATH/Gemfile* /app/samvera/hyrax-webapp/
RUN git config --global --add safe.directory /app/samvera && \
ONBUILD COPY --chown=1001:101 $APP_PATH/Gemfile* /app/samvera/hyrax-webapp/
ONBUILD RUN git config --global --add safe.directory /app/samvera && \
bundle install --jobs "$(nproc)"

COPY --chown=1001:101 $APP_PATH/bin/db-migrate-seed.sh /app/samvera/
COPY --chown=1001:101 $APP_PATH /app/samvera/hyrax-webapp
ONBUILD COPY --chown=1001:101 $APP_PATH /app/samvera/hyrax-webapp

ONBUILD RUN RAILS_ENV=production SECRET_KEY_BASE=`bin/rake secret` DB_ADAPTER=nulldb DB_URL='postgresql://fake' bundle exec rake assets:precompile && yarn install

RUN RAILS_ENV=production SECRET_KEY_BASE=`bin/rake secret` DB_ADAPTER=nulldb DB_URL='postgresql://fake' bundle exec rake assets:precompile && yarn install

FROM hyku-base as hyku-web
CMD ./bin/web

FROM hyku-web as hyku-worker
Expand Down
182 changes: 66 additions & 116 deletions Gemfile
Original file line number Diff line number Diff line change
@@ -1,148 +1,98 @@
# frozen_string_literal: true

# rubocop:disable Metrics/LineLength
source 'https://rubygems.org'

# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
gem 'rails', '~> 5.2.5'

gem 'active-fedora', '>= 11.1.4'
gem 'active_elastic_job', github: 'active-elastic-job/active-elastic-job', ref: 'ec51c5d9dedc4a1b47f2db41f26d5fceb251e979', group: %i[aws]
gem 'activerecord-nulldb-adapter'
gem 'addressable', '2.8.1' # remove once https://github.com/postrank-labs/postrank-uri/issues/49 is fixed
# Use sqlite3 as the database for Active Record
gem 'pg'
# Use Puma as the app server
gem 'puma', '~> 4.3'
# Use SCSS for stylesheets
gem 'sass-rails', '~> 5.0'
# Use CoffeeScript for .coffee assets and views
gem 'coffee-rails', '~> 4.2'
# See https://github.com/rails/execjs#readme for more supported runtimes
# gem 'therubyracer', platforms: :ruby

# Use jquery as the JavaScript library
gem 'jquery-rails'
# Turbolinks makes following links in your web application faster. Read more: https://github.com/rails/turbolinks
gem 'turbolinks', '~> 5'
# Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder
gem 'jbuilder', '~> 2.5'
# bundle exec rake doc:rails generates the API under doc/api.
# gem 'sdoc', '~> 0.4.0', group: :doc

# Use ActiveModel has_secure_password
# gem 'bcrypt', '~> 3.1.7'

gem 'active-fedora', '>= 11.1.4'
gem 'flutie'
# Use Capistrano for deployment
# gem 'capistrano-rails', group: :development

group :development, :test do
# Call 'byebug' anywhere in the code to stop execution and get a debugger console
gem 'byebug'
gem 'pry-byebug'

gem 'i18n-debug', require: false
gem 'i18n-tasks'
gem 'rspec'
gem 'rspec-rails', '>= 3.6.0'

gem 'simplecov', require: false

gem 'fcrepo_wrapper', '~> 0.4'
gem 'solr_wrapper', '~> 2.0'

gem 'rubocop', '~> 0.50', '<= 0.52.1'
gem 'rubocop-rspec', '~> 1.22', '<= 1.22.2'
end

group :test do
gem 'capybara'
gem 'capybara-screenshot', '~> 1.0'
gem 'database_cleaner'
gem 'factory_bot_rails'
gem 'launchy'
# rack-test >= 0.71 does not work with older Capybara versions (< 2.17). See #214 for more details
gem 'rack-test', '0.7.0'
gem 'rails-controller-testing'
gem 'rspec-activemodel-mocks'
gem 'rspec-its'
gem 'rspec-retry'
gem 'rspec_junit_formatter'
gem 'selenium-webdriver'
gem 'shoulda-matchers', '~> 4.0'
gem 'webdrivers', '~> 4.0'
gem 'webmock'
end

group :development do
# Access an IRB console on exception pages or by using <%= console %> in views
gem 'web-console', '>= 3.3.0'

gem 'listen', '>= 3.0.5', '< 3.2'
# Spring speeds up development by keeping your application running in the background. Read more: https://github.com/rails/spring
gem 'easy_translate'
gem 'scss_lint', require: false
gem 'spring', '~> 1.7'
gem 'spring-watcher-listen', '~> 2.0.0'
end

# gem 'bulkrax', '~> 5.0'
gem 'apartment'
gem 'aws-sdk-sqs', group: %i[aws]
gem 'blacklight', '~> 6.7'
gem 'blacklight_oai_provider', '~> 6.1', '>= 6.1.1'
gem 'bulkrax', git: 'https://github.com/samvera-labs/bulkrax.git', branch: 'no_blank_strings_on_split'

gem 'hyrax', '~> 3.5.0'

gem 'bolognese', '>= 1.9.10'
gem 'hyrax-doi', git: 'https://github.com/samvera-labs/hyrax-doi.git', branch: 'main'
gem 'hyrax-iiif_av', git: 'https://github.com/samvera-labs/hyrax-iiif_av.git', branch: 'main'
gem 'iiif_print', git: 'https://github.com/scientist-softserv/iiif_print.git', branch: 'main'
gem 'postrank-uri', '>= 1.0.24'
gem 'redlock', '>= 0.1.2', '< 2.0' # lock redlock per https://github.com/samvera/hyrax/pull/5961
gem 'rsolr', '~> 2.0'

gem 'bootstrap-datepicker-rails'
gem 'bulkrax', git: 'https://github.com/samvera-labs/bulkrax.git', branch: 'no_blank_strings_on_split'
gem 'byebug', group: %i[development test]
gem 'capybara', group: %i[test]
gem 'capybara-screenshot', '~> 1.0', group: %i[test]
gem 'carrierwave-aws', '~> 1.3', group: %i[aws test]
gem 'cocoon'
gem 'codemirror-rails'
gem 'coffee-rails', '~> 4.2' # Use CoffeeScript for .coffee assets and views
gem 'database_cleaner', group: %i[test]
gem 'devise'
gem 'devise-guests', '~> 0.3'
gem 'devise-i18n'
gem 'devise_invitable', '~> 1.6'

gem 'apartment'
gem 'is_it_working'
gem 'rolify'

gem 'dry-monads', '~> 1.4.0' # Locked because 1.5.0 was not compatible with Hyrax v.3.4.2
gem 'easy_translate', group: %i[development]
gem 'factory_bot_rails', group: %i[test]
gem 'fcrepo_wrapper', '~> 0.4', group: %i[development test]
gem 'flipflop', '~> 2.6.0' # waiting for hyrax 4 upgrade
gem 'flutie'
gem 'hyrax', '~> 3.5.0'
gem 'hyrax-doi', github: 'samvera-labs/hyrax-doi', branch: 'main'
gem 'hyrax-iiif_av', github: 'samvera-labs/hyrax-iiif_av', branch: 'main'
gem 'i18n-debug', require: false, group: %i[development test]
gem 'i18n-tasks', group: %i[development test]
gem 'iiif_print', github: 'scientist-softserv/iiif_print', branch: 'main'
gem 'jbuilder', '~> 2.5'
gem 'jquery-rails' # Use jquery as the JavaScript library
gem 'launchy', group: %i[test]
gem 'listen', '>= 3.0.5', '< 3.2', group: %i[development]
gem 'lograge'

gem 'mods', '~> 2.4'

group :aws, :test do
gem 'carrierwave-aws', '~> 1.3'
end

group :aws do
gem 'active_elastic_job', git: 'https://github.com/tawan/active-elastic-job.git',
branch: 'ec51c5d9dedc4a1b47f2db41f26d5fceb251e979'
gem 'aws-sdk-sqs'
end

gem 'bootstrap-datepicker-rails'
gem "cocoon"
gem 'codemirror-rails'
gem 'negative_captcha'
gem 'okcomputer'
gem 'omniauth-cas', github: 'stanhu/omniauth-cas', ref: '4211e6d05941b4a981f9a36b49ec166cecd0e271'
gem 'omniauth-multi-provider'
gem 'omniauth-rails_csrf_protection', '~> 1.0'
gem 'omniauth-saml', '~> 2.1'
gem 'omniauth_openid_connect'
gem 'parser', '~> 2.5.3'
gem 'pg'
gem 'postrank-uri', '>= 1.0.24'
gem 'pry-byebug', group: %i[development test]
gem 'puma', '~> 4.3' # Use Puma as the app server
gem 'rack-test', '0.7.0', group: %i[test] # rack-test >= 0.71 does not work with older Capybara versions (< 2.17). See #214 for more details
gem 'rails-controller-testing', group: %i[test]
gem 'rdf', '~> 3.1.15' # rdf 3.2.0 removed SerializedTransaction which ldp requires
gem 'redlock', '>= 0.1.2', '< 2.0' # lock redlock per https://github.com/samvera/hyrax/pull/5961
gem 'riiif', '~> 1.1'
gem 'rolify'
gem 'rsolr', '~> 2.0'
gem 'rspec', group: %i[development test]
gem 'rspec-activemodel-mocks', group: %i[test]
gem 'rspec-its', group: %i[test]
gem 'rspec-rails', '>= 3.6.0', group: %i[development test]
gem 'rspec-retry', group: %i[test]
gem 'rspec_junit_formatter', group: %i[test]
gem 'rubocop', '~> 0.50', '<= 0.52.1', group: %i[development test]
gem 'rubocop-rspec', '~> 1.22', '<= 1.22.2', group: %i[development test]
gem 'sass-rails', '~> 5.0' # Use SCSS for stylesheets
gem 'scss_lint', require: false, group: %i[development]
gem 'secure_headers'
gem 'selenium-webdriver', '4.8.1', group: %i[test]
gem 'shoulda-matchers', '~> 4.0', group: %i[test]
gem 'sidekiq', "< 7.0" # sidekiq 7 requires upgrade to redis 6
gem 'simplecov', require: false, group: %i[development test]
gem 'solr_wrapper', '~> 2.0', group: %i[development test]
gem 'spring', '~> 1.7', group: %i[development]
gem 'spring-watcher-listen', '~> 2.0.0', group: %i[development]
gem 'terser' # to support the Safe Navigation / Optional Chaining operator (?.) and avoid uglifier precompile issue
gem 'tether-rails'

# When first attempting to upgrade to Hyrax v3.4.2, this dry-monads gem was upgraded to v1.5.0.
# This version threw the following error:
# NameError: uninitialized constant Dry::Monads::Result::Transformer
# Locking it to v1.4.x does not throw an error.
gem 'dry-monads', '~> 1.4.0'
gem 'turbolinks', '~> 5'
gem 'web-console', '>= 3.3.0', group: %i[development] # <%= console %> in views
gem 'webdrivers', '~> 4.7.0', group: %i[test]
gem 'webmock', group: %i[test]

# This gem does nothing by default, but is instead a tool to ease developer flow
# and place overrides, themes and deployment code.
gem 'hyku_knapsack', github: 'samvera-labs/hyku_knapsack', branch: 'upstream_main'

# rubocop:enable Metrics/LineLength
Loading

0 comments on commit 1488803

Please sign in to comment.