vault backup: 2026-05-31 23:23:32
This commit is contained in:
@@ -0,0 +1,59 @@
|
||||
---
|
||||
title: "Rails 8 Migration Guide (finreport-analyzer)"
|
||||
status: seed
|
||||
type: guide
|
||||
tags: [programming, ruby-on-rails, rails-8, migration]
|
||||
created: 2026-05-31
|
||||
updated: 2026-05-31
|
||||
source: "[[Rails 8 Migration Guide (finreport-analyzer).md]]"
|
||||
---
|
||||
|
||||
# Rails 8 Migration Guide (finreport-analyzer)
|
||||
|
||||
Дата: 31.05.2026
|
||||
|
||||
## Основные изменения
|
||||
|
||||
1. **Rails 8 Upgrade**:
|
||||
- Обновлен `Gemfile` до `gem "rails", "~> 8.0.0"`.
|
||||
- Запущен `rails app:update`.
|
||||
- Добавлен `config/initializers/new_framework_defaults_8_0.rb`.
|
||||
|
||||
2. **Solid Queue (Замена Sidekiq)**:
|
||||
- Удален `sidekiq`, добавлен `solid_queue`.
|
||||
- Удален Redis (больше не требуется для фоновых задач).
|
||||
- Выполнены миграции: `bin/rails generate solid_queue:install && bin/rails db:migrate`.
|
||||
- Перенесены джобы: `app/sidekiq/` -> `app/jobs/`.
|
||||
- Обновлен `ActiveJob` адаптер на `:solid_queue`.
|
||||
|
||||
3. **Solid Cable (Замена Redis для Action Cable)**:
|
||||
- Добавлен `solid_cable`.
|
||||
- Выполнены миграции для таблиц Solid Cable.
|
||||
|
||||
4. **Propshaft (Замена Sprockets)**:
|
||||
- Удален `sprockets-rails`, добавлен `propshaft`.
|
||||
- Удалены `app/assets/config/manifest.js` и `config/initializers/assets.rb`.
|
||||
- Assets теперь управляются проще, без лишних манифестов.
|
||||
|
||||
5. **Deployment (Capistrano + Supervisor)**:
|
||||
- Обновлены конфиги Capistrano для работы с Rails 8.
|
||||
- Переход с `capistrano-rvm` на `capistrano-rbenv` (согласно текущему сетапу сервера).
|
||||
- Добавлены systemd-шаблоны в `config/systemd/` для Puma и Solid Queue.
|
||||
- На сервере процессы управляются через **Supervisor**.
|
||||
|
||||
## Команды для проверки
|
||||
|
||||
```bash
|
||||
bundle exec rails db:migrate
|
||||
bundle exec rails assets:precompile
|
||||
bundle exec rails jobs:start # для локального запуска Solid Queue
|
||||
```
|
||||
|
||||
## Нюансы
|
||||
- `connection_pool` зафиксирован на `< 3.0` для совместимости с Ruby 3.3.0.
|
||||
- `puma-daemon` удален, так как современные Rails/Puma лучше работают под управлением супервизоров (systemd/supervisor).
|
||||
|
||||
## Связи
|
||||
- [[Ruby On Rails - MOC]]
|
||||
- [[Sidekiq - основа работы]]
|
||||
- [[Deploy - finreport-analyzer]]
|
||||
Reference in New Issue
Block a user