[DRE-maint] Bug#845719: gitlab produces 500 errors if it detects a license

Jason Rhinelander jagerman at jagerman.com
Sat Nov 26 05:00:39 UTC 2016


Package: gitlab
Version: 8.13.6+dfsg1-2
Severity: normal

Dear Maintainer,

I migrated from a custom gitlab installation to the debian gitlab package today, and found that
attempting to view one of my git repositories was giving a 500 error.

When this occurred, the log gave:

ActionView::Template::Error ('gpl-3.0' is not a valid license key):
    38: 
    39:       - if @repository.license_blob
    40:         %li
    41:           = link_to license_short_name(@project), license_path(@project)
    42: 
    43:       - if @repository.contribution_guide
    44:         %li
  app/helpers/projects_helper.rb:118:in `license_short_name'
  app/views/projects/show.html.haml:41:in `_app_views_projects_show_html_haml__3251184896114945331_47088563639140'
  lib/gitlab/request_profiler/middleware.rb:15:in `call'
  lib/gitlab/middleware/go.rb:16:in `call'



Some more tracking down of the issue (and comparing to my previous working
setup) suggests that the problem may be a problem with ruby-licensee package:
the debian package doesn't contain the
vendor/choosealicense.com/_licenses/*.txt files, but the ruby-licensee code
expects to find them in ../../vendor/choosealicence(etc.)

Thus gitlab and/or ruby-licensee seem to be (correctly) identifying the project
as GPLv3 licensed, and try to get some information about the license, but it
fails because the expected files don't exist.

I tried creating a /usr/lib/ruby/vendor symlink to
~/src/ruby-licensee-8.0.0/vendor (so that it can temporarily find the expected
files via the symlink into my `apt-get source' download directory) and this
cleared up the problem: the 500 error disappears and gitlab works again, with
the license showing "GNU GPLv3", which is presumably the license short name
that it gets from ruby-licensee.


(I realize, given the above, this bug probably belongs against ruby-licensee,
but since it seems to be packaged entirely for the benefit of gitlab, I thought
filing against gitlab might get the problem noticed faster).


-- System Information:
Debian Release: stretch/sid
  APT prefers testing
  APT policy: (500, 'testing'), (1, 'experimental'), (1, 'unstable')
Architecture: amd64 (x86_64)

Kernel: Linux 4.7.0-1-amd64 (SMP w/8 CPU cores)
Locale: LANG=en_CA.UTF-8, LC_CTYPE=en_CA.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /usr/bin/bash
Init: systemd (via /run/systemd/system)

Versions of packages gitlab depends on:
ii  adduser                                   3.115
ii  apache2 [httpd]                           2.4.23-7
ii  asciidoctor                               1.5.4-2
ii  bc                                        1.06.95-9+b2
ii  bundler                                   1.12.5-3
ii  debconf [debconf-2.0]                     1.5.59
ii  git                                       1:2.10.2-3
ii  gitlab-shell                              3.6.6-1
ii  gitlab-workhorse                          0.8.5+debian-3
ii  init-system-helpers                       1.46
ii  libjs-chartjs                             1.0.2-1
ii  libjs-clipboard                           1.4.2-1
ii  libjs-fuzzaldrin-plus                     0.3.1+git.20161008.da2cb58+dfsg-4
ii  libjs-graphael                            0.5+dfsg-1
ii  libjs-jquery-cookie                       11-3
ii  libjs-jquery-history                      11-3
ii  libjs-jquery-nicescroll                   3.6.6-1
ii  lsb-base                                  9.20161101
ii  nodejs                                    4.6.1~dfsg-1
ii  openssh-client                            1:7.3p1-3+b1
ii  postfix [mail-transport-agent]            3.1.3-2
ii  postgresql-client                         9.6+177
ii  postgresql-client-9.5 [postgresql-client  9.5.4-3
ii  postgresql-client-9.6 [postgresql-client  9.6.0-1
ii  postgresql-contrib                        9.6+177
ii  rake                                      10.5.0-2
ii  redis-server                              3:3.2.5-2
ii  ruby                                      1:2.3.0+4
ii  ruby-ace-rails-ap                         4.1.1-1
ii  ruby-activerecord-session-store           1.0.0-2
ii  ruby-acts-as-taggable-on                  4.0.0-2
ii  ruby-addressable                          2.4.0-1
ii  ruby-after-commit-queue                   1.3.0-1
ii  ruby-akismet                              2.0.0-1
ii  ruby-allocations                          1.0.3-1+b2
ii  ruby-asana                                0.4.0-1
ii  ruby-attr-encrypted                       3.0.1-2
ii  ruby-babosa                               1.0.2-1
ii  ruby-base32                               0.3.2-3
ii  ruby-bootstrap-sass                       3.3.5.1-3
ii  ruby-browser                              2.2.0-2
ii  ruby-cal-heatmap-rails                    3.6.0+dfsg-1
ii  ruby-carrierwave                          0.10.0+gh-3
ii  ruby-charlock-holmes                      0.7.3+dfsg-2+b3
ii  ruby-chronic                              0.10.2-3
ii  ruby-chronic-duration                     0.10.6-1
ii  ruby-coffee-rails                         4.1.0-2
ii  ruby-coffee-script-source                 1.10.0-1
ii  ruby-connection-pool                      2.2.0-1
ii  ruby-creole                               0.5.0-2
ii  ruby-d3-rails                             3.5.6+dfsg-1
ii  ruby-default-value-for                    3.0.1-1
ii  ruby-devise                               4.2.0-1
ii  ruby-devise-two-factor                    3.0.0-2
ii  ruby-diffy                                3.0.6-1
ii  ruby-doorkeeper                           4.2.0-3
ii  ruby-dropzonejs-rails                     0.7.1-1
ii  ruby-email-reply-parser                   0.5.8-1
ii  ruby-fog-aws                              0.12.0-1
ii  ruby-fog-azure                            0.0.2-1
ii  ruby-fog-core                             1.42.0-1
ii  ruby-fog-google                           0.3.2-1
ii  ruby-fog-local                            0.3.0-1
ii  ruby-fog-openstack                        0.1.6-3
ii  ruby-fog-rackspace                        0.1.1-3
ii  ruby-fogbugz                              0.2.1-3
ii  ruby-font-awesome-rails                   4.6.3.0-2
ii  ruby-gemnasium-gitlab-service             0.2.6-1
ii  ruby-gemojione                            3.1.0-2
ii  ruby-github-linguist                      4.7.2-2
ii  ruby-github-markup                        1.5.0+dfsg-3
ii  ruby-gitlab-flowdock-git-hook             1.0.1-2
ii  ruby-gitlab-git                           10.7.0-1
ii  ruby-gollum-lib                           4.2.1+debian-1
ii  ruby-gon                                  6.1.0-1
ii  ruby-grape                                0.16.2-2
ii  ruby-grape-entity                         0.5.1-2
ii  ruby-hamlit                               2.7.5-1
ii  ruby-health-check                         2.4.0-1
ii  ruby-hipchat                              1.5.2-3
ii  ruby-html-pipeline                        1.11.0-1
ii  ruby-htmlentities                         4.3.3-1
ii  ruby-httparty                             0.13.7-1
ii  ruby-influxdb                             0.2.3-1
ii  ruby-jquery-atwho-rails                   1.3.2-2
ii  ruby-jquery-rails                         4.2.1-1
ii  ruby-jquery-scrollto-rails                1.4.3+dfsg-1
ii  ruby-jquery-turbolinks                    2.1.0~dfsg-1
ii  ruby-jquery-ui-rails                      5.0.5-4
ii  ruby-kaminari                             0.17.0-3
ii  ruby-licensee                             8.0.0-1
ii  ruby-loofah                               2.0.3-2
ii  ruby-mail                                 2.6.4+dfsg1-1
ii  ruby-mail-room                            0.8.1-1
ii  ruby-method-source                        0.8.2-2
ii  ruby-mousetrap-rails                      1.4.6-6
ii  ruby-nested-form                          0.3.2-2
ii  ruby-net-ssh                              1:3.2.0-1
ii  ruby-nokogiri                             1.6.8.1-1
ii  ruby-nprogress-rails                      0.1.6.7-2
ii  ruby-oauth2                               1.2.0-1
ii  ruby-octokit                              4.3.0-1
ii  ruby-oj                                   2.17.4-1
ii  ruby-omniauth                             1.3.1-1
ii  ruby-omniauth-auth0                       1.4.1-1
ii  ruby-omniauth-azure-oauth2                0.0.6-1
ii  ruby-omniauth-bitbucket                   0.0.2-1
ii  ruby-omniauth-cas3                        1.1.3-1
ii  ruby-omniauth-crowd                       2.2.3-2
ii  ruby-omniauth-facebook                    4.0.0-2
ii  ruby-omniauth-github                      1.1.2-2
ii  ruby-omniauth-gitlab                      1.0.2-1
ii  ruby-omniauth-google-oauth2               0.4.1-1
ii  ruby-omniauth-kerberos                    0.3.0-3
ii  ruby-omniauth-ldap                        1.0.5-1
ii  ruby-omniauth-saml                        1.7.0-1
ii  ruby-omniauth-shibboleth                  1.2.1-1
ii  ruby-omniauth-twitter                     1.2.1-2
ii  ruby-org                                  0.9.12-2
ii  ruby-paranoia                             2.1.3-1
ii  ruby-pg                                   0.18.4-2
ii  ruby-premailer-rails                      1.9.2-2
ii  ruby-prof                                 0.16.2+dfsg-2
ii  ruby-rack-attack                          4.3.1-1
ii  ruby-rack-cors                            0.4.0-1
ii  ruby-rack-oauth2                          1.4.0-1
ii  ruby-rails                                2:4.2.7.1-1
ii  ruby-rails-deprecated-sanitizer           1.0.3-2
ii  ruby-rainbow                              2.1.0-1
ii  ruby-raphael-rails                        2.1.2~dfsg-1
ii  ruby-recaptcha                            3.2.0-2
ii  ruby-redcarpet                            3.3.4-2
ii  ruby-redcloth                             4.3.2-2
ii  ruby-redis-namespace                      1.5.2-3
ii  ruby-redis-rails                          4.0.0-1
ii  ruby-request-store                        1.3.0-1
ii  ruby-responders                           2.3.0-1
ii  ruby-rouge                                2.0.2-1
ii  ruby-rqrcode-rails3                       0.1.7-1
ii  ruby-sanitize                             2.1.0-2
ii  ruby-sass-rails                           5.0.6-1
ii  ruby-seed-fu                              2.3.5-1
ii  ruby-select2-rails                        3.5.9.3-2
ii  ruby-sentry-raven                         2.1.2-2
ii  ruby-settingslogic                        2.0.9-3
ii  ruby-sidekiq                              4.2.3+dfsg-1
ii  ruby-sidekiq-cron                         0.4.2-5
ii  ruby-sinatra                              1.4.7-5
ii  ruby-six                                  0.2.0-3
ii  ruby-slack-notifier                       1.2.1-1
ii  ruby-sprockets                            3.7.0-1
ii  ruby-sprockets-es6                        0.9.2-1
ii  ruby-state-machines-activerecord          0.4.0-1
ii  ruby-sys-filesystem                       1.1.7-2
ii  ruby-task-list                            1.0.6-1
ii  ruby-tinder                               1.10.1-2
ii  ruby-truncato                             0.7.8-1
ii  ruby-turbolinks                           2.5.3-2
ii  ruby-u2f                                  0.2.1-2
ii  ruby-uglifier                             2.7.2+dfsg-1
ii  ruby-underscore-rails                     1.8.2+dfsg-1
ii  ruby-unf                                  0.1.4-2
ii  ruby-unicorn-worker-killer                0.4.4-1
ii  ruby-version-sorter                       2.1.0+dfsg-1
ii  ruby-virtus                               1.0.5-3
ii  ruby-vmstat                               2.2.0-2
ii  ruby-wikicloth                            0.8.1+dfsg-4
ii  ucf                                       3.0036
ii  unicorn                                   5.2.0-1

Versions of packages gitlab recommends:
ii  certbot  0.9.3-1

gitlab suggests no packages.

-- Configuration Files:
/etc/gitlab/resque.yml changed [not included]
/etc/gitlab/unicorn.rb changed [not included]

-- debconf information:
* gitlab/ssl: false
* gitlab/fqdn: git.imaginary.ca
* gitlab/letsencrypt: false



More information about the Pkg-ruby-extras-maintainers mailing list