diff --git a/.travis.yml b/.travis.yml index 1e739ec833..542ce760f1 100644 --- a/.travis.yml +++ b/.travis.yml @@ -19,7 +19,7 @@ before_install: - gem install bundler - bundle config without development:production:staging:uat - bundle --version - - nvm install 12 + - nvm install 14 before_script: - bundle exec rake db:create - bundle exec rake db:migrate @@ -31,6 +31,6 @@ jdk: - openjdk8 global_env: rvm: - - 2.5 - 2.6 + - 2.7 dist: xenial diff --git a/Gemfile b/Gemfile index 6f45759c81..c91bf7a2e2 100644 --- a/Gemfile +++ b/Gemfile @@ -3,7 +3,7 @@ source 'https://rubygems.org' # Core rails gem 'rails', '=5.2.4.4' -gem 'bootsnap', require: false +gem 'bootsnap', '~> 1.4.6 ', require: false gem 'listen' gem 'sprockets', '~>3.7.2' gem 'sqlite3' @@ -92,7 +92,7 @@ gem 'resque', '~> 2.0' gem 'resque-scheduler', '~> 4.4' # Coding Patterns -gem 'config' +gem 'config', '~> 2.0' gem 'hooks' gem 'jbuilder', '~> 2.0' gem 'parallel' diff --git a/Gemfile.lock b/Gemfile.lock index d5385d5bfb..a4d1f00d1b 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -264,7 +264,7 @@ GEM blacklight (~> 6.0) cancancan (~> 1.8) deprecation (~> 1.0) - bootsnap (1.4.4) + bootsnap (1.4.9) msgpack (~> 1.0) bootstrap-sass (3.4.1) autoprefixer-rails (>= 5.2.1) @@ -332,10 +332,9 @@ GEM execjs coffee-script-source (1.12.2) concurrent-ruby (1.1.7) - config (1.7.1) - activesupport (>= 3.0) - deep_merge (~> 1.2.1) - dry-validation (>= 0.12.2) + config (2.2.3) + deep_merge (~> 1.2, >= 1.2.1) + dry-validation (~> 1.0, >= 1.0.0) connection_pool (2.2.2) crack (0.4.3) safe_yaml (~> 1.0.0) @@ -346,7 +345,7 @@ GEM declarative (0.0.10) declarative-option (0.1.0) deep_merge (1.2.1) - deprecation (1.0.0) + deprecation (1.1.0) activesupport devise (4.7.1) bcrypt (~> 3.0) @@ -364,34 +363,40 @@ GEM railties (>= 3.2, < 6.1) dropbox-sdk (1.6.5) json - dry-configurable (0.8.2) + dry-configurable (0.12.1) concurrent-ruby (~> 1.0) - dry-core (~> 0.4, >= 0.4.7) - dry-container (0.7.0) + dry-core (~> 0.5, >= 0.5.0) + dry-container (0.7.2) concurrent-ruby (~> 1.0) dry-configurable (~> 0.1, >= 0.1.3) - dry-core (0.4.7) + dry-core (0.5.0) concurrent-ruby (~> 1.0) - dry-equalizer (0.2.2) - dry-inflector (0.1.2) - dry-logic (0.6.1) + dry-equalizer (0.3.0) + dry-inflector (0.2.0) + dry-initializer (3.0.4) + dry-logic (1.1.0) concurrent-ruby (~> 1.0) - dry-core (~> 0.2) - dry-equalizer (~> 0.2) - dry-types (0.14.1) + dry-core (~> 0.5, >= 0.5) + dry-schema (1.6.1) + concurrent-ruby (~> 1.0) + dry-configurable (~> 0.8, >= 0.8.3) + dry-core (~> 0.5, >= 0.5) + dry-initializer (~> 3.0) + dry-logic (~> 1.0) + dry-types (~> 1.5) + dry-types (1.5.1) concurrent-ruby (~> 1.0) dry-container (~> 0.3) - dry-core (~> 0.4, >= 0.4.4) - dry-equalizer (~> 0.2) + dry-core (~> 0.5, >= 0.5) dry-inflector (~> 0.1, >= 0.1.2) - dry-logic (~> 0.5, >= 0.5) - dry-validation (0.13.2) + dry-logic (~> 1.0, >= 1.0.2) + dry-validation (1.6.0) concurrent-ruby (~> 1.0) - dry-configurable (~> 0.1, >= 0.1.3) - dry-core (~> 0.2, >= 0.2.1) + dry-container (~> 0.7, >= 0.7.1) + dry-core (~> 0.4) dry-equalizer (~> 0.2) - dry-logic (~> 0.5, >= 0.5.0) - dry-types (~> 0.14.0) + dry-initializer (~> 3.0) + dry-schema (~> 1.5, >= 1.5.2) ebnf (1.1.2) rdf (>= 2.2, < 4.0) sxp (~> 1.0) @@ -466,7 +471,7 @@ GEM multipart-post http-cookie (1.0.3) domain_name (~> 0.5) - http_logger (0.5.1) + http_logger (0.6.0) httparty (0.17.0) mime-types (~> 3.0) multi_xml (>= 0.5.2) @@ -523,7 +528,7 @@ GEM kaminari-core (1.2.1) launchy (2.4.3) addressable (~> 2.3) - ldp (1.0.0) + ldp (1.0.1) deprecation faraday http_logger @@ -842,7 +847,7 @@ GEM httmultiparty httparty (>= 0.11.0) oauth2 (>= 0.9.2) - slop (4.6.2) + slop (4.8.2) solr_wrapper (2.1.0) faraday retriable @@ -959,7 +964,7 @@ DEPENDENCIES aws-sdk-rails bixby blacklight (< 7.0) - bootsnap + bootsnap (~> 1.4.6) bootstrap-toggle-rails! bootstrap_form browse-everything (~> 0.13.0) @@ -974,7 +979,7 @@ DEPENDENCIES cloudfront-signer codeclimate-test-reporter coffee-rails (~> 4.2.0) - config + config (~> 2.0) database_cleaner devise (~> 4.7) dotenv-rails @@ -1064,4 +1069,4 @@ DEPENDENCIES zoom BUNDLED WITH - 2.0.2 + 2.1.4 diff --git a/bin/docker-start b/bin/docker-start index 6bd61e787d..c4cf17367d 100755 --- a/bin/docker-start +++ b/bin/docker-start @@ -18,8 +18,13 @@ export HOME=/home/app yarn config set -- --modules-folder "/home/app/node_modules" yarn install +# Workaround for Zookeeper 1.4.11 GCC 8 build issue +# https://github.com/zk-ruby/zookeeper/issues/85 +apt-get update && + apt-get install -y build-essential + apt-get install -y gcc-7 bundle config build.nokogiri --use-system-libraries && \ -bundle install --path=/home/app/gems --with mysql aws test +CC=/usr/bin/gcc-7 bundle install --path=/home/app/gems --with mysql aws test bundle exec rake db:create diff --git a/docker/Dockerfile b/docker/Dockerfile index ed8dfcaf87..73d0cc702d 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -1,10 +1,10 @@ -FROM ruby:2.5.5-stretch +FROM ruby:2.7-buster MAINTAINER Phuong Dinh RUN curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - \ && echo "deb http://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list \ - && curl -sL http://deb.nodesource.com/setup_12.x | bash - \ - && echo "deb http://deb.debian.org/debian stretch-backports main" >> /etc/apt/sources.list \ + && curl -sL http://deb.nodesource.com/setup_14.x | bash - \ + && echo "deb http://deb.debian.org/debian buster-backports main" >> /etc/apt/sources.list \ && wget https://mediaarea.net/repo/deb/repo-mediaarea_1.0-14_all.deb && dpkg -i repo-mediaarea_1.0-14_all.deb RUN apt-get update && apt-get upgrade -y build-essential nodejs \