fluent-plugin-aws-elasticsearch-service 2.3.0 → 2.4.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile +1 -1
- data/README.md +1 -0
- data/fluent-plugin-aws-elasticsearch-service.gemspec +4 -4
- data/lib/fluent/plugin/out_aws-elasticsearch-service.rb +15 -4
- metadata +17 -11
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5b43f023ea0c787dc6b18db57b47050078babc38c33d45bccd172e30c2f0b2a0
|
4
|
+
data.tar.gz: a2310d3e8fb5a710edca64ec72b656a5cc0517bac9151976e5ad23b16acfe12c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6563475cc1717bc69c6c1d417dcef797e4418f172cdab5d0d767efd8f2aedd3beeb38e405ca162f6c1bee2b1a505004e59a50ce8c5ae625fd01b1ab7e291918f
|
7
|
+
data.tar.gz: f270b332238a0e438de2062a72e5e53e5689e4130bf422b0f092423dad625b4a156a62862f5f7c452f4f6855d2f7ee5c61b0eca3473a58cbc692f8ce81b8acd8
|
data/Gemfile
CHANGED
@@ -3,6 +3,6 @@ source 'https://rubygems.org'
|
|
3
3
|
# Specify your gem's dependencies in fluent-plugin-aws-elasticsearch-service.gemspec
|
4
4
|
gemspec
|
5
5
|
|
6
|
-
gem 'fluent-plugin-elasticsearch', [">= 2.4.0", "<
|
6
|
+
gem 'fluent-plugin-elasticsearch', [">= 2.4.0", "< 5"], require: false
|
7
7
|
gem 'aws-sdk-core', '~> 3', require: false
|
8
8
|
gem 'faraday_middleware-aws-sigv4', '~> 0.3.0', require: false
|
data/README.md
CHANGED
@@ -92,6 +92,7 @@ Additionally, you can use an STS assumed role as the authenticating factor and i
|
|
92
92
|
region eu-west-1
|
93
93
|
assume_role_arn arn:aws:sts::ACCOUNT:role/ROLE
|
94
94
|
assume_role_session_name SESSION_ID # Defaults to fluentd if omitted
|
95
|
+
sts_credentials_region us-west-2 # Defaults to region if omitted
|
95
96
|
</endpoint>
|
96
97
|
```
|
97
98
|
|
@@ -5,7 +5,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |spec|
|
7
7
|
spec.name = "fluent-plugin-aws-elasticsearch-service"
|
8
|
-
spec.version = "2.
|
8
|
+
spec.version = "2.4.0"
|
9
9
|
spec.authors = ["atomita"]
|
10
10
|
spec.email = ["sleeping.cait.sith+gh@gmail.com"]
|
11
11
|
|
@@ -20,12 +20,12 @@ Gem::Specification.new do |spec|
|
|
20
20
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
21
21
|
spec.require_paths = ["lib"]
|
22
22
|
|
23
|
-
spec.add_development_dependency "bundler", "
|
24
|
-
spec.add_development_dependency "rake", "~>
|
23
|
+
spec.add_development_dependency "bundler", [">= 1.10", "< 3"]
|
24
|
+
spec.add_development_dependency "rake", "~> 13.0"
|
25
25
|
spec.add_development_dependency "rspec", "~> 3.0"
|
26
26
|
spec.add_development_dependency "test-unit", "~> 3.0"
|
27
27
|
spec.add_runtime_dependency "fluentd", [">= 0.14.15", "< 2"]
|
28
|
-
spec.add_runtime_dependency "fluent-plugin-elasticsearch", [">= 3.3.0", "<
|
28
|
+
spec.add_runtime_dependency "fluent-plugin-elasticsearch", [">= 3.3.0", "< 5"]
|
29
29
|
spec.add_runtime_dependency "aws-sdk-core", "~> 3"
|
30
30
|
spec.add_runtime_dependency "faraday_middleware-aws-sigv4", "~> 0.3.0"
|
31
31
|
end
|
@@ -20,6 +20,7 @@ module Fluent::Plugin
|
|
20
20
|
config_param :ecs_container_credentials_relative_uri, :string, :default => nil #Set with AWS_CONTAINER_CREDENTIALS_RELATIVE_URI environment variable value
|
21
21
|
config_param :assume_role_session_name, :string, :default => "fluentd"
|
22
22
|
config_param :assume_role_web_identity_token_file, :string, :default => nil
|
23
|
+
config_param :sts_credentials_region, :string, :default => nil
|
23
24
|
end
|
24
25
|
|
25
26
|
# here overrides default value of reload_connections to false because
|
@@ -35,6 +36,10 @@ module Fluent::Plugin
|
|
35
36
|
def get_connection_options(con_host=nil)
|
36
37
|
raise "`endpoint` require." if @endpoint.empty?
|
37
38
|
|
39
|
+
@endpoint.map do |ep|
|
40
|
+
raise Fluent::ConfigError, "Ensure you don't have a trailing slash on the endpoint URL in your fluentd configuration." if ep[:url].end_with?("/")
|
41
|
+
end
|
42
|
+
|
38
43
|
hosts =
|
39
44
|
begin
|
40
45
|
@endpoint.map do |ep|
|
@@ -75,27 +80,29 @@ module Fluent::Plugin
|
|
75
80
|
credentials = Aws::Credentials.new opts[:access_key_id], opts[:secret_access_key]
|
76
81
|
else
|
77
82
|
if opts[:assume_role_arn].nil?
|
78
|
-
|
83
|
+
aws_container_credentials_relative_uri = opts[:ecs_container_credentials_relative_uri] || ENV["AWS_CONTAINER_CREDENTIALS_RELATIVE_URI"]
|
84
|
+
if aws_container_credentials_relative_uri.nil?
|
79
85
|
credentials = Aws::SharedCredentials.new({retries: 2}).credentials
|
80
86
|
credentials ||= Aws::InstanceProfileCredentials.new.credentials
|
81
87
|
credentials ||= Aws::ECSCredentials.new.credentials
|
82
88
|
else
|
83
89
|
credentials = Aws::ECSCredentials.new({
|
84
|
-
credential_path:
|
90
|
+
credential_path: aws_container_credentials_relative_uri
|
85
91
|
}).credentials
|
86
92
|
end
|
87
93
|
else
|
94
|
+
|
88
95
|
if opts[:assume_role_web_identity_token_file].nil?
|
89
96
|
credentials = sts_credential_provider({
|
90
97
|
role_arn: opts[:assume_role_arn],
|
91
98
|
role_session_name: opts[:assume_role_session_name],
|
92
|
-
region: opts
|
99
|
+
region: sts_credentials_region(opts)
|
93
100
|
}).credentials
|
94
101
|
else
|
95
102
|
credentials = sts_web_identity_credential_provider({
|
96
103
|
role_arn: opts[:assume_role_arn],
|
97
104
|
web_identity_token_file: opts[:assume_role_web_identity_token_file],
|
98
|
-
region: opts
|
105
|
+
region: sts_credentials_region(opts)
|
99
106
|
}).credentials
|
100
107
|
end
|
101
108
|
end
|
@@ -110,6 +117,10 @@ module Fluent::Plugin
|
|
110
117
|
calback
|
111
118
|
end
|
112
119
|
|
120
|
+
def sts_credentials_region(opts)
|
121
|
+
opts[:sts_credentials_region] || opts[:region]
|
122
|
+
end
|
123
|
+
|
113
124
|
def sts_credential_provider(opts)
|
114
125
|
# AssumeRoleCredentials is an auto-refreshing credential provider
|
115
126
|
@sts ||= Aws::AssumeRoleCredentials.new(opts)
|
metadata
CHANGED
@@ -1,43 +1,49 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fluent-plugin-aws-elasticsearch-service
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- atomita
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2020-07-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- - "
|
17
|
+
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
19
|
version: '1.10'
|
20
|
+
- - "<"
|
21
|
+
- !ruby/object:Gem::Version
|
22
|
+
version: '3'
|
20
23
|
type: :development
|
21
24
|
prerelease: false
|
22
25
|
version_requirements: !ruby/object:Gem::Requirement
|
23
26
|
requirements:
|
24
|
-
- - "
|
27
|
+
- - ">="
|
25
28
|
- !ruby/object:Gem::Version
|
26
29
|
version: '1.10'
|
30
|
+
- - "<"
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: '3'
|
27
33
|
- !ruby/object:Gem::Dependency
|
28
34
|
name: rake
|
29
35
|
requirement: !ruby/object:Gem::Requirement
|
30
36
|
requirements:
|
31
37
|
- - "~>"
|
32
38
|
- !ruby/object:Gem::Version
|
33
|
-
version: '
|
39
|
+
version: '13.0'
|
34
40
|
type: :development
|
35
41
|
prerelease: false
|
36
42
|
version_requirements: !ruby/object:Gem::Requirement
|
37
43
|
requirements:
|
38
44
|
- - "~>"
|
39
45
|
- !ruby/object:Gem::Version
|
40
|
-
version: '
|
46
|
+
version: '13.0'
|
41
47
|
- !ruby/object:Gem::Dependency
|
42
48
|
name: rspec
|
43
49
|
requirement: !ruby/object:Gem::Requirement
|
@@ -95,7 +101,7 @@ dependencies:
|
|
95
101
|
version: 3.3.0
|
96
102
|
- - "<"
|
97
103
|
- !ruby/object:Gem::Version
|
98
|
-
version: '
|
104
|
+
version: '5'
|
99
105
|
type: :runtime
|
100
106
|
prerelease: false
|
101
107
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -105,7 +111,7 @@ dependencies:
|
|
105
111
|
version: 3.3.0
|
106
112
|
- - "<"
|
107
113
|
- !ruby/object:Gem::Version
|
108
|
-
version: '
|
114
|
+
version: '5'
|
109
115
|
- !ruby/object:Gem::Dependency
|
110
116
|
name: aws-sdk-core
|
111
117
|
requirement: !ruby/object:Gem::Requirement
|
@@ -153,7 +159,7 @@ homepage: https://github.com/atomita/fluent-plugin-aws-elasticsearch-service
|
|
153
159
|
licenses:
|
154
160
|
- MIT
|
155
161
|
metadata: {}
|
156
|
-
post_install_message:
|
162
|
+
post_install_message:
|
157
163
|
rdoc_options: []
|
158
164
|
require_paths:
|
159
165
|
- lib
|
@@ -169,7 +175,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
169
175
|
version: '0'
|
170
176
|
requirements: []
|
171
177
|
rubygems_version: 3.0.1
|
172
|
-
signing_key:
|
178
|
+
signing_key:
|
173
179
|
specification_version: 4
|
174
180
|
summary: Output plugin to post to "Amazon Elasticsearch Service".
|
175
181
|
test_files: []
|