Upgrade Gitlab CE from 13.12.4 to 14.0.0

I used Gitlab CE for many years. It is running on a virtual machine with 4 CPUs and 10GB Ram, 64 GB Storage.

Yesterday, when I tried to upgrade it from version 13.12.4 to the latest version 14.0.0. It always shows me the error and can not complete the upgrade.

I did a little bit of research and found the problem.

My Gitlab installation is using Unicorn, not the puma. When Gitlab release 14.0.0. It is clearly mentioned that “Removing support for using Unicorn as web server

In GitLab 13.0, Puma became the default web server for GitLab, but users were still able to continue using Unicorn if needed. Starting with GitLab 14.0, Unicorn is no longer supported as a webserver for GitLab and is no longer shipped with the omnibus-gitlab packages. Users must migrate to Puma following documentation to upgrade to GitLab 14.0.

So, I checked the Gitlab Docs and followed the guide.

  1. Make sure the puma workers is 3.
  2. Turn off the unicorn and sidekiq, then change the settings in gitlab.rb
  3. reconfigure and start the server.

Then, I manually upgrade the gitlab from 13.12.4 to 13.12.5

sudo apt upgrade gitlab-ce=13.12.5-ce.0

Restart the server, everything is good.

The last step, upgrade Gitlab from 13.12.5 to 14.0.0

sudo apt upgrade

Then, restart and check the environment information.

davidyin@gitlab:~$ sudo gitlab-rake gitlab:env:info

System information
System:         Ubuntu 18.04
Current User:   git
Using RVM:      no
Ruby Version:   2.7.2p137
Gem Version:    3.1.4
Bundler Version:2.1.4
Rake Version:   13.0.3
Redis Version:  6.0.14
Git Version:    2.32.0
Sidekiq Version:5.2.9
Go Version:     unknown

GitLab information
Version:        14.0.0
Revision:       f1926d2aa64
Directory:      /opt/gitlab/embedded/service/gitlab-rails
DB Adapter:     PostgreSQL
DB Version:     12.6
URL:            https://gitlab.g2soft.net
HTTP Clone URL: https://gitlab.g2soft.net/some-group/some-project.git
SSH Clone URL:  git@gitlab.g2soft.net:some-group/some-project.git
Using LDAP:     no
Using Omniauth: yes
Omniauth Providers:

GitLab Shell
Version:        13.19.0
Repository storage paths:
- default:      /var/opt/gitlab/git-data/repositories
GitLab Shell path:              /opt/gitlab/embedded/service/gitlab-shell
Git:            /opt/gitlab/embedded/bin/git

When I writing this post, I found Gitlab 14.0.1 is released today. So I did the upgrade as well. Now it is gitlab CE 14.0.1.

Leave a Reply

Your email address will not be published. Required fields are marked *