logstash-mixin-rabbitmq_connection 2.3.1-java → 2.4.0-java

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 235a0083a64451c877c34cf5be6ec6a8c57b3b7c
4
- data.tar.gz: 82177140035d5d5852a69b8ac49340fbd115e495
3
+ metadata.gz: aa859308506de4169949b7208483cbd08b4732c2
4
+ data.tar.gz: cbc12c2819c8ae228a202c3576c39ff42e4ce278
5
5
  SHA512:
6
- metadata.gz: d452214386f4b570bc1c275688e92377700ff1e1ea023c61ae23d5d4d5e54dfc1b67bf4b7161f0c1b7d4a4037dd8c3b5e2be60a88bb5752dd2dd875cbabc3fec
7
- data.tar.gz: 4ab9eab0c56b32ea7bc84aff624bfea0361c411c3ea0c96cd907b371f30e1ae6571410175f7e1906a2d42c3216acc33e44ae409fbdce8e4ee173dbc40ef5518c
6
+ metadata.gz: 63a90f139dc4fa0233aafb10df394c868a7e1b67592a40e0e6447dc81dcd6dbb33174fa6999227ae18088f016f8e8006e7fab8aaf3d9c15d9131f48794775722
7
+ data.tar.gz: e36ba70d5c725dc13e14a62a481cbfb83db0ba74e34772057fd827870c2f1acb48da9f98d35d195167d67c64df93b714316fdab6614f2ebcb17423641f984e51
data/.travis.yml ADDED
@@ -0,0 +1,7 @@
1
+ sudo: false
2
+ language: ruby
3
+ cache: bundler
4
+ rvm:
5
+ - jruby-1.7.23
6
+ script:
7
+ - bundle exec rspec spec
data/CHANGELOG CHANGED
@@ -1,3 +1,6 @@
1
+ * 2.4.0
2
+ - Add SSL/TLS Support
3
+ - Add support for "x-consistent-hash" and "x-modulus-hash" exchanges
1
4
  * 2.3.1
2
5
  - use logstash-core-plugin-api as dependency instead of logstash-core directly
3
6
  * 2.3.0
@@ -8,7 +8,7 @@ require "java"
8
8
  module LogStash
9
9
  module PluginMixins
10
10
  module RabbitMQConnection
11
- EXCHANGE_TYPES = ["fanout", "direct", "topic"]
11
+ EXCHANGE_TYPES = ["fanout", "direct", "topic", "x-consistent-hash", "x-modulus-hash"]
12
12
 
13
13
  HareInfo = Struct.new(:connection, :channel, :exchange, :queue)
14
14
 
@@ -37,7 +37,8 @@ module LogStash
37
37
  config :vhost, :validate => :string, :default => "/"
38
38
 
39
39
  # Enable or disable SSL
40
- config :ssl, :validate => :boolean, :default => false
40
+ # Specify TLS version if using TLS e.g "TLSv1.2"
41
+ config :ssl, :validate => :string
41
42
 
42
43
  # Validate SSL certificate
43
44
  config :verify_ssl, :validate => :boolean, :default => false
@@ -60,6 +61,12 @@ module LogStash
60
61
  # Passive queue creation? Useful for checking queue existance without modifying server state
61
62
  config :passive, :validate => :boolean, :default => false
62
63
 
64
+ # TLS certifcate path
65
+ config :tls_certificate_path, :validate => :path
66
+
67
+ # TLS certificate password
68
+ config :tls_certificate_password, :validate => :string
69
+
63
70
  # Extra queue arguments as an array.
64
71
  # To make a RabbitMQ queue mirrored, use: `{"x-ha-policy" => "all"}`
65
72
  config :arguments, :validate => :array, :default => {}
@@ -90,6 +97,8 @@ module LogStash
90
97
  s[:timeout] = @connection_timeout || 0
91
98
  s[:heartbeat] = @heartbeat || 0
92
99
  s[:tls] = @ssl if @ssl
100
+ s[:tls_certificate_path] = @tls_certificate_path || ""
101
+ s[:tls_certificate_password] = @tls_certificate_password || ""
93
102
  @rabbitmq_settings = s
94
103
  end
95
104
 
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = 'logstash-mixin-rabbitmq_connection'
3
- s.version = '2.3.1'
3
+ s.version = '2.4.0'
4
4
  s.licenses = ['Apache License (2.0)']
5
5
  s.summary = "Common functionality for RabbitMQ plugins"
6
6
  s.description = "This is used to provide configuration options and connection settings for logstash plugins working with RabbitMQ"
@@ -2,6 +2,7 @@
2
2
  require "logstash/devutils/rspec/spec_helper"
3
3
  require "logstash/pipeline"
4
4
  require "logstash/plugin_mixins/rabbitmq_connection"
5
+ require "stud/temporary"
5
6
 
6
7
  class TestPlugin < LogStash::Outputs::Base
7
8
  include LogStash::PluginMixins::RabbitMQConnection
@@ -27,7 +28,15 @@ describe LogStash::PluginMixins::RabbitMQConnection do
27
28
  let(:hare_info) { instance.instance_variable_get(:@hare_info) }
28
29
 
29
30
  describe "rabbitmq_settings" do
30
- let(:rabbitmq_settings) { super.merge({"connection_timeout" => 123, "heartbeat" => 456}) }
31
+ let(:file) { Stud::Temporary.file }
32
+ let(:path) { file.path }
33
+ after { File.unlink(path)}
34
+
35
+ let(:rabbitmq_settings) { super.merge({"connection_timeout" => 123,
36
+ "heartbeat" => 456,
37
+ "ssl" => "TLS1.2",
38
+ "tls_certificate_path" => path,
39
+ "tls_certificate_password" => "123"}) }
31
40
 
32
41
  it "should set the timeout to the expected value" do
33
42
  expect(instance.rabbitmq_settings[:timeout]).to eql(rabbitmq_settings["connection_timeout"])
@@ -36,6 +45,18 @@ describe LogStash::PluginMixins::RabbitMQConnection do
36
45
  it "should set heartbeat to the expected value" do
37
46
  expect(instance.rabbitmq_settings[:heartbeat]).to eql(rabbitmq_settings["heartbeat"])
38
47
  end
48
+
49
+ it "should set tls to the expected value" do
50
+ expect(instance.rabbitmq_settings[:tls]).to eql(rabbitmq_settings["ssl"])
51
+ end
52
+
53
+ it "should set tls_certificate_path to the expected value" do
54
+ expect(instance.rabbitmq_settings[:tls_certificate_path]).to eql(rabbitmq_settings["tls_certificate_path"])
55
+ end
56
+
57
+ it "should set tls_certificate_password to the expected value" do
58
+ expect(instance.rabbitmq_settings[:tls_certificate_password]).to eql(rabbitmq_settings["tls_certificate_password"])
59
+ end
39
60
  end
40
61
 
41
62
  context "when connected" do
@@ -112,4 +133,4 @@ describe LogStash::PluginMixins::RabbitMQConnection do
112
133
  expect(subject).to have_received(:sleep_for_retry).once
113
134
  end
114
135
  end
115
- end
136
+ end
metadata CHANGED
@@ -1,99 +1,99 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: logstash-mixin-rabbitmq_connection
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.3.1
4
+ version: 2.4.0
5
5
  platform: java
6
6
  authors:
7
7
  - Elastic
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-03-24 00:00:00.000000000 Z
11
+ date: 2016-04-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
+ name: logstash-core-plugin-api
15
+ version_requirements: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ~>
18
+ - !ruby/object:Gem::Version
19
+ version: '1.0'
14
20
  requirement: !ruby/object:Gem::Requirement
15
21
  requirements:
16
22
  - - ~>
17
23
  - !ruby/object:Gem::Version
18
24
  version: '1.0'
19
- name: logstash-core-plugin-api
20
25
  prerelease: false
21
26
  type: :runtime
27
+ - !ruby/object:Gem::Dependency
28
+ name: march_hare
22
29
  version_requirements: !ruby/object:Gem::Requirement
23
30
  requirements:
24
31
  - - ~>
25
32
  - !ruby/object:Gem::Version
26
- version: '1.0'
27
- - !ruby/object:Gem::Dependency
33
+ version: 2.15.0
28
34
  requirement: !ruby/object:Gem::Requirement
29
35
  requirements:
30
36
  - - ~>
31
37
  - !ruby/object:Gem::Version
32
38
  version: 2.15.0
33
- name: march_hare
34
39
  prerelease: false
35
40
  type: :runtime
41
+ - !ruby/object:Gem::Dependency
42
+ name: stud
36
43
  version_requirements: !ruby/object:Gem::Requirement
37
44
  requirements:
38
45
  - - ~>
39
46
  - !ruby/object:Gem::Version
40
- version: 2.15.0
41
- - !ruby/object:Gem::Dependency
47
+ version: 0.0.22
42
48
  requirement: !ruby/object:Gem::Requirement
43
49
  requirements:
44
50
  - - ~>
45
51
  - !ruby/object:Gem::Version
46
52
  version: 0.0.22
47
- name: stud
48
53
  prerelease: false
49
54
  type: :runtime
55
+ - !ruby/object:Gem::Dependency
56
+ name: logstash-devutils
50
57
  version_requirements: !ruby/object:Gem::Requirement
51
58
  requirements:
52
- - - ~>
59
+ - - '>='
53
60
  - !ruby/object:Gem::Version
54
- version: 0.0.22
55
- - !ruby/object:Gem::Dependency
61
+ version: '0'
56
62
  requirement: !ruby/object:Gem::Requirement
57
63
  requirements:
58
64
  - - '>='
59
65
  - !ruby/object:Gem::Version
60
66
  version: '0'
61
- name: logstash-devutils
62
67
  prerelease: false
63
68
  type: :development
69
+ - !ruby/object:Gem::Dependency
70
+ name: logstash-input-generator
64
71
  version_requirements: !ruby/object:Gem::Requirement
65
72
  requirements:
66
73
  - - '>='
67
74
  - !ruby/object:Gem::Version
68
75
  version: '0'
69
- - !ruby/object:Gem::Dependency
70
76
  requirement: !ruby/object:Gem::Requirement
71
77
  requirements:
72
78
  - - '>='
73
79
  - !ruby/object:Gem::Version
74
80
  version: '0'
75
- name: logstash-input-generator
76
81
  prerelease: false
77
82
  type: :development
83
+ - !ruby/object:Gem::Dependency
84
+ name: logstash-codec-json
78
85
  version_requirements: !ruby/object:Gem::Requirement
79
86
  requirements:
80
87
  - - '>='
81
88
  - !ruby/object:Gem::Version
82
89
  version: '0'
83
- - !ruby/object:Gem::Dependency
84
90
  requirement: !ruby/object:Gem::Requirement
85
91
  requirements:
86
92
  - - '>='
87
93
  - !ruby/object:Gem::Version
88
94
  version: '0'
89
- name: logstash-codec-json
90
95
  prerelease: false
91
96
  type: :development
92
- version_requirements: !ruby/object:Gem::Requirement
93
- requirements:
94
- - - '>='
95
- - !ruby/object:Gem::Version
96
- version: '0'
97
97
  description: This is used to provide configuration options and connection settings for logstash plugins working with RabbitMQ
98
98
  email: info@elastic.co
99
99
  executables: []
@@ -101,6 +101,7 @@ extensions: []
101
101
  extra_rdoc_files: []
102
102
  files:
103
103
  - .gitignore
104
+ - .travis.yml
104
105
  - CHANGELOG
105
106
  - Gemfile
106
107
  - README.md
@@ -128,7 +129,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
128
129
  version: '0'
129
130
  requirements: []
130
131
  rubyforge_project:
131
- rubygems_version: 2.4.5
132
+ rubygems_version: 2.4.8
132
133
  signing_key:
133
134
  specification_version: 4
134
135
  summary: Common functionality for RabbitMQ plugins