fluent-plugin-kubernetes-objects 1.1.10 → 1.2.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 31c2ee4ae02b06ac69811b0df399f70ca9641a0449b6891e715363d0122a2805
4
- data.tar.gz: 945e7c6459aa6de997e6b578f7205a839c8300c6ab598852bb656e493659e1a3
3
+ metadata.gz: 0b2a488a7c570f3b00445f3e0b9b3e9889225f43dac72427af5c7ef6a1e66407
4
+ data.tar.gz: e0a7f1cfb2a129fbf225fd0fed8a41cd05504f0858664699dbea466d73c0f254
5
5
  SHA512:
6
- metadata.gz: 6c6c6197b3cfa30a9c12f53de39a49a2b9e6faa17ebb58e89999349df390422e458171d3fcb32207074b3cc3b801df619e188a4a7ef1646e2ef05c26ea26bb1a
7
- data.tar.gz: 369e596ee739619b78f484ce4611b77726d8acb54b386da5c4f057d699a4aac71f3d47858b57a9f86c655ee10878c80463dab520247d1b556dc1be3de32ce7fd
6
+ metadata.gz: 8c8ce749b0f430d7d01ea3cb45ff115660e344b40978fc8587ba1b5677eed1be09cf88695b3da25fc6380ce40cc3f4611db4351f2dd86312eb9f6643d3b9c156
7
+ data.tar.gz: fc0657a808b8481ecb1d5f41b3f8c747e27631db0751e561931a467c893f66060946f603d4e9199dd0540d237d9883ca71706abdc77dd1d2efb3969237a8692d
data/Gemfile CHANGED
@@ -8,3 +8,4 @@ git_source(:github) { |repo_name| "https://github.com/#{repo_name}" }
8
8
 
9
9
  # Specify your gem's dependencies in fluent-plugin-kubernetes_objects_input.gemspec
10
10
  gemspec
11
+ gem 'kubeclient', git: 'https://github.com/splunk/kubeclient.git', ref: '955ec5b'
data/Gemfile.lock CHANGED
@@ -1,17 +1,28 @@
1
+ GIT
2
+ remote: https://github.com/splunk/kubeclient.git
3
+ revision: 955ec5b62f64b6065b25a7c0c76467e8b6badf17
4
+ ref: 955ec5b
5
+ specs:
6
+ kubeclient (4.9.3)
7
+ http (>= 3.0, < 5.0)
8
+ jsonpath (~> 1.0)
9
+ recursive-open-struct (~> 1.1, >= 1.1.1)
10
+ rest-client (~> 2.0)
11
+
1
12
  PATH
2
13
  remote: .
3
14
  specs:
4
- fluent-plugin-kubernetes-objects (1.1.10)
15
+ fluent-plugin-kubernetes-objects (1.2.0)
5
16
  fluentd (>= 1.9.1)
6
- http_parser.rb (= 0.5.3)
7
- kubeclient (~> 4.6.0)
17
+ http_parser.rb (= 0.8.0)
18
+ kubeclient (~> 4.9.3)
8
19
 
9
20
  GEM
10
21
  remote: https://rubygems.org/
11
22
  specs:
12
23
  addressable (2.8.0)
13
24
  public_suffix (>= 2.0.2, < 5.0)
14
- concurrent-ruby (1.1.9)
25
+ concurrent-ruby (1.1.10)
15
26
  cool.io (1.7.1)
16
27
  crack (0.4.5)
17
28
  rexml
@@ -22,12 +33,12 @@ GEM
22
33
  ffi-compiler (1.0.1)
23
34
  ffi (>= 1.0.0)
24
35
  rake
25
- fluentd (1.14.4)
36
+ fluentd (1.15.1)
26
37
  bundler
27
38
  cool.io (>= 1.4.5, < 2.0.0)
28
39
  http_parser.rb (>= 0.5.1, < 0.9.0)
29
40
  msgpack (>= 1.3.1, < 2.0.0)
30
- serverengine (>= 2.2.2, < 3.0.0)
41
+ serverengine (>= 2.3.0, < 3.0.0)
31
42
  sigdump (~> 0.2.2)
32
43
  strptime (>= 0.2.4, < 1.0.0)
33
44
  tzinfo (>= 1.0, < 3.0)
@@ -46,19 +57,18 @@ GEM
46
57
  http-form_data (2.3.0)
47
58
  http-parser (1.2.3)
48
59
  ffi-compiler (>= 1.0, < 2.0)
49
- http_parser.rb (0.5.3)
50
- kubeclient (4.6.0)
51
- http (>= 3.0, < 5.0)
52
- recursive-open-struct (~> 1.0, >= 1.0.4)
53
- rest-client (~> 2.0)
60
+ http_parser.rb (0.8.0)
61
+ jsonpath (1.1.2)
62
+ multi_json
54
63
  mime-types (3.4.1)
55
64
  mime-types-data (~> 3.2015)
56
65
  mime-types-data (3.2022.0105)
57
- minitest (5.14.4)
58
- msgpack (1.4.4)
66
+ minitest (5.15.0)
67
+ msgpack (1.5.4)
68
+ multi_json (1.15.0)
59
69
  netrc (0.11.0)
60
70
  power_assert (2.0.1)
61
- public_suffix (4.0.6)
71
+ public_suffix (4.0.7)
62
72
  rake (13.0.6)
63
73
  recursive-open-struct (1.1.3)
64
74
  rest-client (2.1.0)
@@ -67,7 +77,7 @@ GEM
67
77
  mime-types (>= 1.16, < 4.0)
68
78
  netrc (~> 0.8)
69
79
  rexml (3.2.5)
70
- serverengine (2.2.5)
80
+ serverengine (2.3.0)
71
81
  sigdump (~> 0.2.2)
72
82
  sigdump (0.2.4)
73
83
  simplecov (0.21.2)
@@ -75,23 +85,23 @@ GEM
75
85
  simplecov-html (~> 0.11)
76
86
  simplecov_json_formatter (~> 0.1)
77
87
  simplecov-html (0.12.3)
78
- simplecov_json_formatter (0.1.3)
88
+ simplecov_json_formatter (0.1.4)
79
89
  strptime (0.2.5)
80
- test-unit (3.5.0)
90
+ test-unit (3.5.3)
81
91
  power_assert
82
- tzinfo (2.0.4)
92
+ tzinfo (2.0.5)
83
93
  concurrent-ruby (~> 1.0)
84
- tzinfo-data (1.2021.5)
94
+ tzinfo-data (1.2022.2)
85
95
  tzinfo (>= 1.0.0)
86
96
  unf (0.1.4)
87
97
  unf_ext
88
- unf_ext (0.0.8)
98
+ unf_ext (0.0.8.1)
89
99
  webmock (3.14.0)
90
100
  addressable (>= 2.8.0)
91
101
  crack (>= 0.3.2)
92
102
  hashdiff (>= 0.4.0, < 2.0.0)
93
103
  webrick (1.7.0)
94
- yajl-ruby (1.4.1)
104
+ yajl-ruby (1.4.3)
95
105
 
96
106
  PLATFORMS
97
107
  ruby
@@ -99,6 +109,7 @@ PLATFORMS
99
109
  DEPENDENCIES
100
110
  bundler (~> 2.0)
101
111
  fluent-plugin-kubernetes-objects!
112
+ kubeclient!
102
113
  minitest (~> 5.11)
103
114
  rake (>= 12.0)
104
115
  simplecov
@@ -106,4 +117,4 @@ DEPENDENCIES
106
117
  webmock (~> 3.5)
107
118
 
108
119
  BUNDLED WITH
109
- 2.3.9
120
+ 2.3.20
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.1.10
1
+ 1.2.0
@@ -22,8 +22,8 @@ Gem::Specification.new do |spec|
22
22
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
23
23
  spec.required_ruby_version = '>= 2.3.0'
24
24
  spec.add_runtime_dependency 'fluentd', '>= 1.9.1'
25
- spec.add_runtime_dependency 'kubeclient', '~> 4.6.0'
26
- spec.add_runtime_dependency 'http_parser.rb', '= 0.5.3'
25
+ spec.add_runtime_dependency 'kubeclient', '~> 4.9.3'
26
+ spec.add_runtime_dependency 'http_parser.rb', '= 0.8.0'
27
27
 
28
28
  spec.add_development_dependency 'bundler', '~> 2.0'
29
29
  spec.add_development_dependency 'minitest', '~> 5.11'
@@ -20,6 +20,9 @@ module Fluent::Plugin
20
20
  desc 'Kubernetes API version.'
21
21
  config_param :api_version, :string, default: 'v1'
22
22
 
23
+ desc 'Kubernetes API endpoint.'
24
+ config_param :api_endpoint, :string, default: 'api'
25
+
23
26
  desc 'Path to the certificate file for this client.'
24
27
  config_param :client_cert, :string, default: nil
25
28
 
@@ -139,7 +142,7 @@ module Fluent::Plugin
139
142
  env_host = ENV['KUBERNETES_SERVICE_HOST']
140
143
  env_port = ENV['KUBERNETES_SERVICE_PORT']
141
144
  if env_host && env_port
142
- @kubernetes_url = "https://#{env_host}:#{env_port}/#{@api_version == 'v1' ? 'api' : 'apis'}"
145
+ @kubernetes_url = "https://#{env_host}:#{env_port}/#{@api_endpoint.delete_prefix('/')}"
143
146
  end
144
147
  end
145
148
 
@@ -57,8 +57,9 @@ describe Fluent::Plugin::KubernetesObjectsInput do
57
57
  puts 'Test: should use pick the right path'
58
58
  ENV['KUBERNETES_SERVICE_HOST'] = k8s_host
59
59
  ENV['KUBERNETES_SERVICE_PORT'] = k8s_port
60
- expect(create_input_driver(<<~CONF).instance.kubernetes_url).must_equal k8s_url('apis')
61
- api_version apps/v1
60
+ expect(create_input_driver(<<~CONF).instance.kubernetes_url).must_equal k8s_url('apis/apps')
61
+ api_endpoint apis/apps
62
+ api_version v1
62
63
  <pull>
63
64
  resource_name deployments
64
65
  </pull>
data/test/test_helper.rb CHANGED
@@ -54,6 +54,9 @@ module PluginTestHelper
54
54
  stub_k8s_nodes
55
55
  stub_k8s_pods
56
56
  stub_k8s_events
57
+ stub_k8s_apps
58
+ stub_k8s_apps_v1
59
+ stub_k8s_apps_v1_namespace
57
60
  end
58
61
 
59
62
  def stub_k8s_api
@@ -68,6 +71,24 @@ module PluginTestHelper
68
71
  end.close
69
72
  end
70
73
 
74
+ def stub_k8s_apps
75
+ File.open(File.expand_path('apps.json', __dir__)).tap do |f|
76
+ stub_request(:get, k8s_url('apis/apps')).to_return(body: f.read)
77
+ end.close
78
+ end
79
+
80
+ def stub_k8s_apps_v1
81
+ File.open(File.expand_path('apps-v1.json', __dir__)).tap do |f|
82
+ stub_request(:get, k8s_url('apis/apps/v1')).to_return(body: f.read)
83
+ end.close
84
+ end
85
+
86
+ def stub_k8s_apps_v1_namespace
87
+ File.open(File.expand_path('apps-v1-namespace.json', __dir__)).tap do |f|
88
+ stub_request(:get, k8s_url('apis/apps')).to_return(body: f.read)
89
+ end.close
90
+ end
91
+
71
92
  def stub_k8s_v1
72
93
  File.open(File.expand_path('v1.json', __dir__)).tap do |f|
73
94
  stub_request(:get, "#{k8s_url}/v1").to_return(body: f.read)
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fluent-plugin-kubernetes-objects
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.10
4
+ version: 1.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Splunk Inc.
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-03-15 00:00:00.000000000 Z
11
+ date: 2022-08-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: fluentd
@@ -30,28 +30,28 @@ dependencies:
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: 4.6.0
33
+ version: 4.9.3
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: 4.6.0
40
+ version: 4.9.3
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: http_parser.rb
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - '='
46
46
  - !ruby/object:Gem::Version
47
- version: 0.5.3
47
+ version: 0.8.0
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - '='
53
53
  - !ruby/object:Gem::Version
54
- version: 0.5.3
54
+ version: 0.8.0
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: bundler
57
57
  requirement: !ruby/object:Gem::Requirement
@@ -172,12 +172,12 @@ signing_key:
172
172
  specification_version: 4
173
173
  summary: Fluentd Plugin for Kubernetes Objects.
174
174
  test_files:
175
- - test/fluent/plugin/in_kubernetes_objects_test.rb
176
175
  - test/test_helper.rb
177
- - test/lib/no_webmock/http_lib_adapters/httpclient_adapter.rb
178
176
  - test/lib/no_webmock/http_lib_adapters/excon_adapter.rb
179
- - test/lib/no_webmock/http_lib_adapters/em_http_request_adapter.rb
180
177
  - test/lib/no_webmock/http_lib_adapters/typhoeus_hydra_adapter.rb
181
178
  - test/lib/no_webmock/http_lib_adapters/manticore_adapter.rb
179
+ - test/lib/no_webmock/http_lib_adapters/httpclient_adapter.rb
182
180
  - test/lib/no_webmock/http_lib_adapters/curb_adapter.rb
181
+ - test/lib/no_webmock/http_lib_adapters/em_http_request_adapter.rb
183
182
  - test/lib/no_webmock/http_lib_adapters/patron_adapter.rb
183
+ - test/fluent/plugin/in_kubernetes_objects_test.rb