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
小規模個人アプリをRails 7.xにバージョンアップした話
Search
Kazuhiro NISHIYAMA
November 27, 2023
Technology
0
97
小規模個人アプリをRails 7.xにバージョンアップした話
[【出張版】Kyoto.rb Meetup 【大阪だよ】](
https://kyotorb.connpass.com/event/296972/)のLT大会での発表資料です
。
Kazuhiro NISHIYAMA
November 27, 2023
Tweet
Share
More Decks by Kazuhiro NISHIYAMA
See All by Kazuhiro NISHIYAMA
Ruby on Rails と私
znz
0
26
riscv64.rubyci.org internal
znz
0
21
Rubyの日本語リファレンスマニュアルの現在と未来
znz
0
68
devise-two-factorを4.xから5.xに上げた話
znz
0
340
docs.ruby-lang.org/ja/ の生成方法を変えた
znz
0
84
Ubuntuのriscv64版をqemuで動かした
znz
0
100
lilo.linux.or.jpをbusterからbullseyeに上げた
znz
0
110
Ruby リファレンスマニュアル改善計画 2022 進捗報告
znz
0
150
Rubyist Magazine Reboot
znz
0
220
Other Decks in Technology
See All in Technology
webpack依存からの脱却!快適フロントエンド開発をViteで実現する #vuefes
bengo4com
4
3.4k
だいたい分かった気になる 『SREの知識地図』 / introduction-to-sre-knowledge-map-book
katsuhisa91
PRO
3
1.4k
SRE × マネジメントレイヤーが挑戦した組織・会社のオブザーバビリティ改革 ― ビジネス価値と信頼性を両立するリアルな挑戦
coconala_engineer
0
240
AI AgentをLangflowでサクッと作って、1日働かせてみた!
yano13
1
160
組織全員で向き合うAI Readyなデータ利活用
gappy50
1
350
RemoteFunctionを使ったコロケーション
mkazutaka
1
110
プレイドのユニークな技術とインターンのリアル
plaidtech
PRO
1
360
AI時代、“平均値”ではいられない
uhyo
8
2.6k
AI時代におけるデータの重要性 ~データマネジメントの第一歩~
ryoichi_ota
0
710
AIエージェントによる業務効率化への飽くなき挑戦-AWS上の実開発事例から学んだ効果、現実そしてギャップ-
nasuvitz
5
1.2k
Azureコストと向き合った、4年半のリアル / Four and a half years of dealing with Azure costs
aeonpeople
1
300
「タコピーの原罪」から学ぶ間違った”支援” / the bad support of Takopii
piyonakajima
0
140
Featured
See All Featured
Keith and Marios Guide to Fast Websites
keithpitt
411
23k
Music & Morning Musume
bryan
46
6.9k
Building Adaptive Systems
keathley
44
2.8k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
130k
GraphQLとの向き合い方2022年版
quramy
49
14k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
The Invisible Side of Design
smashingmag
302
51k
Building a Modern Day E-commerce SEO Strategy
aleyda
44
7.8k
The Power of CSS Pseudo Elements
geoffreycrofte
80
6k
The Pragmatic Product Professional
lauravandoore
36
7k
Transcript
小規模個人アプリをRails 7.xにバー ジョンアップした話 Kazuhiro NISHIYAMA Kyoto.rb Meetup 2023-11-27 Powered by
Rabbit 3.0.3
self.introduction 西山 和広 Ruby のコミッター github など: @znz 株式会社Ruby開発 www.ruby-dev.jp
1/16
対象 個人メモ用アプリ https://github.com/znz/memo-app-r scaffold をちょっと改造した程度の機能のみ ログイン、検索 位置情報 (これが欲しかったので自作) (自分専用なので)メモ本文は生HTMLが書ける Dokku
にデプロイ 2/16
更新バージョン Rail 6.1.7.6 → 7.0.8 → 7.1.2 Ruby 3.1.4 →
3.2.2 3/16
更新方法 以下のように新規作成したアプリと比較 docker run --rm -it ruby:3.1.4 /bin/bash gem i
rails -v '~> 7.0.0' rails new /tmp/hoge --database=postgresql 4/16
新規と比較して更新 Gemfile config/environments/*.rb 5/16
bin/rails app:update bin/rails app:update で更新 Active Storage の migration などの不要なものは除外してマージ
6/16
decaffeinate テストを実行しようとすると *.coffee があるとエラーになった https://github.com/decaffeinate/decaffeinate https://decaffeinate-project.org/ を使って *.coffee を変換 7/16
turbolinks turbolinks も Gemfile から削除していたのでエラー turbo に書き換え app/assets/javascripts/application.js から //=
require turbolinks を削除 (turbo の追加は必要なかった) 8/16
警告対応 to_s(:delimited) → to_fs(:delimited) 9/16
assets:precompile 失敗 Dokku に deploy すると、なぜか rake assets:precompile でエ ラー
-----> Preparing app for Rails asset pipeline Running: rake assets:precompile rake aborted! LoadError: cannot load such file -- coffee_script 原因不明なので coffee-rails を Gemfile に戻した。 10/16
ruby も更新 ついでに ruby も 3.2.2 に更新 ruby file: ".ruby-version"
はデプロイでエラー ruby File.read(".ruby-version").chomp にした 11/16
new framework defaults config.load_defaults 7.0 に更新 new_framework_defaults_7_0.rb を削除 デプロイするとログアウトしていたのでログインしなおし 12/16
7.1 に更新 以下と比較して Gemfile を更新 docker run --rm -it ruby:3.2.2
/bin/bash gem i rails rails new /tmp/hoge --database=postgresql 13/16
app:update bin/rails app:update Active Storage の migration は除外してマージ 14/16
デプロイ テストも問題なく通るのでデプロイ 問題なく動いてそう Rails 7.0 から 7.1 は Rails のバージョンを上げるだけならあっ
さりできた 15/16
今後 new_framework_defaults_7_1 はまだ未対応なので対応予定 JavaScript の位置情報取得部分もテストしたい Rails 標準の minitest を試しているが、単純なテストのみなので rspec
と両方にしたい bootstrap 4 のままなので、更新か他のものに移行したい 位置情報取得部分を jQuery から移行したい coffee-rails は調査不足で原因不明のままだが sprockets を消 せば解決すると期待したい 16/16 Powered by Rabbit 3.0.3