Skip to content

Commit

Permalink
Upgrade to Rails 7.2, Ruby 3.3, Alpine 3.20 (#5976)
Browse files Browse the repository at this point in the history
* bump ruby to 3.3 and alpine to 3.20

* bump rails to 7.2

* merge in changes from rails update and rake db:schema:dump

* bump rspec-rails and explicitly add nkf (will be removed from default gems in Ruby 3.4)

* switch to Rails 7.2 defaults

* update data_migrate to fix error on db:migrate:with_data

* resolve magick-related Rspec failures on Github CI

* address deprecation / upcoming removal of mutex_m from default gems (in Ruby 3.4)

* bump some gems and resolve remaining deprecations for Rails 8.0

* amazonlinux build with Ruby 3.3

* pin ruby image to 3.3 in Dockerfile

---------

Co-authored-by: Ahmad Farhat <[email protected]>
  • Loading branch information
Ithanil and farhatahmad authored Jan 16, 2025
1 parent 5e1dbb4 commit aef1ba9
Show file tree
Hide file tree
Showing 28 changed files with 1,215 additions and 957 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/ci.build.prerelease.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
env:
RUBY_VERSION: 3.1
RUBY_VERSION: 3.3

name: CI Build Pre-Release
on:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/ci.build.push.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
env:
RUBY_VERSION: 3.1
RUBY_VERSION: 3.3

name: CI Build Push
on:
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/ci.build.release.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
env:
RUBY_VERSION: 3.1
RUBY_VERSION: 3.3

name: CI Build Release
on:
Expand All @@ -13,7 +13,7 @@ jobs:
DOCKER_REPOSITORY: ${{ secrets.DOCKER_REPOSITORY }}
DOCKER_BUILD_ENABLED: ${{ secrets.DOCKER_BUILD_ENABLED }}
DOCKER_BUILD_ALTERNATE_ENABLED: ${{ secrets.DOCKER_BUILD_ALTERNATE_ENABLED }}
runs-on: ubuntu-20.04
runs-on: ubuntu-24.04
steps:
- name: Checkout
if: contains(env.DOCKER_BUILD_ENABLED, 'true')
Expand Down
7 changes: 5 additions & 2 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
env:
RUBY_VERSION: 3.1.0
RUBY_VERSION: 3.3
DATABASE_URL: postgres://postgres:postgres@localhost/greenlight-actions
RAILS_ENV: test

Expand All @@ -11,7 +11,7 @@ on:
jobs:
test:
name: Rubocop + RSpec + ESLint + License Header Check
runs-on: ubuntu-20.04
runs-on: ubuntu-24.04

services:
postgres:
Expand All @@ -37,6 +37,9 @@ jobs:
with:
ruby-version: ${{ env.RUBY_VERSION }}

- name: Install imagemagick
run: sudo apt-get install -y imagemagick

- name: Bundle cache
uses: actions/cache@v2
with:
Expand Down
2 changes: 1 addition & 1 deletion .rubocop.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ AllCops:
- 'vendor/bundle/**/*'
- 'config/routes.rb'
DisabledByDefault: false
TargetRubyVersion: 3.1
TargetRubyVersion: 3.3
NewCops: enable

# Document classes and non-namespace modules.
Expand Down
1 change: 0 additions & 1 deletion .ruby-version

This file was deleted.

2 changes: 1 addition & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM ruby:alpine3.17 AS base
FROM ruby:3.3-alpine3.20 AS base

ARG RAILS_ROOT=/usr/src/app
ENV RAILS_ROOT=${RAILS_ROOT}
Expand Down
22 changes: 11 additions & 11 deletions Gemfile
Original file line number Diff line number Diff line change
Expand Up @@ -3,35 +3,35 @@
source 'https://rubygems.org'
git_source(:github) { |repo| "https://github.com/#{repo}.git" }

ruby '>= 3.0'
ruby '>= 3.3'

gem 'active_model_serializers', '>= 0.10.14'
gem 'active_storage_validations', '>= 1.1.0'
gem 'active_model_serializers', '>= 0.10.15'
gem 'active_storage_validations', '>= 1.3.4'
gem 'aws-sdk-s3', require: false
gem 'bcrypt', '~> 3.1.7'
gem 'bigbluebutton-api-ruby', '1.9.1'
gem 'bootsnap', require: false
gem 'clamby', '~> 1.6.10'
gem 'cssbundling-rails', '>= 1.3.3'
gem 'data_migrate', '>= 9.4.0'
gem 'data_migrate', '>= 11.2'
gem 'dotenv-rails'
gem 'google-cloud-storage', '~> 1.44', require: false
gem 'hcaptcha'
gem 'hiredis', '~> 0.6.0'
gem 'i18n-language-mapping'
gem 'image_processing', '~> 1.2'
gem 'jbuilder'
gem 'jbuilder', '>= 2.12'
gem 'jsbundling-rails', '>= 1.2.2'
gem 'jwt'
gem 'mini_magick', '>= 4.9.5'
gem 'nkf', '~> 0.2.0'
gem 'omniauth', '~> 2.1.2'
gem 'omniauth_openid_connect', '>= 0.6.1'
gem 'omniauth-rails_csrf_protection', '~> 1.0.2'
gem 'pagy', '~> 6.0', '>= 6.0.0'
gem 'pg'
gem 'puma', '~> 5.6'
gem 'rails', '~> 7.1.4', '>= 7.1.4.1'
gem 'redis', '~> 4.0'
gem 'puma', '~> 6.4'
gem 'rails', '~> 7.2.2'
gem 'redis', '~> 4.8.0'
gem 'sprockets-rails', '>= 3.5.0'
gem 'tzinfo-data', platforms: %i[mingw mswin x64_mingw jruby]

Expand All @@ -54,11 +54,11 @@ group :test do
gem 'factory_bot', '>= 6.4.1'
gem 'factory_bot_rails', '>= 6.4.3'
gem 'faker'
gem 'rspec-rails', '>= 6.0.4'
gem 'rspec-rails', '~> 7.1'
gem 'selenium-webdriver'
gem 'shoulda-matchers', '~> 5.0'
gem 'webdrivers'
gem 'webmock'
gem 'webmock', '>= 3.23.1'
end

group :production do
Expand Down
Loading

0 comments on commit aef1ba9

Please sign in to comment.