Привет!
Я разрабатываю плагин для Discourse для внутренних нужд и также пытаюсь внести вклад в основную разработку.
Стабильная версия плагина использует стабильную версию Discourse, поэтому мне приходится постоянно переключать кодовую базу:
- использовать ветку
mainпри внесении вкладов в основную разработку; - использовать версию, применяемую в нашей производственной среде, при исправлении ошибок в плагине;
- использовать последнюю версию при добавлении новых функций в плагин.
Каждый раз мне приходится останавливать контейнер разработки (d/shutdown_dev), удалять папки data и tmp, переключаться на нужную версию Discourse, затем пересобирать и перезапускать контейнер (d/boot_dev --init), настраивать первого пользователя и применять нашу конфигурацию (через своего рода автоматизированный скрипт восстановления). Иногда это приходится делать много раз в день.
Есть ли способ сделать этот процесс менее болезненным?
В идеале я бы хотел:
- иметь возможность настроить контейнер разработки так, чтобы он не запускался автоматически;
- иметь возможность создавать несколько контейнеров разработки, которые я могу запускать и останавливать по мере необходимости.
Команда d/boot_dev --help показывает аргументы --env и --env-files, но я не смог найти информацию о том, что именно можно настроить с их помощью.
Сталкиваетесь ли вы с подобными проблемами? Как вы решаете их?