Контекст: мы пытаемся перенести наш сервер gitlab от одного поставщика к другому и обновить его до последней версии, и мы пытаемся найти способ сделать это таким образом, чтобы не нарушить все.
У меня есть VPS с версией gitlab 7.0.0 (омнибус) в ОС ubuntu, которую я пытаюсь обновить до последней версии. Судя по всему, у gitlab не было репозитория пакетов в то время, когда была 7.0.0, поэтому я последовал этот страницу, чтобы попробовать и обновить через репо. На всякий случай запустил еще один экземпляр VPS на новом провайдере, сделал резервную копию через этот, скопировал пакет deb с исходного сервера, установил пакет deb и выполнил восстановление, которое отлично сработало. Доступ к новому VPS по IP работает так же хорошо, как и к оригиналу.
Затем я наконец сделал обновление по инструкции.
Вместо этого к концу я получаю следующее:
Chef Client failed. 9 resources updated in 21 seconds
dpkg: error processing package gitlab-ce (--install):
subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
gitlab-ce
Я пробовал получить доступ через IP и вот он сломался с ошибкой 500.
Я попытался покопаться в деталях и обнаружил следующее:
Error executing action `run` on resource 'bash[migrate gitlab-rails database]'
С благословения моего босса и для исключения проблем со средой я попытался сделать снимок сервера gitlab, запустил другой экземпляр VPS на исходном провайдере и загрузил его со снимком, эффективно клонировав сервер. Я попытался обновить это, но он все еще ломается. Я попытался вручную загрузить пакет и установить через dpkg
который по-прежнему не работает.
К этому моменту я не совсем уверен, что упускаю из виду.
После сна на нем у меня было прозрение: сначала обновитесь до версии 7.10 через сервер пакетов, используя sudo apt-get install gitlab-ce=7.10.0~omnibus-1
. затем сделайте: sudo apt-get upgrade
. Это успешно обновило его. Вау, интерфейс тоже выглядит по-другому.
Теперь о моем следующем приключении, резервном копировании и восстановлении.