Что могу сказать по задаче "регулярки хранятся в priv
, может их положить в БД миграцией?"
Во-первых, простейший способ - положить в version control и периодически апдейтить.
Во-вторых, добавлять данные в БД через миграции в целом можно. Это сложнее, но иногда они требуются для логической консистентности приложения, а иногда позволяют решить проблемы, которые сам себе создал.
Основная разница этих способов - в итеративном накатывании миграций БД. Код в репозитории отражает только текущее логическое состояние, а данные в базе и код миграций несут на себе печать истории. Может так получиться, что до мержа PR в базе лежали валидные инварианты, а после мержа - уже не валидные.
Эта проблема бывает заметна на долгоживущих проектах - у девелоперов, которые работают с проектами давно и периодически накатывают новые миграции, окружение настроено. Но новый разраб, разворачивая проект с нуля, и накатывая все миграции, обнаруживает, что какая-нибудь старая миграция валится, и нужно пойти руками в базу что-то подправить, чтобы миграции пошли дальше. Причина в том, что эта старая миграция у всех разрабов и на проде выполнялась с расчётом на _тогдашнее_ состояние фикстур и данных в БД. А сейчас фикстуры уже уехали. Выход? При написании миграций не полагаться на состояние кода, фикстур, yml-бд и вообще всего что находится вне бд.
Резюмируя: оптимальный вариант - положить yml-файлы в version control и быть аккуратнее с миграциями.