У меня уже несколько лет была проблема с установкой Discourse, застрявшей на версии v2.9.0.beta1 — из-за личных обстоятельств я не мог её решить. В то время переход на v2.9.0.beta2 казался невозможным. Недавно, разбираясь с проблемой пересборки, я закомментировал некоторые хуки в моём файле app.yml (а именно те, которые принудительно переключают на конкретный тег), следующим образом:
После пересборки мой экземпляр неожиданно обновился до версии 3.4.0.beta4-dev. Хотя я рад, что наконец преодолел ту проблему, теперь я хочу, чтобы система продолжала следовать бета-ветке 3.4.0 до тех пор, пока не выйдет стабильная версия 3.4.x, а после её выхода зафиксировать эту стабильную версию, чтобы избежать автоматического обновления до новых бета- или разработческих версий.
Каков правильный способ «зафиксировать» или заблокировать релиз на стабильной версии после её выхода, не прибегая к откату или ручным вмешательствам при каждой пересборке?
Буду очень признателен за любые рекомендации или лучшие практики!
Похоже, что после пересборки вы изменили версию на стабильную. Сейчас вы уже вышли за рамки стабильной версии, поэтому вам нужно изменить её на beta или tests-passed до следующего стабильного релиза (а так как за последнюю неделю один уже был, это займёт довольно много времени, обычно 8–10 месяцев).
Нет, к сожалению, я этого не делал… Я на 100% уверен в этом: сначала была версия 3.4.0.beta4-dev, затем я изменил app.yml и выполнил пересборку. После этого появилась версия 3.5.0.beta1-dev. Это 100% тот путь, по которому мы шли… У меня нет никаких сомнений, чтобы всё было предельно ясно. Я буквально проверил всё перед выполнением указанных действий.
Ещё раз спасибо за вашу помощь, @pfaffman. Подведу итог своему текущему пониманию:
Наш экземпляр работал на версии 3.4.0.beta4-dev, которая не считается стабильным релизом.
Когда я обновил конфигурацию, установив version: stable (при этом значение по умолчанию было закомментировано), я ожидал, что будущие пересборки зафиксируют экземпляр на стабильной ветке. Однако, поскольку мы уже находились на бета-версии, обновление продолжилось дальше, что привело к версии 3.5.0.beta1-dev.
Похоже, что переключение на version: stable после того, как версия уже вышла за пределы стабильного тега, не вызывает отката; это означает лишь, что если мы находимся на стабильной версии или ниже неё, нас зафиксируют на стабильной версии вместо отслеживания бета-версий.
Верно ли это?
Кроме того, не могли бы вы уточнить рекомендуемый процесс, чтобы в будущем случайно не перейти на бета-канал? В частности:
Достаточно ли оставить version: stable как активную конфигурацию, чтобы гарантировать, что при появлении стабильного релиза наши пересборки зафиксируются на нём — при условии, что мы ещё не перешагнули его на момент выхода стабильной версии?
Существуют ли какие-либо дополнительные шаги или задачи по очистке (например, удаление или изменение других элементов конфигурации), которые нам следует выполнить, чтобы избежать непреднамеренного обновления до бета-версий или версий разработки?
Мне очень хочется как можно скорее зафиксироваться на стабильном релизе, но я не хочу, чтобы это снова перепрыгнуло через него…
Д’оу! Возможно, я слишком быстро посмотрел на свой телефон. У меня нет объяснения тому, как я пропустил это, и тому, что сайт теперь работает на версии 3.5.0.beta1-dev.