logstash-input-imap 2.0.5 → 3.0.0
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 +4 -4
- data/CHANGELOG.md +2 -0
- data/Gemfile +3 -1
- data/LICENSE +1 -1
- data/README.md +12 -3
- data/lib/logstash/inputs/imap.rb +4 -4
- data/logstash-input-imap.gemspec +5 -5
- data/spec/inputs/imap_spec.rb +6 -6
- metadata +39 -23
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: cdc1236c272c86f9fb01b6981510661e3e52220e
|
4
|
+
data.tar.gz: 75d78825b63a236adf107cad67b7d303aece3d45
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0628192d5cceb912bf6b6fb1d204cbcc95e7503f4d61c4e58740ec93e7d2ad920dc4ffab3a58aa7037563ffcc17aabe0a7f3f9641246b991c734aca8ca851614
|
7
|
+
data.tar.gz: 6219bbb7bef836bb2d55999238127b8a58602dc5a446288d7b563d34421d9495d5a48c2d1024f0c92f6d4f73441bccfe1b3b4f3e6d28ce0a915170514642b9fe
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
## 3.0.0
|
2
|
+
- Update the plugin to the version 2.0 of the plugin api, this change is required for Logstash 5.0 compatibility. See https://github.com/elastic/logstash/issues/5141
|
1
3
|
# 2.0.5
|
2
4
|
- Depend on logstash-core-plugin-api instead of logstash-core, removing the need to mass update plugins on major releases of logstash
|
3
5
|
# 2.0.4
|
data/Gemfile
CHANGED
data/LICENSE
CHANGED
data/README.md
CHANGED
@@ -1,7 +1,6 @@
|
|
1
1
|
# Logstash Plugin
|
2
2
|
|
3
|
-
[](http://build-eu-00.elastic.co/view/LS%20Plugins/view/LS%20Inputs/job/logstash-plugin-input-imap-unit/)
|
3
|
+
[](https://travis-ci.org/logstash-plugins/logstash-input-imap)
|
5
4
|
|
6
5
|
This is a plugin for [Logstash](https://github.com/elastic/logstash).
|
7
6
|
|
@@ -56,7 +55,12 @@ gem "logstash-filter-awesome", :path => "/your/local/logstash-filter-awesome"
|
|
56
55
|
```
|
57
56
|
- Install plugin
|
58
57
|
```sh
|
58
|
+
# Logstash 2.3 and higher
|
59
|
+
bin/logstash-plugin install --no-verify
|
60
|
+
|
61
|
+
# Prior to Logstash 2.3
|
59
62
|
bin/plugin install --no-verify
|
63
|
+
|
60
64
|
```
|
61
65
|
- Run Logstash with your plugin
|
62
66
|
```sh
|
@@ -74,7 +78,12 @@ gem build logstash-filter-awesome.gemspec
|
|
74
78
|
```
|
75
79
|
- Install the plugin from the Logstash home
|
76
80
|
```sh
|
77
|
-
|
81
|
+
# Logstash 2.3 and higher
|
82
|
+
bin/logstash-plugin install --no-verify
|
83
|
+
|
84
|
+
# Prior to Logstash 2.3
|
85
|
+
bin/plugin install --no-verify
|
86
|
+
|
78
87
|
```
|
79
88
|
- Start Logstash and proceed to test the plugin
|
80
89
|
|
data/lib/logstash/inputs/imap.rb
CHANGED
@@ -121,16 +121,16 @@ class LogStash::Inputs::IMAP < LogStash::Inputs::Base
|
|
121
121
|
# Assume we already processed the 'date' above.
|
122
122
|
next if name == "Date"
|
123
123
|
|
124
|
-
case (field = event
|
124
|
+
case (field = event.get(name))
|
125
125
|
when String
|
126
126
|
# promote string to array if a header appears multiple times
|
127
127
|
# (like 'received')
|
128
|
-
event
|
128
|
+
event.set(name, [field, value])
|
129
129
|
when Array
|
130
130
|
field << value
|
131
|
-
event
|
131
|
+
event.set(name, field)
|
132
132
|
when nil
|
133
|
-
event
|
133
|
+
event.set(name, value)
|
134
134
|
end
|
135
135
|
end
|
136
136
|
|
data/logstash-input-imap.gemspec
CHANGED
@@ -1,10 +1,10 @@
|
|
1
1
|
Gem::Specification.new do |s|
|
2
2
|
|
3
3
|
s.name = 'logstash-input-imap'
|
4
|
-
s.version = '
|
4
|
+
s.version = '3.0.0'
|
5
5
|
s.licenses = ['Apache License (2.0)']
|
6
6
|
s.summary = "Read mail from IMAP servers"
|
7
|
-
s.description = "This gem is a
|
7
|
+
s.description = "This gem is a Logstash plugin required to be installed on top of the Logstash core pipeline using $LS_HOME/bin/logstash-plugin install gemname. This gem is not a stand-alone program"
|
8
8
|
s.authors = ["Elastic"]
|
9
9
|
s.email = 'info@elastic.co'
|
10
10
|
s.homepage = "http://www.elastic.co/guide/en/logstash/current/index.html"
|
@@ -20,11 +20,11 @@ Gem::Specification.new do |s|
|
|
20
20
|
s.metadata = { "logstash_plugin" => "true", "logstash_group" => "input" }
|
21
21
|
|
22
22
|
# Gem dependencies
|
23
|
-
s.add_runtime_dependency "logstash-core-plugin-api", "~>
|
23
|
+
s.add_runtime_dependency "logstash-core-plugin-api", "~> 2.0"
|
24
24
|
s.add_runtime_dependency 'logstash-codec-plain'
|
25
|
-
s.add_runtime_dependency 'mail'
|
25
|
+
s.add_runtime_dependency 'mail', '~> 2.6.3'
|
26
|
+
s.add_runtime_dependency 'mime-types', '2.6.2'
|
26
27
|
s.add_runtime_dependency 'stud', '~> 0.0.22'
|
27
28
|
|
28
29
|
s.add_development_dependency 'logstash-devutils'
|
29
30
|
end
|
30
|
-
|
data/spec/inputs/imap_spec.rb
CHANGED
@@ -60,7 +60,7 @@ describe LogStash::Inputs::IMAP do
|
|
60
60
|
input = LogStash::Inputs::IMAP.new config
|
61
61
|
input.register
|
62
62
|
event = input.parse_mail(subject)
|
63
|
-
insist { event
|
63
|
+
insist { event.get("message") } == msg_text
|
64
64
|
end
|
65
65
|
end
|
66
66
|
|
@@ -73,7 +73,7 @@ describe LogStash::Inputs::IMAP do
|
|
73
73
|
input = LogStash::Inputs::IMAP.new config
|
74
74
|
input.register
|
75
75
|
event = input.parse_mail(subject)
|
76
|
-
insist { event
|
76
|
+
insist { event.get("message") } == msg_html
|
77
77
|
end
|
78
78
|
end
|
79
79
|
end
|
@@ -87,7 +87,7 @@ describe LogStash::Inputs::IMAP do
|
|
87
87
|
input = LogStash::Inputs::IMAP.new config
|
88
88
|
input.register
|
89
89
|
event = input.parse_mail(subject)
|
90
|
-
insist { event
|
90
|
+
insist { event.get("subject") } == "foo : bar"
|
91
91
|
end
|
92
92
|
end
|
93
93
|
|
@@ -102,7 +102,7 @@ describe LogStash::Inputs::IMAP do
|
|
102
102
|
input = LogStash::Inputs::IMAP.new config
|
103
103
|
input.register
|
104
104
|
event = input.parse_mail(subject)
|
105
|
-
insist { event
|
105
|
+
insist { event.get("received") } == ["test1", "test2"]
|
106
106
|
end
|
107
107
|
|
108
108
|
it "should add more than 2 values as array in event" do
|
@@ -116,7 +116,7 @@ describe LogStash::Inputs::IMAP do
|
|
116
116
|
input = LogStash::Inputs::IMAP.new config
|
117
117
|
input.register
|
118
118
|
event = input.parse_mail(subject)
|
119
|
-
insist { event
|
119
|
+
insist { event.get("received") } == ["test1", "test2", "test3"]
|
120
120
|
end
|
121
121
|
end
|
122
122
|
|
@@ -129,7 +129,7 @@ describe LogStash::Inputs::IMAP do
|
|
129
129
|
input = LogStash::Inputs::IMAP.new config
|
130
130
|
input.register
|
131
131
|
event = input.parse_mail(subject)
|
132
|
-
insist { event
|
132
|
+
insist { event.get("message") } == msg_text
|
133
133
|
end
|
134
134
|
end
|
135
135
|
end
|
metadata
CHANGED
@@ -1,86 +1,102 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: logstash-input-imap
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 3.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Elastic
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-
|
11
|
+
date: 2016-05-06 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
|
+
name: logstash-core-plugin-api
|
14
15
|
requirement: !ruby/object:Gem::Requirement
|
15
16
|
requirements:
|
16
17
|
- - "~>"
|
17
18
|
- !ruby/object:Gem::Version
|
18
|
-
version: '
|
19
|
-
name: logstash-core-plugin-api
|
20
|
-
prerelease: false
|
19
|
+
version: '2.0'
|
21
20
|
type: :runtime
|
21
|
+
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: '
|
26
|
+
version: '2.0'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
|
+
name: logstash-codec-plain
|
28
29
|
requirement: !ruby/object:Gem::Requirement
|
29
30
|
requirements:
|
30
31
|
- - ">="
|
31
32
|
- !ruby/object:Gem::Version
|
32
33
|
version: '0'
|
33
|
-
name: logstash-codec-plain
|
34
|
-
prerelease: false
|
35
34
|
type: :runtime
|
35
|
+
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - ">="
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '0'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
|
+
name: mail
|
42
43
|
requirement: !ruby/object:Gem::Requirement
|
43
44
|
requirements:
|
44
|
-
- - "
|
45
|
+
- - "~>"
|
45
46
|
- !ruby/object:Gem::Version
|
46
|
-
version:
|
47
|
-
|
47
|
+
version: 2.6.3
|
48
|
+
type: :runtime
|
48
49
|
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - "~>"
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: 2.6.3
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: mime-types
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - '='
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: 2.6.2
|
49
62
|
type: :runtime
|
63
|
+
prerelease: false
|
50
64
|
version_requirements: !ruby/object:Gem::Requirement
|
51
65
|
requirements:
|
52
|
-
- -
|
66
|
+
- - '='
|
53
67
|
- !ruby/object:Gem::Version
|
54
|
-
version:
|
68
|
+
version: 2.6.2
|
55
69
|
- !ruby/object:Gem::Dependency
|
70
|
+
name: stud
|
56
71
|
requirement: !ruby/object:Gem::Requirement
|
57
72
|
requirements:
|
58
73
|
- - "~>"
|
59
74
|
- !ruby/object:Gem::Version
|
60
75
|
version: 0.0.22
|
61
|
-
name: stud
|
62
|
-
prerelease: false
|
63
76
|
type: :runtime
|
77
|
+
prerelease: false
|
64
78
|
version_requirements: !ruby/object:Gem::Requirement
|
65
79
|
requirements:
|
66
80
|
- - "~>"
|
67
81
|
- !ruby/object:Gem::Version
|
68
82
|
version: 0.0.22
|
69
83
|
- !ruby/object:Gem::Dependency
|
84
|
+
name: logstash-devutils
|
70
85
|
requirement: !ruby/object:Gem::Requirement
|
71
86
|
requirements:
|
72
87
|
- - ">="
|
73
88
|
- !ruby/object:Gem::Version
|
74
89
|
version: '0'
|
75
|
-
name: logstash-devutils
|
76
|
-
prerelease: false
|
77
90
|
type: :development
|
91
|
+
prerelease: false
|
78
92
|
version_requirements: !ruby/object:Gem::Requirement
|
79
93
|
requirements:
|
80
94
|
- - ">="
|
81
95
|
- !ruby/object:Gem::Version
|
82
96
|
version: '0'
|
83
|
-
description: This gem is a
|
97
|
+
description: This gem is a Logstash plugin required to be installed on top of the
|
98
|
+
Logstash core pipeline using $LS_HOME/bin/logstash-plugin install gemname. This
|
99
|
+
gem is not a stand-alone program
|
84
100
|
email: info@elastic.co
|
85
101
|
executables: []
|
86
102
|
extensions: []
|
@@ -101,7 +117,7 @@ licenses:
|
|
101
117
|
metadata:
|
102
118
|
logstash_plugin: 'true'
|
103
119
|
logstash_group: input
|
104
|
-
post_install_message:
|
120
|
+
post_install_message:
|
105
121
|
rdoc_options: []
|
106
122
|
require_paths:
|
107
123
|
- lib
|
@@ -116,9 +132,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
116
132
|
- !ruby/object:Gem::Version
|
117
133
|
version: '0'
|
118
134
|
requirements: []
|
119
|
-
rubyforge_project:
|
120
|
-
rubygems_version: 2.
|
121
|
-
signing_key:
|
135
|
+
rubyforge_project:
|
136
|
+
rubygems_version: 2.5.1
|
137
|
+
signing_key:
|
122
138
|
specification_version: 4
|
123
139
|
summary: Read mail from IMAP servers
|
124
140
|
test_files:
|