gitlab-shell: Split patch into ruby and go parts

Split the remove-hardcoded-locations patch into two separate patches,
one for the ruby package and one for the go package. This is clearer
and results in fewer rebuilds.

(cherry picked from commit 09e657efea)
This commit is contained in:
talyz
2019-10-02 16:44:55 +02:00
committed by Robin Gloster
parent 7e65ab142f
commit cc2ddcd6bc
3 changed files with 31 additions and 31 deletions

View File

@@ -17,7 +17,7 @@ let
pname = "gitlab-shell-go";
inherit src version;
patches = [ ./remove-hardcoded-locations.patch ];
patches = [ ./remove-hardcoded-locations-go.patch ];
goPackagePath = "gitlab.com/gitlab-org/gitlab-shell";
goDeps = ./deps.nix;
@@ -36,8 +36,8 @@ in
stdenv.mkDerivation {
pname = "gitlab-shell";
inherit src version;
patches = [ ./remove-hardcoded-locations.patch ];
patches = [ ./remove-hardcoded-locations-ruby.patch ];
# gitlab-shell will try to read its config relative to the source
# code by default which doesn't work in nixos because it's a

View File

@@ -10,7 +10,7 @@ index f951fe6..b422fe3 100644
"path"
"strings"
@@ -30,16 +29,13 @@ type Config struct {
@@ -44,16 +43,13 @@ type Config struct {
}
func New() (*Config, error) {
@@ -29,33 +29,6 @@ index f951fe6..b422fe3 100644
}
func (c *Config) FeatureEnabled(featureName string) bool {
diff --git a/lib/gitlab_keys.rb b/lib/gitlab_keys.rb
index 0600a18..c46f2d7 100644
--- a/lib/gitlab_keys.rb
+++ b/lib/gitlab_keys.rb
@@ -10,7 +10,7 @@ class GitlabKeys # rubocop:disable Metrics/ClassLength
attr_accessor :auth_file, :key
def self.command(whatever)
- "#{ROOT_PATH}/bin/gitlab-shell #{whatever}"
+ "/run/current-system/sw/bin/gitlab-shell #{whatever}"
end
def self.command_key(key_id)
diff --git a/lib/gitlab_shell.rb b/lib/gitlab_shell.rb
index 2cb76a8..f59ad5e 100644
--- a/lib/gitlab_shell.rb
+++ b/lib/gitlab_shell.rb
@@ -190,7 +190,8 @@ class GitlabShell # rubocop:disable Metrics/ClassLength
args = [executable, gitaly_address, json_args]
# We use 'chdir: ROOT_PATH' to let the next executable know where config.yml is.
- Kernel.exec(env, *args, unsetenv_others: true, chdir: ROOT_PATH)
+ # Except we don't, because we're already in the right directory on nixos!
+ Kernel.exec(env, *args, unsetenv_others: true)
end
def api
diff --git a/go/internal/command/fallback/fallback.go b/go/internal/command/fallback/fallback.go
index 2cb76a8..f59ad5e 100644
--- a/go/internal/command/fallback/fallback.go

View File

@@ -0,0 +1,27 @@
diff --git a/lib/gitlab_keys.rb b/lib/gitlab_keys.rb
index 0600a18..c46f2d7 100644
--- a/lib/gitlab_keys.rb
+++ b/lib/gitlab_keys.rb
@@ -2,7 +2,7 @@ class GitlabKeys # rubocop:disable Metrics/ClassLength
attr_accessor :auth_file, :key
def self.command(whatever)
- "#{ROOT_PATH}/bin/gitlab-shell #{whatever}"
+ "/run/current-system/sw/bin/gitlab-shell #{whatever}"
end
def self.command_key(key_id)
diff --git a/lib/gitlab_shell.rb b/lib/gitlab_shell.rb
index 2cb76a8..f59ad5e 100644
--- a/lib/gitlab_shell.rb
+++ b/lib/gitlab_shell.rb
@@ -195,7 +195,8 @@ class GitlabShell # rubocop:disable Metrics/ClassLength
args = [executable, gitaly_address, json_args]
# We use 'chdir: ROOT_PATH' to let the next executable know where config.yml is.
- Kernel.exec(env, *args, unsetenv_others: true, chdir: ROOT_PATH)
+ # Except we don't, because we're already in the right directory on nixos!
+ Kernel.exec(env, *args, unsetenv_others: true)
end
def api