diff options
author | Jacob Vosmaer <contact@jacobvosmaer.nl> | 2014-09-22 15:02:46 +0200 |
---|---|---|
committer | Jacob Vosmaer <contact@jacobvosmaer.nl> | 2014-09-22 15:02:46 +0200 |
commit | 4f61061cfbf5a3917442c7e0a971099cf0f9a0a9 (patch) | |
tree | 44cd6853fccb9f30f2aed517e126913b9940f0f4 | |
parent | 2fc6f8f2cb18a441b777d35c21f5e6d1f066a4d6 (diff) | |
download | gitlab-ce-4f61061cfbf5a3917442c7e0a971099cf0f9a0a9.tar.gz |
Support sockets in 'rake gitlab:shell:install'
-rw-r--r-- | CHANGELOG | 1 | ||||
-rw-r--r-- | doc/install/installation.md | 2 | ||||
-rw-r--r-- | lib/tasks/gitlab/shell.rake | 13 |
3 files changed, 11 insertions, 5 deletions
diff --git a/CHANGELOG b/CHANGELOG index 6667eceb94a..3f6cc3a8268 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -32,6 +32,7 @@ v 7.3.0 - Zen mode (fullscreen) for issues/MR/notes (Robert Schilling) - Add ability to configure webhook timeout via gitlab.yml (Wes Gurney) - Sort project merge requests in asc or desc order for updated_at or created_at field (sponsored by O'Reilly Media) + - Add Redis socket support to 'rake gitlab:shell:install' v 7.2.1 - Delete orphaned labels during label migration (James Brooks) diff --git a/doc/install/installation.md b/doc/install/installation.md index a0e39e42e7b..bae39e20e18 100644 --- a/doc/install/installation.md +++ b/doc/install/installation.md @@ -257,7 +257,7 @@ We recommend using a PostgreSQL database. For MySQL check [MySQL setup guide](da GitLab Shell is an SSH access and repository management software developed specially for GitLab. # Run the installation task for gitlab-shell (replace `REDIS_URL` if needed): - sudo -u git -H bundle exec rake gitlab:shell:install[v1.9.7] REDIS_URL=redis://localhost:6379 RAILS_ENV=production + sudo -u git -H bundle exec rake gitlab:shell:install[v1.9.7] REDIS_URL=unix:/var/run/redis/redis.sock RAILS_ENV=production # By default, the gitlab-shell config is generated from your main GitLab config. # You can review (and modify) the gitlab-shell config as follows: diff --git a/lib/tasks/gitlab/shell.rake b/lib/tasks/gitlab/shell.rake index ece3ad58385..71716ae1856 100644 --- a/lib/tasks/gitlab/shell.rake +++ b/lib/tasks/gitlab/shell.rake @@ -24,8 +24,6 @@ namespace :gitlab do Dir.chdir(target_dir) do sh "git fetch origin && git reset --hard $(git describe #{args.tag} || git describe origin/#{args.tag})" - redis_url = URI.parse(ENV['REDIS_URL'] || "redis://localhost:6379") - config = { user: user, gitlab_url: gitlab_url, @@ -34,14 +32,21 @@ namespace :gitlab do auth_file: File.join(home_dir, ".ssh", "authorized_keys"), redis: { bin: %x{which redis-cli}.chomp, - host: redis_url.host, - port: redis_url.port, namespace: "resque:gitlab" }.stringify_keys, log_level: "INFO", audit_usernames: false }.stringify_keys + redis_url = URI.parse(ENV['REDIS_URL'] || "redis://localhost:6379") + + if redis_url.scheme == 'unix' + config['redis']['socket'] = redis_url.path + else + config['redis']['host'] = redis_url.host + config['redis']['port'] = redis_url.port + end + # Generate config.yml based on existing gitlab settings File.open("config.yml", "w+") {|f| f.puts config.to_yaml} |