Skip to content

Update Ruby to 3.2.11#71805

Merged
Hamms merged 39 commits into
stagingfrom
elijah/ruby-3.2.11
Apr 23, 2026
Merged

Update Ruby to 3.2.11#71805
Hamms merged 39 commits into
stagingfrom
elijah/ruby-3.2.11

Conversation

@Hamms

@Hamms Hamms commented Mar 31, 2026

Copy link
Copy Markdown
Contributor

Links

Release announcement
Overview of major changes

Follow-up to:

Testing story

In addition to updating the Drone image, I also tested on an adhoc; both that we can successfully provision a new instance on this version of ruby, and that we can successfully apply this update to an existing instance.

Deployment notes

Developers will need to:

  1. Update ruby-build
    • cd "$(rbenv root)/plugins/ruby-build" && git pull
  2. Run rbenv install from project root

We should anticipate a very long deployment process for this one; a Ruby version update usually means we need to recompile all Dashboard assets from scratch, which on our servers is a multi-hour process.

As always with a major update like this one, we should also be prepared for issues which only manifest in non-test environments. Every deployment attempt should be considered speculative, and we should be prepared to revert.

Hamms added 30 commits March 17, 2026 13:44
…reduce flakiness when running eyes tests in drone
…version, to generate baseline""""

This reverts commit 0ae845e.
…aging's version, to generate baseline"""""

This reverts commit e2287f2.
@Hamms Hamms added the Ruby Update Everything related to work to update the version of Ruby our codebase runs on label Mar 31, 2026
@Hamms Hamms changed the title Ruby 3.2.11 Update Ruby to 3.2.11 Apr 17, 2026
@Hamms Hamms marked this pull request as ready for review April 17, 2026 19:07
@Hamms Hamms requested a review from a team as a code owner April 17, 2026 19:07
@Hamms Hamms requested review from a team and snickell April 17, 2026 19:07
Comment thread .drone.yml
# actually run the tests.
- name: prepare-cacheable-build
image: codedotorg/cdo-ci:1.18
image: codedotorg/cdo-ci:1.19

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should we expect a period of failing drone builds after this PR is merged, before prepare-cacheable-build completes ~60 min later, and the same again if this PR is reverted? Not necessarily a blocker for this to be merged, but could be worth sharing out to the team.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think so, no. Note that this PR passed Drone without incident

@davidsbailey davidsbailey Apr 21, 2026

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've gone ahead and made a backup of the drone cache, which would hopefully allow us to quickly restore passing drone builds if we need to revert this PR:

[10:15:20] Dave-M4:~/src/cdo (staging)$ AWS_PROFILE=codeorg-dev aws s3 cp s3://cdo-drone/code-dot-org/code-dot-org/staging/cache-staging-ci-build.tar.gz s3://cdo-drone/code-dot-org/code-dot-org/staging/cache-staging-ci-build-ruby-3.1.7.tar.gz

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's possible that Drone runs which started before this PR was merged but which run the checkout step after it was merged will complain, because they will be running on the 1.18 image but will pick up the .ruby-version change when they pull from staging latest. But there's only a 3-4 minute window in which that could happen, so I don't expect more than a small handful of runs will need to be manually restarted

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you clarify what relevance the drone cache has here? I'm not sure I'm fully understanding your concern

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think so, no. Note that this PR passed Drone without incident

Good point! probably no risk to drone cache, then. you can ignore my backup.

@Hamms Hamms merged commit b4565dc into staging Apr 23, 2026
7 of 8 checks passed
@Hamms Hamms deleted the elijah/ruby-3.2.11 branch April 23, 2026 17:56
@Hamms Hamms mentioned this pull request Apr 29, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Ruby Update Everything related to work to update the version of Ruby our codebase runs on

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants