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.
- checksums.yaml +4 -4
- data/README.md +6 -8
- data/Rakefile +46 -62
- data/lib/elasticsearch/api.rb +2 -1
- data/lib/elasticsearch/api/actions/bulk.rb +1 -1
- data/lib/elasticsearch/api/actions/cat/aliases.rb +1 -1
- data/lib/elasticsearch/api/actions/cat/allocation.rb +1 -1
- data/lib/elasticsearch/api/actions/cat/count.rb +1 -1
- data/lib/elasticsearch/api/actions/cat/fielddata.rb +1 -1
- data/lib/elasticsearch/api/actions/cat/health.rb +1 -1
- data/lib/elasticsearch/api/actions/cat/help.rb +1 -1
- data/lib/elasticsearch/api/actions/cat/indices.rb +1 -1
- data/lib/elasticsearch/api/actions/cat/master.rb +1 -1
- data/lib/elasticsearch/api/actions/cat/nodeattrs.rb +1 -1
- data/lib/elasticsearch/api/actions/cat/nodes.rb +4 -2
- data/lib/elasticsearch/api/actions/cat/pending_tasks.rb +1 -1
- data/lib/elasticsearch/api/actions/cat/plugins.rb +1 -1
- data/lib/elasticsearch/api/actions/cat/recovery.rb +1 -1
- data/lib/elasticsearch/api/actions/cat/repositories.rb +1 -1
- data/lib/elasticsearch/api/actions/cat/segments.rb +1 -1
- data/lib/elasticsearch/api/actions/cat/shards.rb +1 -1
- data/lib/elasticsearch/api/actions/cat/snapshots.rb +1 -1
- data/lib/elasticsearch/api/actions/cat/tasks.rb +1 -1
- data/lib/elasticsearch/api/actions/cat/templates.rb +1 -1
- data/lib/elasticsearch/api/actions/cat/thread_pool.rb +1 -1
- data/lib/elasticsearch/api/actions/clear_scroll.rb +1 -1
- data/lib/elasticsearch/api/actions/close_point_in_time.rb +42 -0
- data/lib/elasticsearch/api/actions/cluster/allocation_explain.rb +1 -1
- data/lib/elasticsearch/api/actions/cluster/delete_component_template.rb +1 -1
- data/lib/elasticsearch/api/actions/cluster/delete_voting_config_exclusions.rb +1 -1
- data/lib/elasticsearch/api/actions/cluster/exists_component_template.rb +1 -1
- data/lib/elasticsearch/api/actions/cluster/get_component_template.rb +1 -1
- data/lib/elasticsearch/api/actions/cluster/get_settings.rb +1 -1
- data/lib/elasticsearch/api/actions/cluster/health.rb +1 -1
- data/lib/elasticsearch/api/actions/cluster/pending_tasks.rb +1 -1
- data/lib/elasticsearch/api/actions/cluster/post_voting_config_exclusions.rb +1 -1
- data/lib/elasticsearch/api/actions/cluster/put_component_template.rb +1 -1
- data/lib/elasticsearch/api/actions/cluster/put_settings.rb +1 -1
- data/lib/elasticsearch/api/actions/cluster/remote_info.rb +1 -1
- data/lib/elasticsearch/api/actions/cluster/reroute.rb +1 -1
- data/lib/elasticsearch/api/actions/cluster/state.rb +1 -1
- data/lib/elasticsearch/api/actions/cluster/stats.rb +1 -1
- data/lib/elasticsearch/api/actions/count.rb +1 -1
- data/lib/elasticsearch/api/actions/create.rb +1 -1
- data/lib/elasticsearch/api/actions/dangling_indices/delete_dangling_index.rb +1 -1
- data/lib/elasticsearch/api/actions/dangling_indices/import_dangling_index.rb +1 -1
- data/lib/elasticsearch/api/actions/dangling_indices/list_dangling_indices.rb +1 -1
- data/lib/elasticsearch/api/actions/delete.rb +1 -1
- data/lib/elasticsearch/api/actions/delete_by_query.rb +1 -1
- data/lib/elasticsearch/api/actions/delete_by_query_rethrottle.rb +1 -1
- data/lib/elasticsearch/api/actions/delete_script.rb +1 -1
- data/lib/elasticsearch/api/actions/exists.rb +1 -1
- data/lib/elasticsearch/api/actions/exists_source.rb +1 -1
- data/lib/elasticsearch/api/actions/explain.rb +1 -1
- data/lib/elasticsearch/api/actions/features/get_features.rb +2 -2
- data/lib/elasticsearch/api/actions/features/reset_features.rb +47 -0
- data/lib/elasticsearch/api/actions/field_caps.rb +1 -1
- data/lib/elasticsearch/api/actions/get.rb +1 -1
- data/lib/elasticsearch/api/actions/get_script.rb +1 -1
- data/lib/elasticsearch/api/actions/get_script_context.rb +1 -1
- data/lib/elasticsearch/api/actions/get_script_languages.rb +1 -1
- data/lib/elasticsearch/api/actions/get_source.rb +1 -1
- data/lib/elasticsearch/api/actions/index.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/add_block.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/analyze.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/clear_cache.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/clone.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/close.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/create.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/delete.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/delete_alias.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/delete_index_template.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/delete_template.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/exists.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/exists_alias.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/exists_index_template.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/exists_template.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/exists_type.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/flush.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/flush_synced.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/forcemerge.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/freeze.rb +29 -19
- data/lib/elasticsearch/api/actions/indices/get.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/get_alias.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/get_field_mapping.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/get_index_template.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/get_mapping.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/get_settings.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/get_template.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/get_upgrade.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/open.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/put_alias.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/put_index_template.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/put_mapping.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/put_settings.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/put_template.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/recovery.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/refresh.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/resolve_index.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/rollover.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/segments.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/shard_stores.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/shrink.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/simulate_index_template.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/simulate_template.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/split.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/stats.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/unfreeze.rb +29 -19
- data/lib/elasticsearch/api/actions/indices/update_aliases.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/upgrade.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/validate_query.rb +1 -1
- data/lib/elasticsearch/api/actions/info.rb +1 -1
- data/lib/elasticsearch/api/actions/ingest/delete_pipeline.rb +1 -1
- data/lib/elasticsearch/api/actions/ingest/geo_ip_stats.rb +43 -0
- data/lib/elasticsearch/api/actions/ingest/get_pipeline.rb +3 -1
- data/lib/elasticsearch/api/actions/ingest/processor_grok.rb +1 -1
- data/lib/elasticsearch/api/actions/ingest/put_pipeline.rb +1 -1
- data/lib/elasticsearch/api/actions/ingest/simulate.rb +1 -1
- data/lib/elasticsearch/api/actions/mget.rb +1 -1
- data/lib/elasticsearch/api/actions/msearch.rb +1 -1
- data/lib/elasticsearch/api/actions/msearch_template.rb +1 -1
- data/lib/elasticsearch/api/actions/mtermvectors.rb +1 -1
- data/lib/elasticsearch/api/actions/nodes/hot_threads.rb +1 -1
- data/lib/elasticsearch/api/actions/nodes/info.rb +1 -1
- data/lib/elasticsearch/api/actions/nodes/reload_secure_settings.rb +1 -1
- data/lib/elasticsearch/api/actions/nodes/stats.rb +4 -2
- data/lib/elasticsearch/api/actions/nodes/usage.rb +1 -1
- data/lib/elasticsearch/api/actions/open_point_in_time.rb +64 -0
- data/lib/elasticsearch/api/actions/ping.rb +1 -1
- data/lib/elasticsearch/api/actions/put_script.rb +1 -1
- data/lib/elasticsearch/api/actions/rank_eval.rb +1 -1
- data/lib/elasticsearch/api/actions/reindex.rb +1 -1
- data/lib/elasticsearch/api/actions/reindex_rethrottle.rb +1 -1
- data/lib/elasticsearch/api/actions/render_search_template.rb +1 -1
- data/lib/elasticsearch/api/actions/scripts_painless_execute.rb +1 -1
- data/lib/elasticsearch/api/actions/scroll.rb +1 -1
- data/lib/elasticsearch/api/actions/search.rb +1 -1
- data/lib/elasticsearch/api/actions/search_shards.rb +1 -1
- data/lib/elasticsearch/api/actions/search_template.rb +1 -1
- data/lib/elasticsearch/api/actions/shutdown/delete_node.rb +52 -0
- data/lib/elasticsearch/api/actions/shutdown/get_node.rb +54 -0
- data/lib/elasticsearch/api/actions/shutdown/params_registry.rb +60 -0
- data/lib/elasticsearch/api/actions/shutdown/put_node.rb +54 -0
- data/lib/elasticsearch/api/actions/snapshot/cleanup_repository.rb +1 -1
- data/lib/elasticsearch/api/actions/snapshot/clone.rb +1 -1
- data/lib/elasticsearch/api/actions/snapshot/create.rb +1 -1
- data/lib/elasticsearch/api/actions/snapshot/create_repository.rb +1 -1
- data/lib/elasticsearch/api/actions/snapshot/delete.rb +1 -1
- data/lib/elasticsearch/api/actions/snapshot/delete_repository.rb +1 -1
- data/lib/elasticsearch/api/actions/snapshot/get.rb +3 -1
- data/lib/elasticsearch/api/actions/snapshot/get_repository.rb +1 -1
- data/lib/elasticsearch/api/actions/snapshot/restore.rb +1 -1
- data/lib/elasticsearch/api/actions/snapshot/status.rb +1 -1
- data/lib/elasticsearch/api/actions/snapshot/verify_repository.rb +1 -1
- data/lib/elasticsearch/api/actions/tasks/cancel.rb +1 -1
- data/lib/elasticsearch/api/actions/tasks/get.rb +1 -1
- data/lib/elasticsearch/api/actions/tasks/list.rb +1 -1
- data/lib/elasticsearch/api/actions/termvectors.rb +1 -1
- data/lib/elasticsearch/api/actions/update.rb +1 -1
- data/lib/elasticsearch/api/actions/update_by_query.rb +1 -1
- data/lib/elasticsearch/api/actions/update_by_query_rethrottle.rb +1 -1
- data/lib/elasticsearch/api/namespace/shutdown.rb +37 -0
- data/lib/elasticsearch/api/version.rb +1 -1
- data/spec/elasticsearch/api/actions/close_point_in_time_spec.rb +34 -0
- data/spec/elasticsearch/api/actions/features/get_features_spec.rb +5 -5
- data/spec/elasticsearch/api/actions/features/reset_features_spec.rb +34 -0
- data/spec/elasticsearch/api/actions/indices/freeze_spec.rb +1 -1
- data/spec/elasticsearch/api/actions/indices/unfreeze_spec.rb +1 -1
- data/spec/elasticsearch/api/actions/ingest/geo_ip_stats_spec.rb +34 -0
- data/spec/elasticsearch/api/actions/open_point_in_time_spec.rb +44 -0
- data/spec/elasticsearch/api/actions/shutdown/delete_node_spec.rb +44 -0
- data/spec/elasticsearch/api/actions/shutdown/get_node_spec.rb +46 -0
- data/spec/elasticsearch/api/actions/shutdown/put_node_spec.rb +50 -0
- data/spec/elasticsearch/api/rest_api_yaml_spec.rb +7 -0
- data/spec/rest_yaml_tests_helper.rb +4 -7
- data/utils/Gemfile +4 -3
- data/utils/thor/generate_source.rb +1 -2
- data/utils/thor/generator/files_helper.rb +38 -20
- 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.
|
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.
|
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.
|
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.
|
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.
|
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.
|
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.
|
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.
|
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.
|
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.
|
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.
|
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.
|
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.
|
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.
|
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.
|
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.
|
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.
|
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.
|
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.
|
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.
|
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.
|
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) || {}
|