diff options
author | Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com> | 2014-09-16 07:39:48 +0000 |
---|---|---|
committer | Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com> | 2014-09-16 07:39:48 +0000 |
commit | 27fe2ea53530709b9d51915d9cd95912c9be0a06 (patch) | |
tree | 2890a3d3ea06b6b6f708a96df4380fb0874b5528 | |
parent | 4f3f3beebad2d3c1a1ee6b657d40d7c93d5bc1b6 (diff) | |
parent | 17dab64aa8bd7a6fc4ce9e2a389fb6f5968b5ba5 (diff) | |
download | gitlab-shell-27fe2ea53530709b9d51915d9cd95912c9be0a06.tar.gz |
Merge branch 'redis-sockets' into 'master'
Connect to Redis via sockets by default
See merge request !41
-rw-r--r-- | CHANGELOG | 1 | ||||
-rw-r--r-- | config.yml.example | 6 | ||||
-rw-r--r-- | spec/gitlab_config_spec.rb | 49 |
3 files changed, 35 insertions, 21 deletions
@@ -4,6 +4,7 @@ v2.0.0 - Handle invalid number of arguments on remote commands - Replace update hook with pre-receive and post-receive hooks. - Ignore missing repositories in create-hooks + - Connect to Redis via sockets by default v1.9.7 - Increased test coverage diff --git a/config.yml.example b/config.yml.example index c9c5b41..94eb593 100644 --- a/config.yml.example +++ b/config.yml.example @@ -27,11 +27,11 @@ auth_file: "/home/git/.ssh/authorized_keys" # Redis settings used for pushing commit notices to gitlab redis: bin: /usr/bin/redis-cli - host: 127.0.0.1 - port: 6379 + # host: 127.0.0.1 + # port: 6379 # pass: redispass # Allows you to specify the password for Redis - # socket: /tmp/redis.socket # Only define this if you want to use sockets database: 0 + socket: /var/run/redis/redis.sock # Comment out this line if you want to use TCP namespace: resque:gitlab # Log file. diff --git a/spec/gitlab_config_spec.rb b/spec/gitlab_config_spec.rb index d2b4776..52fb182 100644 --- a/spec/gitlab_config_spec.rb +++ b/spec/gitlab_config_spec.rb @@ -5,20 +5,27 @@ describe GitlabConfig do let(:config) { GitlabConfig.new } describe :redis do - subject { config.redis } - - it { should be_a(Hash) } - it { should have_key('bin') } - it { should have_key('host') } - it { should have_key('port') } - it { should have_key('database') } - it { should have_key('namespace') } - end - - describe :redis_namespace do - subject { config.redis_namespace } + before do + config.instance_variable_set(:@config, YAML.load(<<eos +redis: + bin: /usr/bin/redis-cli + host: 127.0.1.1 + port: 6378 + pass: secure + database: 1 + socket: /var/run/redis/redis.sock + namespace: my:gitlab +eos + )) + end - it { should eq('resque:gitlab') } + it { config.redis['bin'].should eq('/usr/bin/redis-cli') } + it { config.redis['host'].should eq('127.0.1.1') } + it { config.redis['port'].should eq(6378) } + it { config.redis['database'].should eq(1) } + it { config.redis['namespace'].should eq('my:gitlab') } + it { config.redis['socket'].should eq('/var/run/redis/redis.sock') } + it { config.redis['pass'].should eq('secure') } end describe :gitlab_url do @@ -39,11 +46,6 @@ describe GitlabConfig do describe :redis_command do subject { config.redis_command } - it { should be_an(Array) } - it { should include(config.redis['host']) } - it { should include(config.redis['bin']) } - it { should include(config.redis['port'].to_s) } - context "with empty redis config" do before do config.stub(:redis) { {} } @@ -53,6 +55,17 @@ describe GitlabConfig do it { should include('redis-cli') } end + context "with host and port" do + before do + config.stub(:redis) { {'host' => 'localhost', 'port' => 1123, 'bin' => '/usr/bin/redis-cli'} } + end + + it { should be_an(Array) } + it { should include(config.redis['host']) } + it { should include(config.redis['bin']) } + it { should include(config.redis['port'].to_s) } + end + context "with redis socket" do let(:socket) { '/tmp/redis.socket' } before do |