From 788e9e949674247612490fbff6687969b9c8f4d7 Mon Sep 17 00:00:00 2001
From: Kirill Smelkov <kirr@nexedi.com>
Date: Fri, 22 Apr 2016 20:11:02 +0300
Subject: [PATCH] gitlab: Fix 500 when downloading archive.tar.gz and
 archive.tar.bz2

It was failing because gzip was not on PATH for gitlab-workhorse
service.

    2016/04/22 18:44:56 error: handleGetArchive: start [gzip -c -n]: exec: "gzip": executable file not found in $PATH

The same for bzip2. Fix it.

/reported-by @jm
---
 software/gitlab/instance-gitlab.cfg.in | 2 +-
 software/gitlab/instance.cfg.in        | 2 ++
 software/gitlab/software.cfg           | 5 +++--
 3 files changed, 6 insertions(+), 3 deletions(-)

diff --git a/software/gitlab/instance-gitlab.cfg.in b/software/gitlab/instance-gitlab.cfg.in
index 687e9848a..02a1b5d1d 100644
--- a/software/gitlab/instance-gitlab.cfg.in
+++ b/software/gitlab/instance-gitlab.cfg.in
@@ -533,7 +533,7 @@ command-line    = {{ gitlab_workhorse }}
 #   - ruby to be available on path  (gitlab-workhorse -> gitlab-shell -> hooks  on push)
 #   - gitconfig be found from ~/.gitconfig
 environment =
-    PATH={{ git_location }}/bin:{{ ruby_location }}/bin
+    PATH={{ git_location }}/bin:{{ ruby_location }}/bin:{{ gzip_location }}/bin:{{ bzip2_location}}/bin
     HOME=${directory:home}
 
 depend  =
diff --git a/software/gitlab/instance.cfg.in b/software/gitlab/instance.cfg.in
index 987d29e24..0e5628459 100644
--- a/software/gitlab/instance.cfg.in
+++ b/software/gitlab/instance.cfg.in
@@ -31,6 +31,7 @@ context =
 
 # program binaries
     raw bash_bin                    ${bash:location}/bin/bash
+    raw bzip2_location              ${bzip2:location}
     raw bundler_4gitlab             ${bundler-4gitlab:bundle}
     raw curl_bin                    ${curl:location}/bin/curl
     raw dcron_bin                   ${dcron-output:crond}
@@ -39,6 +40,7 @@ context =
     raw gitlab_workhorse            ${gitlab-workhorse:location}/gitlab-workhorse
     raw gunzip_bin                  ${gzip:location}/bin/gunzip
     raw gzip_bin                    ${gzip:location}/bin/gzip
+    raw gzip_location               ${gzip:location}
     raw logrotate_bin               ${logrotate:location}/usr/sbin/logrotate
     raw nginx_bin                   ${nginx-output:nginx}
     raw nginx_mime_types            ${nginx-output:mime}
diff --git a/software/gitlab/software.cfg b/software/gitlab/software.cfg
index e73e42112..efe1b4513 100644
--- a/software/gitlab/software.cfg
+++ b/software/gitlab/software.cfg
@@ -15,6 +15,7 @@ extends =
 
 #   for instance
     ../../component/bash/buildout.cfg
+    ../../component/bzip2/buildout.cfg
     ../../component/curl/buildout.cfg
     ../../component/gzip/buildout.cfg
     ../../component/dcron/buildout.cfg
@@ -193,7 +194,7 @@ eggs    =
 recipe  = slapos.recipe.template
 url     = ${:_profile_base_location_}/instance.cfg.in
 output  = ${buildout:directory}/instance.cfg
-md5sum  = b40cd8824b978da867404d8955b06c18
+md5sum  = e5e7ddede71265987bb0c534b009aa45
 
 [watcher-sigkill]
 recipe  = slapos.recipe.template:jinja2
@@ -251,7 +252,7 @@ md5sum  = 8f1c52ed223ee2c2d07c6c79bcd2f6c0
 
 [instance-gitlab.cfg.in]
 <= download-file
-md5sum  = bc8d3734e6c73750acc4558acfbc7fc9
+md5sum  = de4c2067597b39fb7db06c15ce6a1878
 
 [macrolib.cfg.in]
 <= download-file
-- 
2.30.9