#979563 rugged/libgit2 1.x breaks gitlab

Package:
gitlab
Source:
gitlab
Submitter:
Pirate Praveen
Date:
2022-07-15 19:48:03 UTC
Severity:
grave
Tags:
#979563#5
Date:
2021-01-08 12:19:07 UTC
From:
To:
Uploaded gitlab 13.5.6 to experimental for more testing, but some core
features are broken, likely due to new version of rugged/libgit2
already in debian which upstream does not support yet.

When visiting any project, for example,
http://gitlab.lxc/praveen/test

The UI has this error message,
An error occurred while fetching folder content.

The browser error console has this,

Failed to load resource: the server responded with a status of 500
(Internal Server Error)
commons-pages.projects.show-pages.projects.tree.show.1cb74241.chunk.js:1:60290

pravi@mahishi:/tmp$ git clone gitlab@gitlab.lxc:praveen/test.git
Cloning into 'test'...
remote: Enumerating objects: 34, done.
remote: Counting objects: 100% (34/34), done.
remote: Compressing objects: 100% (18/18), done.
remote: Total 34 (delta 10), reused 32 (delta 9), pack-reused 0
Receiving objects: 100% (34/34), done.
Resolving deltas: 100% (10/10), done.
pravi@mahishi:/tmp$ cd test/
pravi@mahishi:/tmp/test$ ls
hello-there help kfdhgkfdjg README.md sdhffjh test testing xzy y
pravi@mahishi:/tmp/test$ git rm kfdhgkfdjg
rm 'kfdhgkfdjg'
pravi@mahishi:/tmp/test$ git commit -a
[master 60a10f1] remove
 1 file changed, 0 insertions(+), 0 deletions(-)
 delete mode 100644 kfdhgkfdjg
pravi@mahishi:/tmp/test$ git push
Enumerating objects: 3, done.
Counting objects: 100% (3/3), done.
Delta compression using up to 4 threads
Compressing objects: 100% (2/2), done.
Writing objects: 100% (2/2), 219 bytes | 219.00 KiB/s, done.
Total 2 (delta 1), reused 0 (delta 0), pack-reused 0
remote: GitLab: Push operation timed out
remote:
remote: Timing information for debugging purposes:
remote: Running checks for ref: master
remote: Checking if you are allowed to push... (9.09ms)
remote: Checking if default branch is being deleted... (0.03ms)
remote: Checking if you are force pushing to a protected branch...
(35.18ms)
remote: Checking if you are allowed to push to the protected branch...
(41.35ms)
remote: Scanning repository for blobs stored in LFS and verifying their
files have been uploaded to GitLab... (cancelled after 29523.48ms)
To gitlab.lxc:praveen/test.git
 ! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'gitlab.lxc:praveen/test.git'

#979563#10
Date:
2021-01-10 08:53:15 UTC
From:
To:
On Fri, 08 Jan 2021 17:49:07 +0530 Pirate Praveen  <praveen@onenetbeyond.org> wrote:
 > Uploaded gitlab 13.5.6 to experimental for more testing, but some
core
 > features are broken, likely due to new version of rugged/libgit2
 > already in debian which upstream does not support yet.

This is confirmed as an issue caused by rugged/libgit2 version 1.x as
gitlab/gitaly 13.5.x is working in buster-fasttrack with older
rugged/libgit2.

We need to wait till upstream upgraded rugged/libgit2 dependency or we
have to update gitlab ourselves. Help is welcome.

#979563#21
Date:
2021-01-11 13:30:11 UTC
From:
To:
Dear Maintainer,

My instance work great after upgrade to 13.5.6.1!

I can see the content of folder and files on UI.
I can fetch, push, etc.
I added versions off packages if I use, maby will help you.
If you want to give you more info, tell me.

Dragos

#979563#26
Date:
2021-01-11 15:52:21 UTC
From:
To:
Thanks for the feedback. I can see gitaly is still 13.4.6 so the bug is in gitaly.

-

So I suggest you hold gitaly on this version.

#979563#31
Date:
2021-01-11 16:10:34 UTC
From:
To:
Just to know, in previous version I have some trouble with licensee, and
I do the following to solve the problem:

gitaly(13.4.6+dfsg1-2) and gitlab(13.4.7-2) have in Gemfile:

gem 'rugged', '~> 0.28'
...
gem 'licensee', '~> 8.9'

But rugged is 1.1.0+ds-1 in testing and unstable and licensee need
rugged~>0.24.

Solved putting in Gemfile:
gem 'rugged', '>= 0.28'
gem 'licensee', '~> 9.14', '>= 9.14.1'

and manually install licensee 9.14.1 with:

cd /usr/share/gitlab
gem install licensee

It could help.

Cu respect,
Dragos Jarca
General manager
Dynamic Puzzle S.R.L.
www.dynamicpuzzle.ro

#979563#36
Date:
2021-03-11 16:23:11 UTC
From:
To:
On Mon, 11 Jan 2021 18:10:34 +0200 Dragos Jarca  <dragos.jarca@dynamicpuzzle.ro> wrote:
 > Just to know, in previous version I have some trouble with licensee,
and
 > I do the following to solve the problem:
 >
 > gitaly(13.4.6+dfsg1-2) and gitlab(13.4.7-2) have in Gemfile:
 >
 > gem 'rugged', '~> 0.28'
 > ...
 > gem 'licensee', '~> 8.9'
 >
 > But rugged is 1.1.0+ds-1 in testing and unstable and licensee need
 > rugged~>0.24.
 >
 > Solved putting in Gemfile:
 > gem 'rugged', '>= 0.28'
 > gem 'licensee', '~> 9.14', '>= 9.14.1'
 >
 > and manually install licensee 9.14.1 with:
 >
 > cd /usr/share/gitlab
 > gem install licensee
 >
 > It could help.

gitlab 13.9.3 now works again with rugged 1.1 in the archive, so these
work arounds are not required. https://wiki.debian.org/gitlab/wip has
instructions to get the new version. This will be uploaded to
experimental soon (after ruby-pg-query is accepted).

#979563#41
Date:
2021-03-12 07:34:23 UTC
From:
To:
Cannot install because ruby-pg-query not installed (not available).

# apt-get install gitlab/experimental
ruby-autoprefixer-rails/experimental ruby-gitlab-labkit/experimental
ruby-gitaly/experimental node-mermaid/experimental
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Selected version '13.9.3+ds1-2' (Local:people.debian.org [all]) for 'gitlab'
Selected version '10.2.4.0+dfsg1+~cs14.2.17-1' (Debian:experimental
[all]) for 'ruby-autoprefixer-rails'
Selected version '0.15.0-1' (Local:people.debian.org [all]) for
'ruby-gitlab-labkit'
Selected version '13.9.3+dfsg-1' (Local:people.debian.org [all]) for
'ruby-gitaly'
Selected version '8.9.1+ds+~cs26.20.25-1' (Debian:experimental [all])
for 'node-mermaid'
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
  gitlab : Depends: ruby-pg-query (>= 1.3~) but it is not installable
  ruby-gitlab-labkit : Depends: ruby-pg-query but it is not installable
E: Unable to correct problems, you have held broken packages.
root@omv:~# apt-show-versions -a ruby-pg-query
ruby-pg-query not installed (not available)

#979563#46
Date:
2021-03-12 14:26:40 UTC
From:
To:
ruby-pg-query is available people.debian. org/~praveen/staging. This was mentioned in wiki for gitlab 13.8.
#979563#53
Date:
2022-07-15 19:43:47 UTC
From:
To:
closing obsolete bug.