Upgrade 13.12.8 to 14

Hi. Forgive me for my bad english.

I’m running gitlab on docker. These are the steps to upgrade to 14.0.5:

  • upgrade 13.12.5 to 13.12.8
  • upgrade 13.12.8 to 14.0.0
  • upgrade 14.0.0 to 14.0.5

Now we have a problem to access to gitlab pages:

{"correlation_id":"01FAFCB0TPMPZZ29QGVNKF201B","error":"Get \"https://gitlab.domain.fr/api/v4/internal/pages?host=testpages.gitlab-pages.domain.lan\": dial tcp: lookup gitlab.domain.fr on [::1]:53: dial udp [::1]:53: connect: network is unreachable","host":"testpages.gitlab-pages.domain.lan","level":"error","msg":"could not fetch domain information from a source","path":"/testpages","time":"2021-07-13T07:29:42Z"}

I tried to run migration command from container but nothing has been migrated:

root@a573245080e1:/# gitlab-rake gitlab:pages:migrate_legacy_storage
I, [2021-07-13T07:27:00.333185 #22530]  INFO -- : Starting to migrate legacy pages storage to zip deployments
I, [2021-07-13T07:27:00.444096 #22530]  INFO -- : {:message=>"Pages legacy storage migration: Waiting for threads to finish..."}
I, [2021-07-13T07:27:00.444420 #22530]  INFO -- : A total of 0 projects were processed.
I, [2021-07-13T07:27:00.444469 #22530]  INFO -- : - The 0 projects migrated successfully
I, [2021-07-13T07:27:00.444497 #22530]  INFO -- : - The 0 projects failed to be migrated

My config:

pages_external_url "https://gitlab-pages.domain.lan"
pages_nginx['redirect_http_to_https'] = true
pages_nginx['ssl_certificate'] = "/certs/gitlab-pages.crt"
pages_nginx['ssl_certificate_key'] = "/certs/gitlab-pages.key"
gitlab_pages['inplace_chroot'] = true
...
...
volumes:
      - /gitlab/data/certs:/certs:Z
      - ...
      - ...

I tried to remove a page on a test project to recreate it by ci/cd. Same problem. It seams that we cannot access to /testpages (or whatever else). is it a chroot issue ?? I don’t have any problem with certificates:

connect: network is unreachable

In 13.12 gitlab pages was working well. I’d like to not use the rolling back option:

gitlab_pages['use_legacy_storage'] = true

Any idea ???

Maybe you have this problem:

1 Like

ok I’ve copied the resolv an nsswitch. Now I have a certificate issue, referenced on the same page.
x509: certificate signed by unknown authority

I’ve followed the doc:

sudo mkdir -p /var/opt/gitlab/gitlab-rails/shared/pages/etc/ssl
sudo mkdir -p /var/opt/gitlab/gitlab-rails/shared/pages/opt/gitlab/embedded/ssl/certs/

sudo cp /etc/resolv.conf /var/opt/gitlab/gitlab-rails/shared/pages/etc/
sudo cp /etc/hosts /var/opt/gitlab/gitlab-rails/shared/pages/etc/
sudo cp /etc/nsswitch.conf /var/opt/gitlab/gitlab-rails/shared/pages/etc/
sudo cp /opt/gitlab/embedded/ssl/certs/cacert.pem /var/opt/gitlab/gitlab-rails/shared/pages/opt/gitlab/embedded/ssl/certs/
sudo cp /opt/gitlab/embedded/ssl/certs/cacert.pem /var/opt/gitlab/gitlab-rails/shared/pages/etc/ssl/ca-bundle.pem

But i have the same problem. The bundle copied needs to have the ca for gitlab, for gitlab-pages or both ?? Need to make a gitlab-reconfigure ?

You need the CA bundle for the GitLab server, that is, the one used in gitlab_pages['gitlab_server'] or gitlab_pages['internal_gitlab_server']

ok, thanks. I had to do the reconfigure process to recover gitlab pages.

Successfully upgraded to 14.0.5 and ready for next releases :slight_smile: