elasticsearch-api 7.8.1 → 7.10.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (182) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +18 -2
  3. data/lib/elasticsearch/api.rb +2 -1
  4. data/lib/elasticsearch/api/actions/bulk.rb +10 -9
  5. data/lib/elasticsearch/api/actions/cat/aliases.rb +4 -5
  6. data/lib/elasticsearch/api/actions/cat/allocation.rb +4 -5
  7. data/lib/elasticsearch/api/actions/cat/count.rb +3 -3
  8. data/lib/elasticsearch/api/actions/cat/fielddata.rb +4 -6
  9. data/lib/elasticsearch/api/actions/cat/health.rb +3 -4
  10. data/lib/elasticsearch/api/actions/cat/help.rb +2 -2
  11. data/lib/elasticsearch/api/actions/cat/indices.rb +7 -11
  12. data/lib/elasticsearch/api/actions/cat/master.rb +2 -2
  13. data/lib/elasticsearch/api/actions/cat/nodeattrs.rb +2 -2
  14. data/lib/elasticsearch/api/actions/cat/nodes.rb +5 -7
  15. data/lib/elasticsearch/api/actions/cat/pending_tasks.rb +3 -4
  16. data/lib/elasticsearch/api/actions/cat/plugins.rb +2 -2
  17. data/lib/elasticsearch/api/actions/cat/recovery.rb +5 -8
  18. data/lib/elasticsearch/api/actions/cat/repositories.rb +2 -2
  19. data/lib/elasticsearch/api/actions/cat/segments.rb +4 -5
  20. data/lib/elasticsearch/api/actions/cat/shards.rb +5 -7
  21. data/lib/elasticsearch/api/actions/cat/snapshots.rb +4 -5
  22. data/lib/elasticsearch/api/actions/cat/tasks.rb +3 -4
  23. data/lib/elasticsearch/api/actions/cat/templates.rb +3 -3
  24. data/lib/elasticsearch/api/actions/cat/thread_pool.rb +4 -5
  25. data/lib/elasticsearch/api/actions/clear_scroll.rb +4 -4
  26. data/lib/elasticsearch/api/actions/cluster/allocation_explain.rb +9 -4
  27. data/lib/elasticsearch/api/actions/cluster/delete_component_template.rb +2 -2
  28. data/lib/elasticsearch/api/actions/cluster/delete_voting_config_exclusions.rb +2 -2
  29. data/lib/elasticsearch/api/actions/cluster/exists_component_template.rb +2 -2
  30. data/lib/elasticsearch/api/actions/cluster/get_component_template.rb +3 -3
  31. data/lib/elasticsearch/api/actions/cluster/get_settings.rb +2 -2
  32. data/lib/elasticsearch/api/actions/cluster/health.rb +7 -11
  33. data/lib/elasticsearch/api/actions/cluster/pending_tasks.rb +2 -2
  34. data/lib/elasticsearch/api/actions/cluster/post_voting_config_exclusions.rb +2 -2
  35. data/lib/elasticsearch/api/actions/cluster/put_component_template.rb +2 -2
  36. data/lib/elasticsearch/api/actions/cluster/put_settings.rb +2 -2
  37. data/lib/elasticsearch/api/actions/cluster/remote_info.rb +2 -2
  38. data/lib/elasticsearch/api/actions/cluster/reroute.rb +3 -4
  39. data/lib/elasticsearch/api/actions/cluster/state.rb +5 -7
  40. data/lib/elasticsearch/api/actions/cluster/stats.rb +3 -3
  41. data/lib/elasticsearch/api/actions/count.rb +11 -18
  42. data/lib/elasticsearch/api/actions/create.rb +5 -7
  43. data/lib/elasticsearch/api/actions/dangling_indices/delete_dangling_index.rb +60 -0
  44. data/lib/elasticsearch/api/actions/dangling_indices/import_dangling_index.rb +60 -0
  45. data/lib/elasticsearch/api/actions/{indices/get_data_streams.rb → dangling_indices/list_dangling_indices.rb} +6 -17
  46. data/lib/elasticsearch/api/actions/dangling_indices/params_registry.rb +60 -0
  47. data/lib/elasticsearch/api/actions/delete.rb +6 -8
  48. data/lib/elasticsearch/api/actions/delete_by_query.rb +8 -12
  49. data/lib/elasticsearch/api/actions/delete_by_query_rethrottle.rb +3 -3
  50. data/lib/elasticsearch/api/actions/delete_script.rb +2 -2
  51. data/lib/elasticsearch/api/actions/exists.rb +5 -6
  52. data/lib/elasticsearch/api/actions/exists_source.rb +5 -6
  53. data/lib/elasticsearch/api/actions/explain.rb +14 -10
  54. data/lib/elasticsearch/api/actions/field_caps.rb +15 -10
  55. data/lib/elasticsearch/api/actions/get.rb +5 -6
  56. data/lib/elasticsearch/api/actions/get_script.rb +2 -2
  57. data/lib/elasticsearch/api/actions/get_script_context.rb +2 -2
  58. data/lib/elasticsearch/api/actions/get_script_languages.rb +2 -2
  59. data/lib/elasticsearch/api/actions/get_source.rb +5 -6
  60. data/lib/elasticsearch/api/actions/index.rb +10 -11
  61. data/lib/elasticsearch/api/actions/indices/add_block.rb +68 -0
  62. data/lib/elasticsearch/api/actions/indices/analyze.rb +12 -8
  63. data/lib/elasticsearch/api/actions/indices/clear_cache.rb +4 -6
  64. data/lib/elasticsearch/api/actions/indices/clone.rb +2 -2
  65. data/lib/elasticsearch/api/actions/indices/close.rb +3 -4
  66. data/lib/elasticsearch/api/actions/indices/create.rb +2 -2
  67. data/lib/elasticsearch/api/actions/indices/delete.rb +3 -4
  68. data/lib/elasticsearch/api/actions/indices/delete_alias.rb +3 -3
  69. data/lib/elasticsearch/api/actions/indices/delete_index_template.rb +2 -2
  70. data/lib/elasticsearch/api/actions/indices/delete_template.rb +2 -2
  71. data/lib/elasticsearch/api/actions/indices/exists.rb +3 -4
  72. data/lib/elasticsearch/api/actions/indices/exists_alias.rb +4 -5
  73. data/lib/elasticsearch/api/actions/indices/exists_index_template.rb +2 -2
  74. data/lib/elasticsearch/api/actions/indices/exists_template.rb +2 -2
  75. data/lib/elasticsearch/api/actions/indices/exists_type.rb +3 -4
  76. data/lib/elasticsearch/api/actions/indices/flush.rb +4 -5
  77. data/lib/elasticsearch/api/actions/indices/flush_synced.rb +9 -5
  78. data/lib/elasticsearch/api/actions/indices/forcemerge.rb +4 -5
  79. data/lib/elasticsearch/api/actions/indices/get.rb +3 -4
  80. data/lib/elasticsearch/api/actions/indices/get_alias.rb +4 -5
  81. data/lib/elasticsearch/api/actions/indices/get_field_mapping.rb +5 -6
  82. data/lib/elasticsearch/api/actions/indices/get_index_template.rb +3 -3
  83. data/lib/elasticsearch/api/actions/indices/get_mapping.rb +6 -7
  84. data/lib/elasticsearch/api/actions/indices/get_settings.rb +4 -5
  85. data/lib/elasticsearch/api/actions/indices/get_template.rb +3 -3
  86. data/lib/elasticsearch/api/actions/indices/get_upgrade.rb +4 -5
  87. data/lib/elasticsearch/api/actions/indices/open.rb +3 -4
  88. data/lib/elasticsearch/api/actions/indices/put_alias.rb +3 -3
  89. data/lib/elasticsearch/api/actions/indices/put_index_template.rb +2 -2
  90. data/lib/elasticsearch/api/actions/indices/put_mapping.rb +8 -7
  91. data/lib/elasticsearch/api/actions/indices/put_settings.rb +4 -5
  92. data/lib/elasticsearch/api/actions/indices/put_template.rb +2 -2
  93. data/lib/elasticsearch/api/actions/indices/recovery.rb +3 -3
  94. data/lib/elasticsearch/api/actions/indices/refresh.rb +4 -5
  95. data/lib/elasticsearch/api/actions/indices/{delete_data_stream.rb → resolve_index.rb} +16 -8
  96. data/lib/elasticsearch/api/actions/indices/rollover.rb +3 -3
  97. data/lib/elasticsearch/api/actions/indices/segments.rb +4 -5
  98. data/lib/elasticsearch/api/actions/indices/shard_stores.rb +5 -7
  99. data/lib/elasticsearch/api/actions/indices/shrink.rb +2 -2
  100. data/lib/elasticsearch/api/actions/indices/simulate_index_template.rb +2 -2
  101. data/lib/elasticsearch/api/actions/indices/{create_data_stream.rb → simulate_template.rb} +25 -12
  102. data/lib/elasticsearch/api/actions/indices/split.rb +2 -2
  103. data/lib/elasticsearch/api/actions/indices/stats.rb +5 -8
  104. data/lib/elasticsearch/api/actions/indices/update_aliases.rb +2 -2
  105. data/lib/elasticsearch/api/actions/indices/upgrade.rb +4 -5
  106. data/lib/elasticsearch/api/actions/indices/validate_query.rb +17 -14
  107. data/lib/elasticsearch/api/actions/info.rb +2 -2
  108. data/lib/elasticsearch/api/actions/ingest/delete_pipeline.rb +2 -2
  109. data/lib/elasticsearch/api/actions/ingest/get_pipeline.rb +3 -3
  110. data/lib/elasticsearch/api/actions/ingest/processor_grok.rb +2 -2
  111. data/lib/elasticsearch/api/actions/ingest/put_pipeline.rb +2 -2
  112. data/lib/elasticsearch/api/actions/ingest/simulate.rb +4 -4
  113. data/lib/elasticsearch/api/actions/mget.rb +5 -5
  114. data/lib/elasticsearch/api/actions/msearch.rb +8 -11
  115. data/lib/elasticsearch/api/actions/msearch_template.rb +6 -7
  116. data/lib/elasticsearch/api/actions/mtermvectors.rb +16 -12
  117. data/lib/elasticsearch/api/actions/nodes/hot_threads.rb +4 -5
  118. data/lib/elasticsearch/api/actions/nodes/info.rb +4 -5
  119. data/lib/elasticsearch/api/actions/nodes/reload_secure_settings.rb +3 -3
  120. data/lib/elasticsearch/api/actions/nodes/stats.rb +6 -9
  121. data/lib/elasticsearch/api/actions/nodes/usage.rb +4 -5
  122. data/lib/elasticsearch/api/actions/ping.rb +2 -2
  123. data/lib/elasticsearch/api/actions/put_script.rb +3 -4
  124. data/lib/elasticsearch/api/actions/rank_eval.rb +6 -8
  125. data/lib/elasticsearch/api/actions/reindex.rb +2 -2
  126. data/lib/elasticsearch/api/actions/reindex_rethrottle.rb +3 -3
  127. data/lib/elasticsearch/api/actions/render_search_template.rb +12 -7
  128. data/lib/elasticsearch/api/actions/scripts_painless_execute.rb +9 -4
  129. data/lib/elasticsearch/api/actions/scroll.rb +13 -9
  130. data/lib/elasticsearch/api/actions/search.rb +18 -17
  131. data/lib/elasticsearch/api/actions/search_shards.rb +4 -5
  132. data/lib/elasticsearch/api/actions/search_template.rb +6 -8
  133. data/lib/elasticsearch/api/actions/snapshot/cleanup_repository.rb +2 -2
  134. data/lib/elasticsearch/api/actions/snapshot/clone.rb +66 -0
  135. data/lib/elasticsearch/api/actions/snapshot/create.rb +2 -2
  136. data/lib/elasticsearch/api/actions/snapshot/create_repository.rb +2 -2
  137. data/lib/elasticsearch/api/actions/snapshot/delete.rb +2 -2
  138. data/lib/elasticsearch/api/actions/snapshot/delete_repository.rb +2 -2
  139. data/lib/elasticsearch/api/actions/snapshot/get.rb +2 -2
  140. data/lib/elasticsearch/api/actions/snapshot/get_repository.rb +3 -3
  141. data/lib/elasticsearch/api/actions/snapshot/restore.rb +2 -2
  142. data/lib/elasticsearch/api/actions/snapshot/status.rb +3 -3
  143. data/lib/elasticsearch/api/actions/snapshot/verify_repository.rb +2 -2
  144. data/lib/elasticsearch/api/actions/tasks/cancel.rb +7 -3
  145. data/lib/elasticsearch/api/actions/tasks/get.rb +6 -2
  146. data/lib/elasticsearch/api/actions/tasks/list.rb +7 -4
  147. data/lib/elasticsearch/api/actions/termvectors.rb +10 -7
  148. data/lib/elasticsearch/api/actions/update.rb +8 -7
  149. data/lib/elasticsearch/api/actions/update_by_query.rb +8 -12
  150. data/lib/elasticsearch/api/actions/update_by_query_rethrottle.rb +3 -3
  151. data/lib/elasticsearch/api/namespace/cat.rb +0 -1
  152. data/lib/elasticsearch/api/namespace/dangling_indices.rb +35 -0
  153. data/lib/elasticsearch/api/version.rb +1 -1
  154. data/spec/elasticsearch/api/actions/count_spec.rb +2 -2
  155. data/spec/elasticsearch/api/actions/dangling_indices/delete_dangling_indices_spec.rb +48 -0
  156. data/spec/elasticsearch/api/actions/dangling_indices/import_dangling_indices_spec.rb +48 -0
  157. data/spec/elasticsearch/api/actions/dangling_indices/list_dangling_indices_spec.rb +36 -0
  158. data/spec/elasticsearch/api/actions/explain_document_spec.rb +8 -9
  159. data/spec/elasticsearch/api/actions/indices/add_block_spec.rb +63 -0
  160. data/spec/elasticsearch/api/actions/indices/analyze_spec.rb +7 -8
  161. data/spec/elasticsearch/api/actions/indices/validate_query_spec.rb +7 -13
  162. data/spec/elasticsearch/api/actions/ingest/simulate_spec.rb +6 -7
  163. data/spec/elasticsearch/api/actions/json_builders_spec.rb +10 -13
  164. data/spec/elasticsearch/api/actions/mget_spec.rb +5 -6
  165. data/spec/elasticsearch/api/actions/msearch_spec.rb +21 -39
  166. data/spec/elasticsearch/api/actions/msearch_template_spec.rb +5 -6
  167. data/spec/elasticsearch/api/actions/mtermvectors_spec.rb +7 -7
  168. data/spec/elasticsearch/api/actions/render_search_template_spec.rb +2 -2
  169. data/spec/elasticsearch/api/actions/scroll_spec.rb +1 -1
  170. data/spec/elasticsearch/api/actions/search_spec.rb +7 -7
  171. data/spec/elasticsearch/api/actions/search_template_spec.rb +5 -6
  172. data/spec/elasticsearch/api/actions/snapshot/clone_spec.rb +67 -0
  173. data/spec/elasticsearch/api/actions/termvectors_spec.rb +5 -7
  174. data/spec/elasticsearch/api/rest_api_yaml_spec.rb +11 -7
  175. data/utils/thor/.rubocop.yml +2 -0
  176. data/utils/thor/generate_source.rb +28 -19
  177. data/utils/thor/generator/endpoint_specifics.rb +10 -3
  178. data/utils/thor/templates/_documentation_top.erb +12 -2
  179. metadata +23 -12
  180. data/spec/README.md +0 -61
  181. data/test/integration/yaml_test_runner.rb +0 -592
  182. data/test/test_helper.rb +0 -118
@@ -25,8 +25,7 @@ module Elasticsearch
25
25
  # @option arguments [String] :analyzer The analyzer to use for the query string
26
26
  # @option arguments [Boolean] :analyze_wildcard Specify whether wildcard and prefix queries should be analyzed (default: false)
27
27
  # @option arguments [Boolean] :ccs_minimize_roundtrips Indicates whether network round-trips should be minimized as part of cross-cluster search requests execution
28
- # @option arguments [String] :default_operator The default operator for query string query (AND or OR)
29
- # (options: AND,OR)
28
+ # @option arguments [String] :default_operator The default operator for query string query (AND or OR) (options: AND, OR)
30
29
  # @option arguments [String] :df The field to use as default where no field prefix is given in the query string
31
30
  # @option arguments [Boolean] :explain Specify whether to return detailed information about score computation as part of a hit
32
31
  # @option arguments [List] :stored_fields A comma-separated list of stored fields to return as part of a hit
@@ -35,15 +34,13 @@ module Elasticsearch
35
34
  # @option arguments [Boolean] :ignore_unavailable Whether specified concrete indices should be ignored when unavailable (missing or closed)
36
35
  # @option arguments [Boolean] :ignore_throttled Whether specified concrete, expanded or aliased indices should be ignored when throttled
37
36
  # @option arguments [Boolean] :allow_no_indices Whether to ignore if a wildcard indices expression resolves into no concrete indices. (This includes `_all` string or when no indices have been specified)
38
- # @option arguments [String] :expand_wildcards Whether to expand wildcard expression to concrete indices that are open, closed or both.
39
- # (options: open,closed,hidden,none,all)
37
+ # @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)
40
38
  # @option arguments [Boolean] :lenient Specify whether format-based query failures (such as providing text to a numeric field) should be ignored
41
39
  # @option arguments [String] :preference Specify the node or shard the operation should be performed on (default: random)
42
40
  # @option arguments [String] :q Query in the Lucene query string syntax
43
41
  # @option arguments [List] :routing A comma-separated list of specific routing values
44
42
  # @option arguments [Time] :scroll Specify how long a consistent view of the index should be maintained for scrolled search
45
- # @option arguments [String] :search_type Search operation type
46
- # (options: query_then_fetch,dfs_query_then_fetch)
43
+ # @option arguments [String] :search_type Search operation type (options: query_then_fetch, dfs_query_then_fetch)
47
44
  # @option arguments [Number] :size Number of hits to return (default: 10)
48
45
  # @option arguments [List] :sort A comma-separated list of <field>:<direction> pairs
49
46
  # @option arguments [List] :_source True or false to return the _source field or not, or a list of fields to return
@@ -52,8 +49,7 @@ module Elasticsearch
52
49
  # @option arguments [Number] :terminate_after The maximum number of documents to collect for each shard, upon reaching which the query execution will terminate early.
53
50
  # @option arguments [List] :stats Specific 'tag' of the request for logging and statistical purposes
54
51
  # @option arguments [String] :suggest_field Specify which field to use for suggestions
55
- # @option arguments [String] :suggest_mode Specify suggest mode
56
- # (options: missing,popular,always)
52
+ # @option arguments [String] :suggest_mode Specify suggest mode (options: missing, popular, always)
57
53
  # @option arguments [Number] :suggest_size How many suggestions to return in response
58
54
  # @option arguments [String] :suggest_text The source text for which the suggestions should be returned
59
55
  # @option arguments [Time] :timeout Explicit operation timeout
@@ -76,7 +72,7 @@ module Elasticsearch
76
72
  # Deprecated since version 7.0.0
77
73
  #
78
74
  #
79
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.8/search-search.html
75
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.10/search-search.html
80
76
  #
81
77
  def search(arguments = {})
82
78
  headers = arguments.delete(:headers) || {}
@@ -88,14 +84,19 @@ module Elasticsearch
88
84
 
89
85
  _type = arguments.delete(:type)
90
86
 
91
- method = Elasticsearch::API::HTTP_GET
92
- path = if _index && _type
93
- "#{Utils.__listify(_index)}/#{Utils.__listify(_type)}/_search"
94
- elsif _index
95
- "#{Utils.__listify(_index)}/_search"
87
+ method = if arguments[:body]
88
+ Elasticsearch::API::HTTP_POST
96
89
  else
97
- "_search"
98
- end
90
+ Elasticsearch::API::HTTP_GET
91
+ end
92
+
93
+ path = if _index && _type
94
+ "#{Utils.__listify(_index)}/#{Utils.__listify(_type)}/_search"
95
+ elsif _index
96
+ "#{Utils.__listify(_index)}/_search"
97
+ else
98
+ "_search"
99
+ end
99
100
  params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__)
100
101
 
101
102
  body = arguments[:body]
@@ -150,5 +151,5 @@ module Elasticsearch
150
151
  :rest_total_hits_as_int
151
152
  ].freeze)
152
153
  end
153
- end
154
+ end
154
155
  end
@@ -26,11 +26,10 @@ 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 [Boolean] :ignore_unavailable Whether specified concrete indices should be ignored when unavailable (missing or closed)
28
28
  # @option arguments [Boolean] :allow_no_indices Whether to ignore if a wildcard indices expression resolves into no concrete indices. (This includes `_all` string or when no indices have been specified)
29
- # @option arguments [String] :expand_wildcards Whether to expand wildcard expression to concrete indices that are open, closed or both.
30
- # (options: open,closed,hidden,none,all)
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)
31
30
  # @option arguments [Hash] :headers Custom HTTP headers
32
31
  #
33
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.8/search-shards.html
32
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.10/search-shards.html
34
33
  #
35
34
  def search_shards(arguments = {})
36
35
  headers = arguments.delete(:headers) || {}
@@ -44,7 +43,7 @@ module Elasticsearch
44
43
  "#{Utils.__listify(_index)}/_search_shards"
45
44
  else
46
45
  "_search_shards"
47
- end
46
+ end
48
47
  params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__)
49
48
 
50
49
  body = nil
@@ -63,5 +62,5 @@ module Elasticsearch
63
62
  :expand_wildcards
64
63
  ].freeze)
65
64
  end
66
- end
65
+ end
67
66
  end
@@ -25,13 +25,11 @@ module Elasticsearch
25
25
  # @option arguments [Boolean] :ignore_unavailable Whether specified concrete indices should be ignored when unavailable (missing or closed)
26
26
  # @option arguments [Boolean] :ignore_throttled Whether specified concrete, expanded or aliased indices should be ignored when throttled
27
27
  # @option arguments [Boolean] :allow_no_indices Whether to ignore if a wildcard indices expression resolves into no concrete indices. (This includes `_all` string or when no indices have been specified)
28
- # @option arguments [String] :expand_wildcards Whether to expand wildcard expression to concrete indices that are open, closed or both.
29
- # (options: open,closed,hidden,none,all)
28
+ # @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
29
  # @option arguments [String] :preference Specify the node or shard the operation should be performed on (default: random)
31
30
  # @option arguments [List] :routing A comma-separated list of specific routing values
32
31
  # @option arguments [Time] :scroll Specify how long a consistent view of the index should be maintained for scrolled search
33
- # @option arguments [String] :search_type Search operation type
34
- # (options: query_then_fetch,query_and_fetch,dfs_query_then_fetch,dfs_query_and_fetch)
32
+ # @option arguments [String] :search_type Search operation type (options: query_then_fetch, query_and_fetch, dfs_query_then_fetch, dfs_query_and_fetch)
35
33
  # @option arguments [Boolean] :explain Specify whether to return detailed information about score computation as part of a hit
36
34
  # @option arguments [Boolean] :profile Specify whether to profile the query execution
37
35
  # @option arguments [Boolean] :typed_keys Specify whether aggregation and suggester names should be prefixed by their respective types in the response
@@ -45,7 +43,7 @@ module Elasticsearch
45
43
  # Deprecated since version 7.0.0
46
44
  #
47
45
  #
48
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.8/search-template.html
46
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.10/search-template.html
49
47
  #
50
48
  def search_template(arguments = {})
51
49
  raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
@@ -58,14 +56,14 @@ module Elasticsearch
58
56
 
59
57
  _type = arguments.delete(:type)
60
58
 
61
- method = Elasticsearch::API::HTTP_GET
59
+ method = Elasticsearch::API::HTTP_POST
62
60
  path = if _index && _type
63
61
  "#{Utils.__listify(_index)}/#{Utils.__listify(_type)}/_search/template"
64
62
  elsif _index
65
63
  "#{Utils.__listify(_index)}/_search/template"
66
64
  else
67
65
  "_search/template"
68
- end
66
+ end
69
67
  params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__)
70
68
 
71
69
  body = arguments[:body]
@@ -91,5 +89,5 @@ module Elasticsearch
91
89
  :ccs_minimize_roundtrips
92
90
  ].freeze)
93
91
  end
94
- end
92
+ end
95
93
  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.8/clean-up-snapshot-repo-api.html
29
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.10/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]
@@ -52,7 +52,7 @@ module Elasticsearch
52
52
  :master_timeout,
53
53
  :timeout
54
54
  ].freeze)
55
- end
56
55
  end
56
+ end
57
57
  end
58
58
  end
@@ -0,0 +1,66 @@
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 Snapshot
21
+ module Actions
22
+ # Clones indices from one snapshot into another snapshot in the same repository.
23
+ #
24
+ # @option arguments [String] :repository A repository name
25
+ # @option arguments [String] :snapshot The name of the snapshot to clone from
26
+ # @option arguments [String] :target_snapshot The name of the cloned snapshot to create
27
+ # @option arguments [Time] :master_timeout Explicit operation timeout for connection to master node
28
+ # @option arguments [Hash] :headers Custom HTTP headers
29
+ # @option arguments [Hash] :body The snapshot clone definition (*Required*)
30
+ #
31
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.10/modules-snapshots.html
32
+ #
33
+ def clone(arguments = {})
34
+ raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
35
+ raise ArgumentError, "Required argument 'repository' missing" unless arguments[:repository]
36
+ raise ArgumentError, "Required argument 'snapshot' missing" unless arguments[:snapshot]
37
+ raise ArgumentError, "Required argument 'target_snapshot' missing" unless arguments[:target_snapshot]
38
+
39
+ headers = arguments.delete(:headers) || {}
40
+
41
+ arguments = arguments.clone
42
+
43
+ _repository = arguments.delete(:repository)
44
+
45
+ _snapshot = arguments.delete(:snapshot)
46
+
47
+ _target_snapshot = arguments.delete(:target_snapshot)
48
+
49
+ method = Elasticsearch::API::HTTP_PUT
50
+ path = "_snapshot/#{Utils.__listify(_repository)}/#{Utils.__listify(_snapshot)}/_clone/#{Utils.__listify(_target_snapshot)}"
51
+ params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__)
52
+
53
+ body = arguments[:body]
54
+ perform_request(method, path, params, body, headers).body
55
+ end
56
+
57
+ # Register this action with its valid params when the module is loaded.
58
+ #
59
+ # @since 6.2.0
60
+ ParamsRegistry.register(:clone, [
61
+ :master_timeout
62
+ ].freeze)
63
+ end
64
+ end
65
+ end
66
+ end
@@ -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.8/modules-snapshots.html
31
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.10/modules-snapshots.html
32
32
  #
33
33
  def create(arguments = {})
34
34
  raise ArgumentError, "Required argument 'repository' missing" unless arguments[:repository]
@@ -57,7 +57,7 @@ module Elasticsearch
57
57
  :master_timeout,
58
58
  :wait_for_completion
59
59
  ].freeze)
60
- end
61
60
  end
61
+ end
62
62
  end
63
63
  end
@@ -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.8/modules-snapshots.html
31
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.10/modules-snapshots.html
32
32
  #
33
33
  def create_repository(arguments = {})
34
34
  raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
@@ -56,7 +56,7 @@ module Elasticsearch
56
56
  :timeout,
57
57
  :verify
58
58
  ].freeze)
59
- end
60
59
  end
60
+ end
61
61
  end
62
62
  end
@@ -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.8/modules-snapshots.html
29
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.10/modules-snapshots.html
30
30
  #
31
31
  def delete(arguments = {})
32
32
  raise ArgumentError, "Required argument 'repository' missing" unless arguments[:repository]
@@ -58,7 +58,7 @@ module Elasticsearch
58
58
  ParamsRegistry.register(:delete, [
59
59
  :master_timeout
60
60
  ].freeze)
61
- end
62
61
  end
62
+ end
63
63
  end
64
64
  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.8/modules-snapshots.html
29
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.10/modules-snapshots.html
30
30
  #
31
31
  def delete_repository(arguments = {})
32
32
  raise ArgumentError, "Required argument 'repository' missing" unless arguments[:repository]
@@ -56,7 +56,7 @@ module Elasticsearch
56
56
  :master_timeout,
57
57
  :timeout
58
58
  ].freeze)
59
- end
60
59
  end
60
+ end
61
61
  end
62
62
  end
@@ -28,7 +28,7 @@ module Elasticsearch
28
28
  # @option arguments [Boolean] :verbose Whether to show verbose snapshot info or only show the basic info found in the repository index blob
29
29
  # @option arguments [Hash] :headers Custom HTTP headers
30
30
  #
31
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.8/modules-snapshots.html
31
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.10/modules-snapshots.html
32
32
  #
33
33
  def get(arguments = {})
34
34
  raise ArgumentError, "Required argument 'repository' missing" unless arguments[:repository]
@@ -62,7 +62,7 @@ module Elasticsearch
62
62
  :ignore_unavailable,
63
63
  :verbose
64
64
  ].freeze)
65
- end
66
65
  end
66
+ end
67
67
  end
68
68
  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.8/modules-snapshots.html
29
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.10/modules-snapshots.html
30
30
  #
31
31
  def get_repository(arguments = {})
32
32
  headers = arguments.delete(:headers) || {}
@@ -40,7 +40,7 @@ module Elasticsearch
40
40
  "_snapshot/#{Utils.__listify(_repository)}"
41
41
  else
42
42
  "_snapshot"
43
- end
43
+ end
44
44
  params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__)
45
45
 
46
46
  body = nil
@@ -58,7 +58,7 @@ module Elasticsearch
58
58
  :master_timeout,
59
59
  :local
60
60
  ].freeze)
61
- end
62
61
  end
62
+ end
63
63
  end
64
64
  end
@@ -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.8/modules-snapshots.html
31
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.10/modules-snapshots.html
32
32
  #
33
33
  def restore(arguments = {})
34
34
  raise ArgumentError, "Required argument 'repository' missing" unless arguments[:repository]
@@ -57,7 +57,7 @@ module Elasticsearch
57
57
  :master_timeout,
58
58
  :wait_for_completion
59
59
  ].freeze)
60
- end
61
60
  end
61
+ end
62
62
  end
63
63
  end
@@ -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.8/modules-snapshots.html
30
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.10/modules-snapshots.html
31
31
  #
32
32
  def status(arguments = {})
33
33
  headers = arguments.delete(:headers) || {}
@@ -45,7 +45,7 @@ module Elasticsearch
45
45
  "_snapshot/#{Utils.__listify(_repository)}/_status"
46
46
  else
47
47
  "_snapshot/_status"
48
- end
48
+ end
49
49
  params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__)
50
50
 
51
51
  body = nil
@@ -63,7 +63,7 @@ module Elasticsearch
63
63
  :master_timeout,
64
64
  :ignore_unavailable
65
65
  ].freeze)
66
- end
67
66
  end
67
+ end
68
68
  end
69
69
  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.8/modules-snapshots.html
29
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.10/modules-snapshots.html
30
30
  #
31
31
  def verify_repository(arguments = {})
32
32
  raise ArgumentError, "Required argument 'repository' missing" unless arguments[:repository]
@@ -52,7 +52,7 @@ module Elasticsearch
52
52
  :master_timeout,
53
53
  :timeout
54
54
  ].freeze)
55
- end
56
55
  end
56
+ end
57
57
  end
58
58
  end
@@ -20,6 +20,10 @@ module Elasticsearch
20
20
  module Tasks
21
21
  module Actions
22
22
  # Cancels a task, if it can be cancelled through an API.
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.
23
27
  #
24
28
  # @option arguments [String] :task_id Cancel the task with specified task id (node_id:task_number)
25
29
  # @option arguments [List] :nodes A comma-separated list of node IDs or names to limit the returned information; use `_local` to return information from the node you're connecting to, leave empty to get information from all nodes
@@ -28,7 +32,7 @@ module Elasticsearch
28
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
29
33
  # @option arguments [Hash] :headers Custom HTTP headers
30
34
  #
31
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.8/tasks.html
35
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.10/tasks.html
32
36
  #
33
37
  def cancel(arguments = {})
34
38
  headers = arguments.delete(:headers) || {}
@@ -42,7 +46,7 @@ module Elasticsearch
42
46
  "_tasks/#{Utils.__listify(_task_id)}/_cancel"
43
47
  else
44
48
  "_tasks/_cancel"
45
- end
49
+ end
46
50
  params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__)
47
51
 
48
52
  body = nil
@@ -58,7 +62,7 @@ module Elasticsearch
58
62
  :parent_task_id,
59
63
  :wait_for_completion
60
64
  ].freeze)
61
- end
62
65
  end
66
+ end
63
67
  end
64
68
  end