diff --git a/Gemfile b/Gemfile index c935b5410..6f20ff25a 100644 --- a/Gemfile +++ b/Gemfile @@ -4,7 +4,7 @@ source 'https://rubygems.org' ruby '>= 3.0.0' gem 'puma', '~> 6.3' -gem 'rails', '~> 7.1.1' +gem 'rails', '~> 7.0' gem 'sprockets', '~> 3.7.2' gem 'thor', '~> 1.2' gem 'rack', '~> 2.2.7' @@ -106,9 +106,6 @@ group :test do # Used to split testing into chunks in CI gem 'rspec_chunked', '~> 0.6' - # Adds RSpec Error/Warning annotations to GitHub PRs on the Files tab - gem 'rspec-github', '~> 2.4', require: false - # RSpec progress bar formatter gem 'fuubar', '~> 2.5' @@ -173,6 +170,12 @@ group :development do # Linter CLI for HAML files gem 'haml_lint', require: false + # Deployment automation + gem 'capistrano', '~> 3.17' + gem 'capistrano-rails', '~> 1.6' + gem 'capistrano-rbenv', '~> 2.2' + gem 'capistrano-yarn', '~> 2.0' + # Validate missing i18n keys gem 'i18n-tasks', '~> 1.0', require: false end diff --git a/Gemfile.lock b/Gemfile.lock index 5021800eb..e5ae63862 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -120,6 +120,8 @@ GEM addressable (2.8.5) public_suffix (>= 2.0.2, < 6.0) aes_key_wrap (1.1.0) + airbrussh (1.5.0) + sshkit (>= 1.6.1, != 1.7.0) android_key_attestation (0.3.0) annotate (3.2.0) activerecord (>= 3.2, < 8.0) @@ -182,6 +184,21 @@ GEM bundler-audit (0.9.1) bundler (>= 1.2.0, < 3) thor (~> 1.0) + capistrano (3.18.0) + airbrussh (>= 1.0.0) + i18n + rake (>= 10.0.0) + sshkit (>= 1.9.0) + capistrano-bundler (1.6.0) + capistrano (~> 3.1) + capistrano-rails (1.6.3) + capistrano (~> 3.1) + capistrano-bundler (>= 1.1, < 3) + capistrano-rbenv (2.2.0) + capistrano (~> 3.1) + sshkit (~> 1.3) + capistrano-yarn (2.0.2) + capistrano (~> 3.0) capybara (3.39.2) addressable matrix @@ -453,7 +470,6 @@ GEM mime-types-data (~> 3.2015) mime-types-data (3.2023.0808) mini_mime (1.1.5) - mini_portile2 (2.8.4) minitest (5.20.0) msgpack (1.7.1) multi_json (1.15.0) @@ -471,11 +487,13 @@ GEM net-protocol net-protocol (0.2.1) timeout + net-scp (1.2.1) + net-ssh (>= 2.6.5) net-smtp (0.4.0) net-protocol + net-ssh (2.9.4) nio4r (2.5.9) - nokogiri (1.15.4) - mini_portile2 (~> 2.8.2) + nokogiri (1.15.4-x86_64-linux) racc (~> 1.4) oj (3.16.1) omniauth (2.1.1) @@ -629,8 +647,6 @@ GEM rspec-expectations (3.12.3) diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.12.0) - rspec-github (2.4.0) - rspec-core (~> 3.0) rspec-mocks (3.12.5) diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.12.0) @@ -649,8 +665,7 @@ GEM sidekiq (>= 5, < 8) rspec-support (3.12.1) rspec_chunked (0.6) - rubocop (1.57.1) - base64 (~> 0.1.1) + rubocop (1.57.2) json (~> 2.3) language_server-protocol (>= 3.17.0) parallel (~> 1.10) @@ -661,7 +676,7 @@ GEM rubocop-ast (>= 1.28.1, < 2.0) ruby-progressbar (~> 1.7) unicode-display_width (>= 2.4.0, < 3.0) - rubocop-ast (1.29.0) + rubocop-ast (1.30.0) parser (>= 3.2.1.0) rubocop-capybara (2.19.0) rubocop (~> 1.41) @@ -670,7 +685,7 @@ GEM rubocop-performance (1.19.1) rubocop (>= 1.7.0, < 2.0) rubocop-ast (>= 0.4.0) - rubocop-rails (2.20.2) + rubocop-rails (2.22.1) activesupport (>= 4.2.0) rack (>= 1.1) rubocop (>= 1.33.0, < 2.0) @@ -735,6 +750,9 @@ GEM actionpack (>= 5.2) activesupport (>= 5.2) sprockets (>= 3.0.0) + sshkit (1.21.5) + net-scp (>= 1.1.2) + net-ssh (>= 2.8.0) stackprof (0.2.25) statsd-ruby (1.5.0) stoplight (3.0.2) @@ -823,7 +841,7 @@ GEM zeitwerk (2.6.12) PLATFORMS - ruby + x86_64-linux DEPENDENCIES active_model_serializers (~> 0.10) @@ -837,6 +855,10 @@ DEPENDENCIES brakeman (~> 6.0) browser bundler-audit (~> 0.9) + capistrano (~> 3.17) + capistrano-rails (~> 1.6) + capistrano-rbenv (~> 2.2) + capistrano-yarn (~> 2.0) capybara (~> 3.39) charlock_holmes (~> 0.7.7) chewy (~> 7.3) @@ -907,7 +929,7 @@ DEPENDENCIES rack-attack (~> 6.6) rack-cors (~> 2.0) rack-test (~> 2.1) - rails (~> 7.1.1) + rails (~> 7.0) rails-controller-testing (~> 1.0) rails-i18n (~> 7.0) rails-settings-cached (~> 0.6)! @@ -916,7 +938,6 @@ DEPENDENCIES redis (~> 4.5) redis-namespace (~> 1.10) rqrcode (~> 2.2) - rspec-github (~> 2.4) rspec-rails (~> 6.0) rspec-sidekiq (~> 4.0) rspec_chunked (~> 0.6)