Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
SRE が Ruby アップグレードの時にやっていること (SRE Kaigi 2025 LT)
Search
Mai Aisaka
January 26, 2025
0
390
SRE が Ruby アップグレードの時にやっていること (SRE Kaigi 2025 LT)
弊社では Ruby バージョンのアップグレードを SRE チームで主導しています。
いろいろ恩恵もあるのでいい方法だなと思いつつ、他社さんでどうやってるのか気になり LT させてもらいました!
Mai Aisaka
January 26, 2025
Tweet
Share
More Decks by Mai Aisaka
See All by Mai Aisaka
Trusted Advisor の対応推奨項目の diff をとる
mist_dev
1
210
1on1やってみてるよ
mist_dev
0
280
Featured
See All Featured
Embracing the Ebb and Flow
colly
84
4.6k
Fireside Chat
paigeccino
34
3.2k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
2.1k
Side Projects
sachag
452
42k
Facilitating Awesome Meetings
lara
52
6.2k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.4k
Bash Introduction
62gerente
611
210k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
46
2.3k
VelocityConf: Rendering Performance Case Studies
addyosmani
328
24k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
7
630
Adopting Sorbet at Scale
ufuk
74
9.2k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
Transcript
©iCARE Co.,Ltd SRE が Ruby アップグレードの時にやっていること あいさか (@mist_dev)
©iCARE Co.,Ltd 自己紹介 • あいさか (@mist_dev) • iCARE SRE 2年生
• Ruby💎とビール🍺が好き • ふだんやってること ◦ インフラ基盤のアップグレード ◦ セキュリティ周り対策 ◦ ポストモーテム回し業 ◦ 問い合わせを開発者と一緒に対応 ◦ 手順書書き業
©iCARE Co.,Ltd きょうの話 • SRE が Ruby バージョンのアップグレードを牽引 するととってもよいです! •
うちの SRE チームはこういう関わりかたで Ruby バージョンのアップグレード をしています、という話をします • 各社 SRE の業務領域に差異があるので、どの辺までやってるか?とかは懇親会 でぜひお話ししたい!☺
©iCARE Co.,Ltd Rubyバージョンのアップグレード • Rubyはわかりやすく EOL が 1年おきにくるのでこまめにアップグレードをする ひつようがある 出典:
https://www.ruby-lang.org/ja/downloads/branches/
©iCARE Co.,Ltd Rubyバージョンのアップグレード • うちの SRE でやっていること ◦ Ruby バージョンアップグレードの進行
取りまとめ ◦ Ruby 新バージョンの リリースノート から変更を要する要素の洗い出し ◦ アプリケーションの修正 ▪ 廃止やリネームになった要素の置換 ▪ Gemfile などの修正 ▪ CI の変更前後の確認 ◦ アップグレード環境の構築・テスト ◦ アップグレード環境へのリプレイス
©iCARE Co.,Ltd リリースノートから変更の必要のある要素の洗い出し • このあたりの削除されたメソッドを 使っていたら修正をしないとな〜🧐 出典: https://www.ruby-lang.org/ja/news/2022/12/25/ruby-3-2-0-released/
©iCARE Co.,Ltd リリースノートから変更の必要のある要素の洗い出し 目次 • イメージや環境に入れておかないとい けないパッケージないかな〜🧐 出典: https://www.ruby-lang.org/ja/news/2022/12/25/ruby-3-2-0-released/
©iCARE Co.,Ltd アプリケーションの修正 • 実際にやったこと ◦ Time.new の引数の 型の厳格化 に対応
◦ File.exists? の削除にともない File.exist? に リネーム ◦ bundled gem 化する予定の gem を Gemfile に追記 ◦ YJIT の有効化 ▪ rustc のインストール ◦ などなど...
©iCARE Co.,Ltd そのあと 目次 • CI が通ることを確認 ◦ 通らない場合は調査して修正、開発者の方に修正を依頼など •
新しい Ruby バージョンで稼働する環境を構築 • 社内の QA チームに QA を依頼 ◦ 特に変更のあったメソッドを利用している機能があれば伝える ◦ 自明な変更がないときもある... • リリース! ◦ 変更前後の Datadog を比較して課題がないこと、予期した改善が予期した 通りに行われていること、予期していない変動がないかを確認
©iCARE Co.,Ltd SRE が Ruby アップグレードをリードするといいこと 目次 • 開発エンジニアに 機能開発に集中
してもらえる • インフラ環境側の変更をとりこみやすい ◦ パッケージ入れなきゃ〜 ◦ サービス側に変更入れなきゃ〜 • アプリケーションのコードを触る いい機会になる ◦ 開発のみなさまへのリスペクトがめちゃめちゃ生まれる • おすすめです!
©iCARE Co.,Ltd ©iCARE Co.,Ltd Thank you.