У меня в containers/app.yml указано revision: stable, которое сейчас указывает на версию v2.3.8. При попытке пересобрать контейнер возникает ошибка:
I, [2019-12-24T17:46:51.163113 #1] INFO -- : > cd /var/www/discourse && find /var/www/discourse ! -user discourse -exec chown discourse {} \+
chown: невозможно обратиться к '/var/www/discourse/public/plugins/discourse-internet-explorer': файл или каталог не найден
Похоже, что плагин discourse-internet-explorer был добавлен в бета-выпуске v2.4.0, поэтому логично, что его нет в версии 2.3.8, но непонятно, почему команда chown ожидает его наличия. Мне удалось решить проблему, изменив параметр на revision: tests-passed, но я решил сообщить об этой ошибке, так как она стала серьёзным препятствием для меня при попытке обновиться до последней стабильной версии.
Теперь, когда вы упомянули, это может быть связано. Образы всегда собираются при условии успешного прохождения тестов. Поэтому я думаю, что команда для отката к старому коммиту git вызывает путаницу у chown или оставляет повреждённую символическую ссылку?
Похоже, ошибка возникла из-за того, что этот файл обычно игнорируется благодаря .gitignore, поэтому, если вы проверяли стабильную версию поверх tests-passed, это не сработало. Я исправил это.
Появилась ещё одна странная ошибка! Мы обновили bundler, но версия в нашем стабильном файле Gemfile.lock была слишком старой. Я также обновил её.