elasticsearch-api 7.12.0 → 7.13.0.pre

Sign up to get free protection for your applications and to get access to all the features.
Files changed (179) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +6 -8
  3. data/Rakefile +46 -62
  4. data/lib/elasticsearch/api.rb +2 -1
  5. data/lib/elasticsearch/api/actions/bulk.rb +1 -1
  6. data/lib/elasticsearch/api/actions/cat/aliases.rb +1 -1
  7. data/lib/elasticsearch/api/actions/cat/allocation.rb +1 -1
  8. data/lib/elasticsearch/api/actions/cat/count.rb +1 -1
  9. data/lib/elasticsearch/api/actions/cat/fielddata.rb +1 -1
  10. data/lib/elasticsearch/api/actions/cat/health.rb +1 -1
  11. data/lib/elasticsearch/api/actions/cat/help.rb +1 -1
  12. data/lib/elasticsearch/api/actions/cat/indices.rb +1 -1
  13. data/lib/elasticsearch/api/actions/cat/master.rb +1 -1
  14. data/lib/elasticsearch/api/actions/cat/nodeattrs.rb +1 -1
  15. data/lib/elasticsearch/api/actions/cat/nodes.rb +4 -2
  16. data/lib/elasticsearch/api/actions/cat/pending_tasks.rb +1 -1
  17. data/lib/elasticsearch/api/actions/cat/plugins.rb +1 -1
  18. data/lib/elasticsearch/api/actions/cat/recovery.rb +1 -1
  19. data/lib/elasticsearch/api/actions/cat/repositories.rb +1 -1
  20. data/lib/elasticsearch/api/actions/cat/segments.rb +1 -1
  21. data/lib/elasticsearch/api/actions/cat/shards.rb +1 -1
  22. data/lib/elasticsearch/api/actions/cat/snapshots.rb +1 -1
  23. data/lib/elasticsearch/api/actions/cat/tasks.rb +1 -1
  24. data/lib/elasticsearch/api/actions/cat/templates.rb +1 -1
  25. data/lib/elasticsearch/api/actions/cat/thread_pool.rb +1 -1
  26. data/lib/elasticsearch/api/actions/clear_scroll.rb +1 -1
  27. data/lib/elasticsearch/api/actions/close_point_in_time.rb +42 -0
  28. data/lib/elasticsearch/api/actions/cluster/allocation_explain.rb +1 -1
  29. data/lib/elasticsearch/api/actions/cluster/delete_component_template.rb +1 -1
  30. data/lib/elasticsearch/api/actions/cluster/delete_voting_config_exclusions.rb +1 -1
  31. data/lib/elasticsearch/api/actions/cluster/exists_component_template.rb +1 -1
  32. data/lib/elasticsearch/api/actions/cluster/get_component_template.rb +1 -1
  33. data/lib/elasticsearch/api/actions/cluster/get_settings.rb +1 -1
  34. data/lib/elasticsearch/api/actions/cluster/health.rb +1 -1
  35. data/lib/elasticsearch/api/actions/cluster/pending_tasks.rb +1 -1
  36. data/lib/elasticsearch/api/actions/cluster/post_voting_config_exclusions.rb +1 -1
  37. data/lib/elasticsearch/api/actions/cluster/put_component_template.rb +1 -1
  38. data/lib/elasticsearch/api/actions/cluster/put_settings.rb +1 -1
  39. data/lib/elasticsearch/api/actions/cluster/remote_info.rb +1 -1
  40. data/lib/elasticsearch/api/actions/cluster/reroute.rb +1 -1
  41. data/lib/elasticsearch/api/actions/cluster/state.rb +1 -1
  42. data/lib/elasticsearch/api/actions/cluster/stats.rb +1 -1
  43. data/lib/elasticsearch/api/actions/count.rb +1 -1
  44. data/lib/elasticsearch/api/actions/create.rb +1 -1
  45. data/lib/elasticsearch/api/actions/dangling_indices/delete_dangling_index.rb +1 -1
  46. data/lib/elasticsearch/api/actions/dangling_indices/import_dangling_index.rb +1 -1
  47. data/lib/elasticsearch/api/actions/dangling_indices/list_dangling_indices.rb +1 -1
  48. data/lib/elasticsearch/api/actions/delete.rb +1 -1
  49. data/lib/elasticsearch/api/actions/delete_by_query.rb +1 -1
  50. data/lib/elasticsearch/api/actions/delete_by_query_rethrottle.rb +1 -1
  51. data/lib/elasticsearch/api/actions/delete_script.rb +1 -1
  52. data/lib/elasticsearch/api/actions/exists.rb +1 -1
  53. data/lib/elasticsearch/api/actions/exists_source.rb +1 -1
  54. data/lib/elasticsearch/api/actions/explain.rb +1 -1
  55. data/lib/elasticsearch/api/actions/features/get_features.rb +2 -2
  56. data/lib/elasticsearch/api/actions/features/reset_features.rb +47 -0
  57. data/lib/elasticsearch/api/actions/field_caps.rb +1 -1
  58. data/lib/elasticsearch/api/actions/get.rb +1 -1
  59. data/lib/elasticsearch/api/actions/get_script.rb +1 -1
  60. data/lib/elasticsearch/api/actions/get_script_context.rb +1 -1
  61. data/lib/elasticsearch/api/actions/get_script_languages.rb +1 -1
  62. data/lib/elasticsearch/api/actions/get_source.rb +1 -1
  63. data/lib/elasticsearch/api/actions/index.rb +1 -1
  64. data/lib/elasticsearch/api/actions/indices/add_block.rb +1 -1
  65. data/lib/elasticsearch/api/actions/indices/analyze.rb +1 -1
  66. data/lib/elasticsearch/api/actions/indices/clear_cache.rb +1 -1
  67. data/lib/elasticsearch/api/actions/indices/clone.rb +1 -1
  68. data/lib/elasticsearch/api/actions/indices/close.rb +1 -1
  69. data/lib/elasticsearch/api/actions/indices/create.rb +1 -1
  70. data/lib/elasticsearch/api/actions/indices/delete.rb +1 -1
  71. data/lib/elasticsearch/api/actions/indices/delete_alias.rb +1 -1
  72. data/lib/elasticsearch/api/actions/indices/delete_index_template.rb +1 -1
  73. data/lib/elasticsearch/api/actions/indices/delete_template.rb +1 -1
  74. data/lib/elasticsearch/api/actions/indices/exists.rb +1 -1
  75. data/lib/elasticsearch/api/actions/indices/exists_alias.rb +1 -1
  76. data/lib/elasticsearch/api/actions/indices/exists_index_template.rb +1 -1
  77. data/lib/elasticsearch/api/actions/indices/exists_template.rb +1 -1
  78. data/lib/elasticsearch/api/actions/indices/exists_type.rb +1 -1
  79. data/lib/elasticsearch/api/actions/indices/flush.rb +1 -1
  80. data/lib/elasticsearch/api/actions/indices/flush_synced.rb +1 -1
  81. data/lib/elasticsearch/api/actions/indices/forcemerge.rb +1 -1
  82. data/lib/elasticsearch/api/actions/indices/freeze.rb +29 -19
  83. data/lib/elasticsearch/api/actions/indices/get.rb +1 -1
  84. data/lib/elasticsearch/api/actions/indices/get_alias.rb +1 -1
  85. data/lib/elasticsearch/api/actions/indices/get_field_mapping.rb +1 -1
  86. data/lib/elasticsearch/api/actions/indices/get_index_template.rb +1 -1
  87. data/lib/elasticsearch/api/actions/indices/get_mapping.rb +1 -1
  88. data/lib/elasticsearch/api/actions/indices/get_settings.rb +1 -1
  89. data/lib/elasticsearch/api/actions/indices/get_template.rb +1 -1
  90. data/lib/elasticsearch/api/actions/indices/get_upgrade.rb +1 -1
  91. data/lib/elasticsearch/api/actions/indices/open.rb +1 -1
  92. data/lib/elasticsearch/api/actions/indices/put_alias.rb +1 -1
  93. data/lib/elasticsearch/api/actions/indices/put_index_template.rb +1 -1
  94. data/lib/elasticsearch/api/actions/indices/put_mapping.rb +1 -1
  95. data/lib/elasticsearch/api/actions/indices/put_settings.rb +1 -1
  96. data/lib/elasticsearch/api/actions/indices/put_template.rb +1 -1
  97. data/lib/elasticsearch/api/actions/indices/recovery.rb +1 -1
  98. data/lib/elasticsearch/api/actions/indices/refresh.rb +1 -1
  99. data/lib/elasticsearch/api/actions/indices/resolve_index.rb +1 -1
  100. data/lib/elasticsearch/api/actions/indices/rollover.rb +1 -1
  101. data/lib/elasticsearch/api/actions/indices/segments.rb +1 -1
  102. data/lib/elasticsearch/api/actions/indices/shard_stores.rb +1 -1
  103. data/lib/elasticsearch/api/actions/indices/shrink.rb +1 -1
  104. data/lib/elasticsearch/api/actions/indices/simulate_index_template.rb +1 -1
  105. data/lib/elasticsearch/api/actions/indices/simulate_template.rb +1 -1
  106. data/lib/elasticsearch/api/actions/indices/split.rb +1 -1
  107. data/lib/elasticsearch/api/actions/indices/stats.rb +1 -1
  108. data/lib/elasticsearch/api/actions/indices/unfreeze.rb +29 -19
  109. data/lib/elasticsearch/api/actions/indices/update_aliases.rb +1 -1
  110. data/lib/elasticsearch/api/actions/indices/upgrade.rb +1 -1
  111. data/lib/elasticsearch/api/actions/indices/validate_query.rb +1 -1
  112. data/lib/elasticsearch/api/actions/info.rb +1 -1
  113. data/lib/elasticsearch/api/actions/ingest/delete_pipeline.rb +1 -1
  114. data/lib/elasticsearch/api/actions/ingest/geo_ip_stats.rb +43 -0
  115. data/lib/elasticsearch/api/actions/ingest/get_pipeline.rb +3 -1
  116. data/lib/elasticsearch/api/actions/ingest/processor_grok.rb +1 -1
  117. data/lib/elasticsearch/api/actions/ingest/put_pipeline.rb +1 -1
  118. data/lib/elasticsearch/api/actions/ingest/simulate.rb +1 -1
  119. data/lib/elasticsearch/api/actions/mget.rb +1 -1
  120. data/lib/elasticsearch/api/actions/msearch.rb +1 -1
  121. data/lib/elasticsearch/api/actions/msearch_template.rb +1 -1
  122. data/lib/elasticsearch/api/actions/mtermvectors.rb +1 -1
  123. data/lib/elasticsearch/api/actions/nodes/hot_threads.rb +1 -1
  124. data/lib/elasticsearch/api/actions/nodes/info.rb +1 -1
  125. data/lib/elasticsearch/api/actions/nodes/reload_secure_settings.rb +1 -1
  126. data/lib/elasticsearch/api/actions/nodes/stats.rb +4 -2
  127. data/lib/elasticsearch/api/actions/nodes/usage.rb +1 -1
  128. data/lib/elasticsearch/api/actions/open_point_in_time.rb +64 -0
  129. data/lib/elasticsearch/api/actions/ping.rb +1 -1
  130. data/lib/elasticsearch/api/actions/put_script.rb +1 -1
  131. data/lib/elasticsearch/api/actions/rank_eval.rb +1 -1
  132. data/lib/elasticsearch/api/actions/reindex.rb +1 -1
  133. data/lib/elasticsearch/api/actions/reindex_rethrottle.rb +1 -1
  134. data/lib/elasticsearch/api/actions/render_search_template.rb +1 -1
  135. data/lib/elasticsearch/api/actions/scripts_painless_execute.rb +1 -1
  136. data/lib/elasticsearch/api/actions/scroll.rb +1 -1
  137. data/lib/elasticsearch/api/actions/search.rb +1 -1
  138. data/lib/elasticsearch/api/actions/search_shards.rb +1 -1
  139. data/lib/elasticsearch/api/actions/search_template.rb +1 -1
  140. data/lib/elasticsearch/api/actions/shutdown/delete_node.rb +52 -0
  141. data/lib/elasticsearch/api/actions/shutdown/get_node.rb +54 -0
  142. data/lib/elasticsearch/api/actions/shutdown/params_registry.rb +60 -0
  143. data/lib/elasticsearch/api/actions/shutdown/put_node.rb +54 -0
  144. data/lib/elasticsearch/api/actions/snapshot/cleanup_repository.rb +1 -1
  145. data/lib/elasticsearch/api/actions/snapshot/clone.rb +1 -1
  146. data/lib/elasticsearch/api/actions/snapshot/create.rb +1 -1
  147. data/lib/elasticsearch/api/actions/snapshot/create_repository.rb +1 -1
  148. data/lib/elasticsearch/api/actions/snapshot/delete.rb +1 -1
  149. data/lib/elasticsearch/api/actions/snapshot/delete_repository.rb +1 -1
  150. data/lib/elasticsearch/api/actions/snapshot/get.rb +3 -1
  151. data/lib/elasticsearch/api/actions/snapshot/get_repository.rb +1 -1
  152. data/lib/elasticsearch/api/actions/snapshot/restore.rb +1 -1
  153. data/lib/elasticsearch/api/actions/snapshot/status.rb +1 -1
  154. data/lib/elasticsearch/api/actions/snapshot/verify_repository.rb +1 -1
  155. data/lib/elasticsearch/api/actions/tasks/cancel.rb +1 -1
  156. data/lib/elasticsearch/api/actions/tasks/get.rb +1 -1
  157. data/lib/elasticsearch/api/actions/tasks/list.rb +1 -1
  158. data/lib/elasticsearch/api/actions/termvectors.rb +1 -1
  159. data/lib/elasticsearch/api/actions/update.rb +1 -1
  160. data/lib/elasticsearch/api/actions/update_by_query.rb +1 -1
  161. data/lib/elasticsearch/api/actions/update_by_query_rethrottle.rb +1 -1
  162. data/lib/elasticsearch/api/namespace/shutdown.rb +37 -0
  163. data/lib/elasticsearch/api/version.rb +1 -1
  164. data/spec/elasticsearch/api/actions/close_point_in_time_spec.rb +34 -0
  165. data/spec/elasticsearch/api/actions/features/get_features_spec.rb +5 -5
  166. data/spec/elasticsearch/api/actions/features/reset_features_spec.rb +34 -0
  167. data/spec/elasticsearch/api/actions/indices/freeze_spec.rb +1 -1
  168. data/spec/elasticsearch/api/actions/indices/unfreeze_spec.rb +1 -1
  169. data/spec/elasticsearch/api/actions/ingest/geo_ip_stats_spec.rb +34 -0
  170. data/spec/elasticsearch/api/actions/open_point_in_time_spec.rb +44 -0
  171. data/spec/elasticsearch/api/actions/shutdown/delete_node_spec.rb +44 -0
  172. data/spec/elasticsearch/api/actions/shutdown/get_node_spec.rb +46 -0
  173. data/spec/elasticsearch/api/actions/shutdown/put_node_spec.rb +50 -0
  174. data/spec/elasticsearch/api/rest_api_yaml_spec.rb +7 -0
  175. data/spec/rest_yaml_tests_helper.rb +4 -7
  176. data/utils/Gemfile +4 -3
  177. data/utils/thor/generate_source.rb +1 -2
  178. data/utils/thor/generator/files_helper.rb +38 -20
  179. metadata +28 -5
@@ -24,7 +24,7 @@ module Elasticsearch
24
24
  # @option arguments [Number] :requests_per_second The throttle to set on this request in floating sub-requests per second. -1 means set no throttle. (*Required*)
25
25
  # @option arguments [Hash] :headers Custom HTTP headers
26
26
  #
27
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.12/docs-reindex.html
27
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.x/docs-reindex.html
28
28
  #
29
29
  def reindex_rethrottle(arguments = {})
30
30
  raise ArgumentError, "Required argument 'task_id' missing" unless arguments[:task_id]
@@ -24,7 +24,7 @@ module Elasticsearch
24
24
  # @option arguments [Hash] :headers Custom HTTP headers
25
25
  # @option arguments [Hash] :body The search definition template and its params
26
26
  #
27
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.12/search-template.html#_validating_templates
27
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.x/search-template.html#_validating_templates
28
28
  #
29
29
  def render_search_template(arguments = {})
30
30
  headers = arguments.delete(:headers) || {}
@@ -27,7 +27,7 @@ module Elasticsearch
27
27
  # @option arguments [Hash] :headers Custom HTTP headers
28
28
  # @option arguments [Hash] :body The script to execute
29
29
  #
30
- # @see https://www.elastic.co/guide/en/elasticsearch/painless/7.12/painless-execute-api.html
30
+ # @see https://www.elastic.co/guide/en/elasticsearch/painless/7.x/painless-execute-api.html
31
31
  #
32
32
  def scripts_painless_execute(arguments = {})
33
33
  headers = arguments.delete(:headers) || {}
@@ -31,7 +31,7 @@ module Elasticsearch
31
31
  # Deprecated since version 7.0.0
32
32
  #
33
33
  #
34
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.12/search-request-body.html#request-body-search-scroll
34
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.x/search-request-body.html#request-body-search-scroll
35
35
  #
36
36
  def scroll(arguments = {})
37
37
  headers = arguments.delete(:headers) || {}
@@ -73,7 +73,7 @@ module Elasticsearch
73
73
  # Deprecated since version 7.0.0
74
74
  #
75
75
  #
76
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.12/search-search.html
76
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.x/search-search.html
77
77
  #
78
78
  def search(arguments = {})
79
79
  headers = arguments.delete(:headers) || {}
@@ -29,7 +29,7 @@ module Elasticsearch
29
29
  # @option arguments [String] :expand_wildcards Whether to expand wildcard expression to concrete indices that are open, closed or both. (options: open, closed, hidden, none, all)
30
30
  # @option arguments [Hash] :headers Custom HTTP headers
31
31
  #
32
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.12/search-shards.html
32
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.x/search-shards.html
33
33
  #
34
34
  def search_shards(arguments = {})
35
35
  headers = arguments.delete(:headers) || {}
@@ -43,7 +43,7 @@ module Elasticsearch
43
43
  # Deprecated since version 7.0.0
44
44
  #
45
45
  #
46
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.12/search-template.html
46
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.x/search-template.html
47
47
  #
48
48
  def search_template(arguments = {})
49
49
  raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
@@ -0,0 +1,52 @@
1
+ # Licensed to Elasticsearch B.V. under one or more contributor
2
+ # license agreements. See the NOTICE file distributed with
3
+ # this work for additional information regarding copyright
4
+ # ownership. Elasticsearch B.V. licenses this file to you under
5
+ # the Apache License, Version 2.0 (the "License"); you may
6
+ # not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
17
+
18
+ module Elasticsearch
19
+ module API
20
+ module Shutdown
21
+ module Actions
22
+ # Removes a node from the shutdown list
23
+ # This functionality is Experimental and may be changed or removed
24
+ # completely in a future release. Elastic will take a best effort approach
25
+ # to fix any issues, but experimental features are not subject to the
26
+ # support SLA of official GA features.
27
+ #
28
+ # @option arguments [String] :node_id The node id of node to be removed from the shutdown state
29
+ # @option arguments [Hash] :headers Custom HTTP headers
30
+ #
31
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/current
32
+ #
33
+ def delete_node(arguments = {})
34
+ raise ArgumentError, "Required argument 'node_id' missing" unless arguments[:node_id]
35
+
36
+ headers = arguments.delete(:headers) || {}
37
+
38
+ arguments = arguments.clone
39
+
40
+ _node_id = arguments.delete(:node_id)
41
+
42
+ method = Elasticsearch::API::HTTP_DELETE
43
+ path = "_nodes/#{Utils.__listify(_node_id)}/shutdown"
44
+ params = {}
45
+
46
+ body = nil
47
+ perform_request(method, path, params, body, headers).body
48
+ end
49
+ end
50
+ end
51
+ end
52
+ end
@@ -0,0 +1,54 @@
1
+ # Licensed to Elasticsearch B.V. under one or more contributor
2
+ # license agreements. See the NOTICE file distributed with
3
+ # this work for additional information regarding copyright
4
+ # ownership. Elasticsearch B.V. licenses this file to you under
5
+ # the Apache License, Version 2.0 (the "License"); you may
6
+ # not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
17
+
18
+ module Elasticsearch
19
+ module API
20
+ module Shutdown
21
+ module Actions
22
+ # Retrieve status of a node or nodes that are currently marked as shutting down
23
+ # This functionality is Experimental and may be changed or removed
24
+ # completely in a future release. Elastic will take a best effort approach
25
+ # to fix any issues, but experimental features are not subject to the
26
+ # support SLA of official GA features.
27
+ #
28
+ # @option arguments [String] :node_id Which node for which to retrieve the shutdown status
29
+ # @option arguments [Hash] :headers Custom HTTP headers
30
+ #
31
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/current
32
+ #
33
+ def get_node(arguments = {})
34
+ headers = arguments.delete(:headers) || {}
35
+
36
+ arguments = arguments.clone
37
+
38
+ _node_id = arguments.delete(:node_id)
39
+
40
+ method = Elasticsearch::API::HTTP_GET
41
+ path = if _node_id
42
+ "_nodes/#{Utils.__listify(_node_id)}/shutdown"
43
+ else
44
+ "_nodes/shutdown"
45
+ end
46
+ params = {}
47
+
48
+ body = nil
49
+ perform_request(method, path, params, body, headers).body
50
+ end
51
+ end
52
+ end
53
+ end
54
+ end
@@ -0,0 +1,60 @@
1
+ # Licensed to Elasticsearch B.V. under one or more contributor
2
+ # license agreements. See the NOTICE file distributed with
3
+ # this work for additional information regarding copyright
4
+ # ownership. Elasticsearch B.V. licenses this file to you under
5
+ # the Apache License, Version 2.0 (the "License"); you may
6
+ # not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
17
+
18
+ module Elasticsearch
19
+ module API
20
+ module Shutdown
21
+ module Actions
22
+ module ParamsRegistry
23
+ extend self
24
+
25
+ # A Mapping of all the actions to their list of valid params.
26
+ #
27
+ # @since 6.1.1
28
+ PARAMS = {}
29
+
30
+ # Register an action with its list of valid params.
31
+ #
32
+ # @example Register the action.
33
+ # ParamsRegistry.register(:benchmark, [ :verbose ])
34
+ #
35
+ # @param [ Symbol ] action The action to register.
36
+ # @param [ Array[Symbol] ] valid_params The list of valid params.
37
+ #
38
+ # @since 6.1.1
39
+ def register(action, valid_params)
40
+ PARAMS[action.to_sym] = valid_params
41
+ end
42
+
43
+ # Get the list of valid params for a given action.
44
+ #
45
+ # @example Get the list of valid params.
46
+ # ParamsRegistry.get(:benchmark)
47
+ #
48
+ # @param [ Symbol ] action The action.
49
+ #
50
+ # @return [ Array<Symbol> ] The list of valid params for the action.
51
+ #
52
+ # @since 6.1.1
53
+ def get(action)
54
+ PARAMS.fetch(action, [])
55
+ end
56
+ end
57
+ end
58
+ end
59
+ end
60
+ end
@@ -0,0 +1,54 @@
1
+ # Licensed to Elasticsearch B.V. under one or more contributor
2
+ # license agreements. See the NOTICE file distributed with
3
+ # this work for additional information regarding copyright
4
+ # ownership. Elasticsearch B.V. licenses this file to you under
5
+ # the Apache License, Version 2.0 (the "License"); you may
6
+ # not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
17
+
18
+ module Elasticsearch
19
+ module API
20
+ module Shutdown
21
+ module Actions
22
+ # Adds a node to be shut down
23
+ # This functionality is Experimental and may be changed or removed
24
+ # completely in a future release. Elastic will take a best effort approach
25
+ # to fix any issues, but experimental features are not subject to the
26
+ # support SLA of official GA features.
27
+ #
28
+ # @option arguments [String] :node_id The node id of node to be shut down
29
+ # @option arguments [Hash] :headers Custom HTTP headers
30
+ # @option arguments [Hash] :body The shutdown type definition to register (*Required*)
31
+ #
32
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/current
33
+ #
34
+ def put_node(arguments = {})
35
+ raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
36
+ raise ArgumentError, "Required argument 'node_id' missing" unless arguments[:node_id]
37
+
38
+ headers = arguments.delete(:headers) || {}
39
+
40
+ arguments = arguments.clone
41
+
42
+ _node_id = arguments.delete(:node_id)
43
+
44
+ method = Elasticsearch::API::HTTP_PUT
45
+ path = "_nodes/#{Utils.__listify(_node_id)}/shutdown"
46
+ params = {}
47
+
48
+ body = arguments[:body]
49
+ perform_request(method, path, params, body, headers).body
50
+ end
51
+ end
52
+ end
53
+ end
54
+ end
@@ -26,7 +26,7 @@ module Elasticsearch
26
26
  # @option arguments [Time] :timeout Explicit operation timeout
27
27
  # @option arguments [Hash] :headers Custom HTTP headers
28
28
  #
29
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.12/clean-up-snapshot-repo-api.html
29
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.x/clean-up-snapshot-repo-api.html
30
30
  #
31
31
  def cleanup_repository(arguments = {})
32
32
  raise ArgumentError, "Required argument 'repository' missing" unless arguments[:repository]
@@ -28,7 +28,7 @@ module Elasticsearch
28
28
  # @option arguments [Hash] :headers Custom HTTP headers
29
29
  # @option arguments [Hash] :body The snapshot clone definition (*Required*)
30
30
  #
31
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.12/modules-snapshots.html
31
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.x/modules-snapshots.html
32
32
  #
33
33
  def clone(arguments = {})
34
34
  raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
@@ -28,7 +28,7 @@ module Elasticsearch
28
28
  # @option arguments [Hash] :headers Custom HTTP headers
29
29
  # @option arguments [Hash] :body The snapshot definition
30
30
  #
31
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.12/modules-snapshots.html
31
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.x/modules-snapshots.html
32
32
  #
33
33
  def create(arguments = {})
34
34
  raise ArgumentError, "Required argument 'repository' missing" unless arguments[:repository]
@@ -28,7 +28,7 @@ module Elasticsearch
28
28
  # @option arguments [Hash] :headers Custom HTTP headers
29
29
  # @option arguments [Hash] :body The repository definition (*Required*)
30
30
  #
31
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.12/modules-snapshots.html
31
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.x/modules-snapshots.html
32
32
  #
33
33
  def create_repository(arguments = {})
34
34
  raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
@@ -26,7 +26,7 @@ module Elasticsearch
26
26
  # @option arguments [Time] :master_timeout Explicit operation timeout for connection to master node
27
27
  # @option arguments [Hash] :headers Custom HTTP headers
28
28
  #
29
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.12/modules-snapshots.html
29
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.x/modules-snapshots.html
30
30
  #
31
31
  def delete(arguments = {})
32
32
  raise ArgumentError, "Required argument 'repository' missing" unless arguments[:repository]
@@ -26,7 +26,7 @@ module Elasticsearch
26
26
  # @option arguments [Time] :timeout Explicit operation timeout
27
27
  # @option arguments [Hash] :headers Custom HTTP headers
28
28
  #
29
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.12/modules-snapshots.html
29
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.x/modules-snapshots.html
30
30
  #
31
31
  def delete_repository(arguments = {})
32
32
  raise ArgumentError, "Required argument 'repository' missing" unless arguments[:repository]
@@ -25,10 +25,11 @@ module Elasticsearch
25
25
  # @option arguments [List] :snapshot A comma-separated list of snapshot names
26
26
  # @option arguments [Time] :master_timeout Explicit operation timeout for connection to master node
27
27
  # @option arguments [Boolean] :ignore_unavailable Whether to ignore unavailable snapshots, defaults to false which means a SnapshotMissingException is thrown
28
+ # @option arguments [Boolean] :index_details Whether to include details of each index in the snapshot, if those details are available. Defaults to false.
28
29
  # @option arguments [Boolean] :verbose Whether to show verbose snapshot info or only show the basic info found in the repository index blob
29
30
  # @option arguments [Hash] :headers Custom HTTP headers
30
31
  #
31
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.12/modules-snapshots.html
32
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.x/modules-snapshots.html
32
33
  #
33
34
  def get(arguments = {})
34
35
  raise ArgumentError, "Required argument 'repository' missing" unless arguments[:repository]
@@ -60,6 +61,7 @@ module Elasticsearch
60
61
  ParamsRegistry.register(:get, [
61
62
  :master_timeout,
62
63
  :ignore_unavailable,
64
+ :index_details,
63
65
  :verbose
64
66
  ].freeze)
65
67
  end
@@ -26,7 +26,7 @@ module Elasticsearch
26
26
  # @option arguments [Boolean] :local Return local information, do not retrieve the state from master node (default: false)
27
27
  # @option arguments [Hash] :headers Custom HTTP headers
28
28
  #
29
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.12/modules-snapshots.html
29
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.x/modules-snapshots.html
30
30
  #
31
31
  def get_repository(arguments = {})
32
32
  headers = arguments.delete(:headers) || {}
@@ -28,7 +28,7 @@ module Elasticsearch
28
28
  # @option arguments [Hash] :headers Custom HTTP headers
29
29
  # @option arguments [Hash] :body Details of what to restore
30
30
  #
31
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.12/modules-snapshots.html
31
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.x/modules-snapshots.html
32
32
  #
33
33
  def restore(arguments = {})
34
34
  raise ArgumentError, "Required argument 'repository' missing" unless arguments[:repository]
@@ -27,7 +27,7 @@ module Elasticsearch
27
27
  # @option arguments [Boolean] :ignore_unavailable Whether to ignore unavailable snapshots, defaults to false which means a SnapshotMissingException is thrown
28
28
  # @option arguments [Hash] :headers Custom HTTP headers
29
29
  #
30
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.12/modules-snapshots.html
30
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.x/modules-snapshots.html
31
31
  #
32
32
  def status(arguments = {})
33
33
  headers = arguments.delete(:headers) || {}
@@ -26,7 +26,7 @@ module Elasticsearch
26
26
  # @option arguments [Time] :timeout Explicit operation timeout
27
27
  # @option arguments [Hash] :headers Custom HTTP headers
28
28
  #
29
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.12/modules-snapshots.html
29
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.x/modules-snapshots.html
30
30
  #
31
31
  def verify_repository(arguments = {})
32
32
  raise ArgumentError, "Required argument 'repository' missing" unless arguments[:repository]
@@ -32,7 +32,7 @@ module Elasticsearch
32
32
  # @option arguments [Boolean] :wait_for_completion Should the request block until the cancellation of the task and its descendant tasks is completed. Defaults to false
33
33
  # @option arguments [Hash] :headers Custom HTTP headers
34
34
  #
35
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.12/tasks.html
35
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.x/tasks.html
36
36
  #
37
37
  def cancel(arguments = {})
38
38
  headers = arguments.delete(:headers) || {}
@@ -30,7 +30,7 @@ module Elasticsearch
30
30
  # @option arguments [Time] :timeout Explicit operation timeout
31
31
  # @option arguments [Hash] :headers Custom HTTP headers
32
32
  #
33
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.12/tasks.html
33
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.x/tasks.html
34
34
  #
35
35
  def get(arguments = {})
36
36
  headers = arguments.delete(:headers) || {}
@@ -34,7 +34,7 @@ module Elasticsearch
34
34
  # @option arguments [Time] :timeout Explicit operation timeout
35
35
  # @option arguments [Hash] :headers Custom HTTP headers
36
36
  #
37
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.12/tasks.html
37
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.x/tasks.html
38
38
  #
39
39
  def list(arguments = {})
40
40
  headers = arguments.delete(:headers) || {}