Обновление до актуальной версии
В статье описана последовательность действий для обновления GitLab сервера.
Перед обновлением сервера рекомендуется создать резервную копию.
Обновляем пакеты:
apt update
Если при выполнении команды возникает следующая ошибка:
W: An error occurred during the signature verification. The repository is not updated and the previous index files will be used. GPG error: https://packages.gitlab.com/gitlab/gitlab-ce/debian buster InRelease: The following signatures were invalid: EXPKEYSIG 3F01618A51312F3F GitLab B.V. (package repository signing key) <packages@gitlab.com>
Необходимо добавить GPG-ключ командой:
curl -s https://packages.gitlab.com/gpg.key | apt-key add -
Скачиваем и выполняем скрипт для настройки GitLab CE репозитория:
curl -s https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash
После этого обновляем пакеты:
apt update
И обновляем GitLab:
apt install gitlab-ce
Во время обновления может возникнуть следующее предупреждение:
gitlab preinstall: It seems you are upgrading from 16.9 to 17.3.
gitlab preinstall: It is required to upgrade to the latest 16.11.x version first before proceeding.
gitlab preinstall: Please follow the upgrade documentation at https://docs.gitlab.com/ee/update/#upgrading-to-a-new-major-version
Это предупреждение означает, что перед обновлением до требуемой версии необходимо сначала обновить GitLab до более ранней версии, это связано с особенностями последовательности обновлений.
Для этого выводим список всех пакетов gitlab доступных для обновления:
apt list gitlab-ce -a
Устанавливаем более раннюю версию:
apt install gitlab-ce=16.11.0-ce.0
Затем устанавливаем последнее обновление:
apt install gitlab-ce
Если система долго не обновлялась, возможно, потребуется поочерёдно установить несколько промежуточных версий.
После окончания очистить кэш пакетов:
apt clean