Недавно я добавил в Bundler опцию BUNDLE_ONLY
.
Это долгожданная функция 8+ лет назад, которая позволяет вам устанавливать только те группы гемов, которые вам нужны, доступна с версии bundler 2.3.19.
- https://github.com/rubygems/bundler-features/issues/59
- https://github.com/rubygems/bundler/pull/4907
- https://github.com/rubygems/rubygems/issues/4048
- https://github.com/rubygems/rubygems/pull/5759
Например, в нашем приложении Rails у нас безумное количество gem-групп (ужасно, я знаю). Существует рабочий процесс для запуска RuboCop с помощью GitHub Actions, но этот рабочий процесс требует только установки гемов из группы гемов rubocop.
# .gtihub/workflows/rubocop.yml
env:
- BUNDLE_WITHOUT: >
- danger
- default
- development
- feature1
- feature2
- feature3
- feature4
- feature5
- feature6
- feature7
- mobile
- production
- qa
- staging1
- staging2
- staging3
- test
+ BUNDLE_ONLY: rubocop
Раньше нужно было использовать BUNDLE_WITHOUT
, чтобы исключать ненужные группы гемов по одному, но теперь BUNDLE_ONLY
позволяет нам написать так 😃