elasticsearch-api 7.13.3 → 7.17.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Gemfile +5 -5
- data/README.md +18 -39
- data/Rakefile +2 -16
- data/elasticsearch-api.gemspec +14 -8
- data/lib/elasticsearch/api/actions/bulk.rb +2 -2
- 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 +1 -1
- 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 +1 -1
- data/lib/elasticsearch/api/actions/cluster/allocation_explain.rb +3 -3
- 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 +2 -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 +7 -2
- 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 -7
- 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 +2 -1
- data/lib/elasticsearch/api/actions/exists_source.rb +2 -1
- data/lib/elasticsearch/api/actions/explain.rb +6 -6
- data/lib/elasticsearch/api/actions/features/get_features.rb +1 -1
- data/lib/elasticsearch/api/actions/features/reset_features.rb +1 -1
- data/lib/elasticsearch/api/actions/field_caps.rb +6 -6
- 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 -5
- data/lib/elasticsearch/api/actions/get_script_languages.rb +1 -5
- 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 +6 -6
- 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 +2 -2
- data/lib/elasticsearch/api/actions/indices/delete_alias.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/delete_index_template.rb +6 -2
- data/lib/elasticsearch/api/actions/indices/delete_template.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/disk_usage.rb +68 -0
- data/lib/elasticsearch/api/actions/indices/exists.rb +2 -1
- data/lib/elasticsearch/api/actions/indices/exists_alias.rb +2 -1
- data/lib/elasticsearch/api/actions/indices/exists_index_template.rb +6 -2
- data/lib/elasticsearch/api/actions/indices/exists_template.rb +2 -1
- data/lib/elasticsearch/api/actions/indices/exists_type.rb +2 -1
- data/lib/elasticsearch/api/actions/indices/field_usage_stats.rb +66 -0
- 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/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 +2 -2
- 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 -5
- 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/update_aliases.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/upgrade.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/validate_query.rb +8 -8
- 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 +1 -1
- data/lib/elasticsearch/api/actions/ingest/get_pipeline.rb +1 -1
- data/lib/elasticsearch/api/actions/ingest/processor_grok.rb +1 -1
- data/lib/elasticsearch/api/actions/ingest/put_pipeline.rb +3 -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 +3 -3
- data/lib/elasticsearch/api/actions/msearch_template.rb +3 -3
- data/lib/elasticsearch/api/actions/mtermvectors.rb +8 -8
- data/lib/elasticsearch/api/actions/nodes/clear_repositories_metering_archive.rb +56 -0
- data/lib/elasticsearch/api/actions/{snapshot/get_features.rb → nodes/get_repositories_metering_info.rb} +15 -14
- data/lib/elasticsearch/api/actions/nodes/hot_threads.rb +4 -2
- data/lib/elasticsearch/api/actions/nodes/info.rb +2 -2
- data/lib/elasticsearch/api/actions/nodes/reload_secure_settings.rb +1 -1
- data/lib/elasticsearch/api/actions/nodes/stats.rb +2 -2
- data/lib/elasticsearch/api/actions/nodes/usage.rb +1 -1
- data/lib/elasticsearch/api/actions/open_point_in_time.rb +5 -7
- data/lib/elasticsearch/api/actions/ping.rb +3 -3
- data/lib/elasticsearch/api/actions/put_script.rb +1 -1
- data/lib/elasticsearch/api/actions/rank_eval.rb +1 -5
- 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 +6 -6
- data/lib/elasticsearch/api/actions/scripts_painless_execute.rb +2 -2
- data/lib/elasticsearch/api/actions/scroll.rb +6 -6
- data/lib/elasticsearch/api/actions/search.rb +8 -8
- data/lib/elasticsearch/api/actions/search_mvt.rb +85 -0
- data/lib/elasticsearch/api/actions/search_shards.rb +1 -1
- data/lib/elasticsearch/api/actions/search_template.rb +2 -2
- data/lib/elasticsearch/api/actions/shutdown/delete_node.rb +1 -5
- data/lib/elasticsearch/api/actions/shutdown/get_node.rb +1 -5
- data/lib/elasticsearch/api/actions/shutdown/put_node.rb +1 -5
- 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 +17 -1
- data/lib/elasticsearch/api/actions/snapshot/get_repository.rb +1 -1
- data/lib/elasticsearch/api/actions/snapshot/repository_analyze.rb +76 -0
- 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 +11 -10
- data/lib/elasticsearch/api/actions/update.rb +1 -1
- data/lib/elasticsearch/api/actions/update_by_query.rb +1 -7
- data/lib/elasticsearch/api/actions/update_by_query_rethrottle.rb +1 -1
- data/lib/elasticsearch/api/{actions/remote/info.rb → namespace/security.rb} +12 -13
- data/lib/elasticsearch/api/utils.rb +7 -3
- data/lib/elasticsearch/api/version.rb +1 -1
- data/spec/elasticsearch/api/actions/count_spec.rb +2 -5
- data/spec/elasticsearch/api/actions/indices/clear_cache_spec.rb +16 -3
- data/spec/elasticsearch/api/actions/{abort_benchmark_spec.rb → indices/disk_usage_spec.rb} +19 -5
- data/spec/elasticsearch/api/actions/{benchmark_spec.rb → indices/field_usage_stats_spec.rb} +18 -6
- data/spec/elasticsearch/api/actions/nodes/clear_repositories_metering_archive_spec.rb +51 -0
- data/spec/elasticsearch/api/actions/{remote/info_spec.rb → nodes/get_repositories_metering_info_spec.rb} +17 -8
- data/spec/elasticsearch/api/actions/open_point_in_time_spec.rb +2 -12
- data/spec/elasticsearch/api/actions/search_mvt_spec.rb +52 -0
- data/spec/elasticsearch/api/actions/snapshot/{get_features_spec.rb → repository_analize_spec.rb} +15 -5
- data/spec/elasticsearch/api/rest_api_yaml_spec.rb +18 -6
- data/spec/elasticsearch/api/utils_spec.rb +9 -21
- data/spec/rest_yaml_tests_helper.rb +64 -10
- data/spec/spec_helper.rb +13 -2
- data/utils/README.md +6 -1
- data/utils/thor/.rubocop.yml +2 -0
- data/utils/thor/generate_source.rb +17 -11
- data/utils/thor/generator/endpoint_specifics.rb +3 -1
- data/utils/thor/generator/files_helper.rb +1 -1
- data/utils/thor/templates/_documentation_top.erb +19 -0
- data/utils/thor/templates/_method_setup.erb +18 -0
- data/utils/thor/templates/_params_registry.erb +19 -0
- data/utils/thor/templates/_perform_request.erb +19 -1
- data/utils/thor/templates/test.erb +16 -3
- data/utils/thor/templates/test_helper.rb +0 -4
- metadata +38 -41
- data/lib/elasticsearch/api/actions/abort_benchmark.rb +0 -41
- data/lib/elasticsearch/api/actions/benchmark.rb +0 -81
- data/lib/elasticsearch/api/actions/delete_by_rethrottle.rb +0 -47
- data/lib/elasticsearch/api/actions/nodes/shutdown.rb +0 -56
- data/spec/elasticsearch/api/actions/nodes/shutdown_spec.rb +0 -76
@@ -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.17/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.17/modules-snapshots.html
|
30
30
|
#
|
31
31
|
def delete_repository(arguments = {})
|
32
32
|
raise ArgumentError, "Required argument 'repository' missing" unless arguments[:repository]
|
@@ -26,10 +26,18 @@ module Elasticsearch
|
|
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
28
|
# @option arguments [Boolean] :index_details Whether to include details of each index in the snapshot, if those details are available. Defaults to false.
|
29
|
+
# @option arguments [Boolean] :include_repository Whether to include the repository name in the snapshot info. Defaults to true.
|
30
|
+
# @option arguments [String] :sort Allows setting a sort order for the result. Defaults to start_time (options: start_time, duration, name, repository, index_count, shard_count, failed_shard_count)
|
31
|
+
# @option arguments [Integer] :size Maximum number of snapshots to return. Defaults to 0 which means return all that match without limit.
|
32
|
+
# @option arguments [String] :order Sort order (options: asc, desc)
|
33
|
+
# @option arguments [String] :from_sort_value Value of the current sort column at which to start retrieval.
|
34
|
+
# @option arguments [String] :after Offset identifier to start pagination from as returned by the 'next' field in the response body.
|
35
|
+
# @option arguments [Integer] :offset Numeric offset to start pagination based on the snapshots matching the request. Defaults to 0
|
36
|
+
# @option arguments [String] :slm_policy_filter Filter snapshots by a comma-separated list of SLM policy names that snapshots belong to. Accepts wildcards. Use the special pattern '_none' to match snapshots without an SLM policy
|
29
37
|
# @option arguments [Boolean] :verbose Whether to show verbose snapshot info or only show the basic info found in the repository index blob
|
30
38
|
# @option arguments [Hash] :headers Custom HTTP headers
|
31
39
|
#
|
32
|
-
# @see https://www.elastic.co/guide/en/elasticsearch/reference/7.
|
40
|
+
# @see https://www.elastic.co/guide/en/elasticsearch/reference/7.17/modules-snapshots.html
|
33
41
|
#
|
34
42
|
def get(arguments = {})
|
35
43
|
raise ArgumentError, "Required argument 'repository' missing" unless arguments[:repository]
|
@@ -62,6 +70,14 @@ module Elasticsearch
|
|
62
70
|
:master_timeout,
|
63
71
|
:ignore_unavailable,
|
64
72
|
:index_details,
|
73
|
+
:include_repository,
|
74
|
+
:sort,
|
75
|
+
:size,
|
76
|
+
:order,
|
77
|
+
:from_sort_value,
|
78
|
+
:after,
|
79
|
+
:offset,
|
80
|
+
:slm_policy_filter,
|
65
81
|
:verbose
|
66
82
|
].freeze)
|
67
83
|
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.17/modules-snapshots.html
|
30
30
|
#
|
31
31
|
def get_repository(arguments = {})
|
32
32
|
headers = arguments.delete(:headers) || {}
|
@@ -0,0 +1,76 @@
|
|
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
|
+
# Analyzes a repository for correctness and performance
|
23
|
+
#
|
24
|
+
# @option arguments [String] :repository A repository name
|
25
|
+
# @option arguments [Number] :blob_count Number of blobs to create during the test. Defaults to 100.
|
26
|
+
# @option arguments [Number] :concurrency Number of operations to run concurrently during the test. Defaults to 10.
|
27
|
+
# @option arguments [Number] :read_node_count Number of nodes on which to read a blob after writing. Defaults to 10.
|
28
|
+
# @option arguments [Number] :early_read_node_count Number of nodes on which to perform an early read on a blob, i.e. before writing has completed. Early reads are rare actions so the 'rare_action_probability' parameter is also relevant. Defaults to 2.
|
29
|
+
# @option arguments [Number] :seed Seed for the random number generator used to create the test workload. Defaults to a random value.
|
30
|
+
# @option arguments [Number] :rare_action_probability Probability of taking a rare action such as an early read or an overwrite. Defaults to 0.02.
|
31
|
+
# @option arguments [String] :max_blob_size Maximum size of a blob to create during the test, e.g '1gb' or '100mb'. Defaults to '10mb'.
|
32
|
+
# @option arguments [String] :max_total_data_size Maximum total size of all blobs to create during the test, e.g '1tb' or '100gb'. Defaults to '1gb'.
|
33
|
+
# @option arguments [Time] :timeout Explicit operation timeout. Defaults to '30s'.
|
34
|
+
# @option arguments [Boolean] :detailed Whether to return detailed results or a summary. Defaults to 'false' so that only the summary is returned.
|
35
|
+
# @option arguments [Boolean] :rarely_abort_writes Whether to rarely abort writes before they complete. Defaults to 'true'.
|
36
|
+
# @option arguments [Hash] :headers Custom HTTP headers
|
37
|
+
#
|
38
|
+
# @see https://www.elastic.co/guide/en/elasticsearch/reference/7.17/modules-snapshots.html
|
39
|
+
#
|
40
|
+
def repository_analyze(arguments = {})
|
41
|
+
raise ArgumentError, "Required argument 'repository' missing" unless arguments[:repository]
|
42
|
+
|
43
|
+
headers = arguments.delete(:headers) || {}
|
44
|
+
|
45
|
+
arguments = arguments.clone
|
46
|
+
|
47
|
+
_repository = arguments.delete(:repository)
|
48
|
+
|
49
|
+
method = Elasticsearch::API::HTTP_POST
|
50
|
+
path = "_snapshot/#{Utils.__listify(_repository)}/_analyze"
|
51
|
+
params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__)
|
52
|
+
|
53
|
+
body = nil
|
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(:repository_analyze, [
|
61
|
+
:blob_count,
|
62
|
+
:concurrency,
|
63
|
+
:read_node_count,
|
64
|
+
:early_read_node_count,
|
65
|
+
:seed,
|
66
|
+
:rare_action_probability,
|
67
|
+
:max_blob_size,
|
68
|
+
:max_total_data_size,
|
69
|
+
:timeout,
|
70
|
+
:detailed,
|
71
|
+
:rarely_abort_writes
|
72
|
+
].freeze)
|
73
|
+
end
|
74
|
+
end
|
75
|
+
end
|
76
|
+
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.
|
31
|
+
# @see https://www.elastic.co/guide/en/elasticsearch/reference/7.17/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.17/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.17/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.17/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.17/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.17/tasks.html
|
38
38
|
#
|
39
39
|
def list(arguments = {})
|
40
40
|
headers = arguments.delete(:headers) || {}
|
@@ -42,7 +42,7 @@ module Elasticsearch
|
|
42
42
|
# Deprecated since version 7.0.0
|
43
43
|
#
|
44
44
|
#
|
45
|
-
# @see https://www.elastic.co/guide/en/elasticsearch/reference/7.
|
45
|
+
# @see https://www.elastic.co/guide/en/elasticsearch/reference/7.17/docs-termvectors.html
|
46
46
|
#
|
47
47
|
def termvectors(arguments = {})
|
48
48
|
raise ArgumentError, "Required argument 'index' missing" unless arguments[:index]
|
@@ -64,15 +64,15 @@ module Elasticsearch
|
|
64
64
|
end
|
65
65
|
|
66
66
|
endpoint = arguments.delete(:endpoint) || '_termvectors'
|
67
|
-
path
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
67
|
+
path = if _index && _type && _id
|
68
|
+
"#{Utils.__listify(_index)}/#{Utils.__listify(_type)}/#{Utils.__listify(_id)}/#{endpoint}"
|
69
|
+
elsif _index && _type
|
70
|
+
"#{Utils.__listify(_index)}/#{Utils.__listify(_type)}/#{endpoint}"
|
71
|
+
elsif _index && _id
|
72
|
+
"#{Utils.__listify(_index)}/#{endpoint}/#{Utils.__listify(_id)}"
|
73
|
+
else
|
74
|
+
"#{Utils.__listify(_index)}/#{endpoint}"
|
75
|
+
end
|
76
76
|
|
77
77
|
params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__)
|
78
78
|
|
@@ -85,6 +85,7 @@ module Elasticsearch
|
|
85
85
|
def termvector(arguments = {})
|
86
86
|
termvectors(arguments.merge endpoint: '_termvector')
|
87
87
|
end
|
88
|
+
|
88
89
|
# Register this action with its valid params when the module is loaded.
|
89
90
|
#
|
90
91
|
# @since 6.2.0
|
@@ -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.17/docs-update.html
|
47
47
|
#
|
48
48
|
def update(arguments = {})
|
49
49
|
raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
|
@@ -43,9 +43,6 @@ module Elasticsearch
|
|
43
43
|
# @option arguments [Number] :size Deprecated, please use `max_docs` instead
|
44
44
|
# @option arguments [Number] :max_docs Maximum number of documents to process (default: all documents)
|
45
45
|
# @option arguments [List] :sort A comma-separated list of <field>:<direction> pairs
|
46
|
-
# @option arguments [List] :_source True or false to return the _source field or not, or a list of fields to return
|
47
|
-
# @option arguments [List] :_source_excludes A list of fields to exclude from the returned _source field
|
48
|
-
# @option arguments [List] :_source_includes A list of fields to extract and return from the _source field
|
49
46
|
# @option arguments [Number] :terminate_after The maximum number of documents to collect for each shard, upon reaching which the query execution will terminate early.
|
50
47
|
# @option arguments [List] :stats Specific 'tag' of the request for logging and statistical purposes
|
51
48
|
# @option arguments [Boolean] :version Specify whether to return document version as part of a hit
|
@@ -66,7 +63,7 @@ module Elasticsearch
|
|
66
63
|
# Deprecated since version 7.0.0
|
67
64
|
#
|
68
65
|
#
|
69
|
-
# @see https://www.elastic.co/guide/en/elasticsearch/reference/7.
|
66
|
+
# @see https://www.elastic.co/guide/en/elasticsearch/reference/7.17/docs-update-by-query.html
|
70
67
|
#
|
71
68
|
def update_by_query(arguments = {})
|
72
69
|
raise ArgumentError, "Required argument 'index' missing" unless arguments[:index]
|
@@ -115,9 +112,6 @@ module Elasticsearch
|
|
115
112
|
:size,
|
116
113
|
:max_docs,
|
117
114
|
:sort,
|
118
|
-
:_source,
|
119
|
-
:_source_excludes,
|
120
|
-
:_source_includes,
|
121
115
|
:terminate_after,
|
122
116
|
:stats,
|
123
117
|
:version,
|
@@ -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.17/docs-update-by-query.html
|
28
28
|
#
|
29
29
|
def update_by_query_rethrottle(arguments = {})
|
30
30
|
raise ArgumentError, "Required argument 'task_id' missing" unless arguments[:task_id]
|
@@ -17,20 +17,19 @@
|
|
17
17
|
|
18
18
|
module Elasticsearch
|
19
19
|
module API
|
20
|
-
module
|
21
|
-
module Actions
|
22
|
-
# Returns all of the configured remote cluster information
|
23
|
-
#
|
24
|
-
# @see http://www.elastic.co/guide/en/elasticsearch/reference/master/remote-info.html
|
25
|
-
#
|
26
|
-
def info(arguments = {})
|
27
|
-
method = HTTP_GET
|
28
|
-
path = "_remote/info"
|
29
|
-
params = {}
|
30
|
-
body = nil
|
20
|
+
module Security
|
21
|
+
module Actions; end
|
31
22
|
|
32
|
-
|
33
|
-
|
23
|
+
# Client for the "security" namespace (includes the {Security::Actions} methods)
|
24
|
+
#
|
25
|
+
class SecurityClient
|
26
|
+
include Common::Client, Common::Client::Base, Security::Actions
|
27
|
+
end
|
28
|
+
|
29
|
+
# Proxy method for {SecurityClient}, available in the receiving object
|
30
|
+
#
|
31
|
+
def security
|
32
|
+
@security ||= SecurityClient.new(self)
|
34
33
|
end
|
35
34
|
end
|
36
35
|
end
|
@@ -14,14 +14,13 @@
|
|
14
14
|
# KIND, either express or implied. See the License for the
|
15
15
|
# specific language governing permissions and limitations
|
16
16
|
# under the License.
|
17
|
+
require 'erb'
|
17
18
|
|
18
19
|
module Elasticsearch
|
19
20
|
module API
|
20
|
-
|
21
21
|
# Generic utility methods
|
22
22
|
#
|
23
23
|
module Utils
|
24
|
-
|
25
24
|
# URL-escape a string
|
26
25
|
#
|
27
26
|
# @example
|
@@ -31,7 +30,7 @@ module Elasticsearch
|
|
31
30
|
# @api private
|
32
31
|
def __escape(string)
|
33
32
|
return string if string == '*'
|
34
|
-
|
33
|
+
ERB::Util.url_encode(string.to_s)
|
35
34
|
end
|
36
35
|
|
37
36
|
# Create a "list" of values from arguments, ignoring nil values and encoding special characters.
|
@@ -282,6 +281,11 @@ module Elasticsearch
|
|
282
281
|
end
|
283
282
|
end
|
284
283
|
|
284
|
+
def ndjson_headers(headers)
|
285
|
+
headers.merge!('Content-Type' => 'application/x-ndjson') unless ['1', 'true'].include?(ENV['ELASTIC_CLIENT_APIVERSIONING'])
|
286
|
+
headers
|
287
|
+
end
|
288
|
+
|
285
289
|
extend self
|
286
290
|
end
|
287
291
|
end
|
@@ -18,10 +18,9 @@
|
|
18
18
|
require 'spec_helper'
|
19
19
|
|
20
20
|
describe 'client#count' do
|
21
|
-
|
22
21
|
let(:expected_args) do
|
23
22
|
[
|
24
|
-
'
|
23
|
+
'GET',
|
25
24
|
'_count',
|
26
25
|
{},
|
27
26
|
nil,
|
@@ -34,10 +33,9 @@ describe 'client#count' do
|
|
34
33
|
end
|
35
34
|
|
36
35
|
context 'when an index and type are specified' do
|
37
|
-
|
38
36
|
let(:expected_args) do
|
39
37
|
[
|
40
|
-
'
|
38
|
+
'GET',
|
41
39
|
'foo,bar/t1,t2/_count',
|
42
40
|
{},
|
43
41
|
nil,
|
@@ -51,7 +49,6 @@ describe 'client#count' do
|
|
51
49
|
end
|
52
50
|
|
53
51
|
context 'when there is a query provided' do
|
54
|
-
|
55
52
|
let(:expected_args) do
|
56
53
|
[
|
57
54
|
'POST',
|
@@ -1,7 +1,20 @@
|
|
1
|
-
# Licensed to Elasticsearch B.V under one or more
|
2
|
-
#
|
3
|
-
#
|
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
|
4
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
|
+
|
5
18
|
require 'spec_helper'
|
6
19
|
|
7
20
|
describe 'client.indices#clear_cache' do
|
@@ -17,18 +17,32 @@
|
|
17
17
|
|
18
18
|
require 'spec_helper'
|
19
19
|
|
20
|
-
describe 'client#
|
21
|
-
|
20
|
+
describe 'client.indices#disk_usage' do
|
22
21
|
let(:expected_args) do
|
23
22
|
[
|
24
23
|
'POST',
|
25
|
-
|
24
|
+
"#{index}/_disk_usage",
|
26
25
|
{},
|
27
|
-
nil
|
26
|
+
nil,
|
27
|
+
{}
|
28
28
|
]
|
29
29
|
end
|
30
30
|
|
31
|
+
let(:index) { 'foo' }
|
32
|
+
|
31
33
|
it 'performs the request' do
|
32
|
-
expect(client_double.
|
34
|
+
expect(client_double.indices.disk_usage(index: index)).to eq({})
|
35
|
+
end
|
36
|
+
|
37
|
+
context 'when there is no index specified' do
|
38
|
+
let(:client) do
|
39
|
+
Class.new { include Elasticsearch::API }.new
|
40
|
+
end
|
41
|
+
|
42
|
+
it 'raises an exception' do
|
43
|
+
expect do
|
44
|
+
client.indices.disk_usage
|
45
|
+
end.to raise_exception(ArgumentError)
|
46
|
+
end
|
33
47
|
end
|
34
48
|
end
|
@@ -17,18 +17,30 @@
|
|
17
17
|
|
18
18
|
require 'spec_helper'
|
19
19
|
|
20
|
-
describe 'client#
|
21
|
-
|
20
|
+
describe 'client.indices#field_usage_stats' do
|
22
21
|
let(:expected_args) do
|
23
22
|
[
|
24
|
-
'
|
25
|
-
'
|
23
|
+
'GET',
|
24
|
+
'foo/_field_usage_stats',
|
26
25
|
{},
|
27
|
-
|
26
|
+
nil,
|
27
|
+
{}
|
28
28
|
]
|
29
29
|
end
|
30
30
|
|
31
31
|
it 'performs the request' do
|
32
|
-
expect(client_double.
|
32
|
+
expect(client_double.indices.field_usage_stats(index: 'foo')).to eq({})
|
33
|
+
end
|
34
|
+
|
35
|
+
context 'when there is no index specified' do
|
36
|
+
let(:client) do
|
37
|
+
Class.new { include Elasticsearch::API }.new
|
38
|
+
end
|
39
|
+
|
40
|
+
it 'raises an exception' do
|
41
|
+
expect {
|
42
|
+
client.indices.field_usage_stats
|
43
|
+
}.to raise_exception(ArgumentError)
|
44
|
+
end
|
33
45
|
end
|
34
46
|
end
|
@@ -0,0 +1,51 @@
|
|
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
|
+
require 'spec_helper'
|
19
|
+
|
20
|
+
|
21
|
+
describe 'client.nodes#clear_metering_archive' do
|
22
|
+
let(:expected_args) do
|
23
|
+
[
|
24
|
+
'DELETE',
|
25
|
+
'_nodes/foo/_repositories_metering/bar',
|
26
|
+
{},
|
27
|
+
nil,
|
28
|
+
{}
|
29
|
+
]
|
30
|
+
end
|
31
|
+
|
32
|
+
it 'performs the request' do
|
33
|
+
expect(client_double.nodes.clear_repositories_metering_archive(node_id: 'foo', max_archive_version: 'bar')).to eq({})
|
34
|
+
end
|
35
|
+
|
36
|
+
let(:client) do
|
37
|
+
Class.new { include Elasticsearch::API }.new
|
38
|
+
end
|
39
|
+
|
40
|
+
it 'raises an error if no node_id is provided' do
|
41
|
+
expect do
|
42
|
+
client.nodes.clear_repositories_metering_archive(max_archive_version: 'bar')
|
43
|
+
end.to raise_exception(ArgumentError)
|
44
|
+
end
|
45
|
+
|
46
|
+
it 'raises an error if no max_archive_version is provided' do
|
47
|
+
expect do
|
48
|
+
client.nodes.clear_repositories_metering_archive(node_id: 'foo')
|
49
|
+
end.to raise_exception(ArgumentError)
|
50
|
+
end
|
51
|
+
end
|
@@ -17,19 +17,28 @@
|
|
17
17
|
|
18
18
|
require 'spec_helper'
|
19
19
|
|
20
|
-
describe 'client.
|
21
|
-
|
20
|
+
describe 'client.nodes#get_metering_info' do
|
22
21
|
let(:expected_args) do
|
23
22
|
[
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
23
|
+
'GET',
|
24
|
+
'_nodes/foo/_repositories_metering',
|
25
|
+
{},
|
26
|
+
nil,
|
27
|
+
{}
|
29
28
|
]
|
30
29
|
end
|
31
30
|
|
32
31
|
it 'performs the request' do
|
33
|
-
expect(client_double.
|
32
|
+
expect(client_double.nodes.get_repositories_metering_info(node_id: 'foo', max_archive_version: 'bar')).to eq({})
|
33
|
+
end
|
34
|
+
|
35
|
+
let(:client) do
|
36
|
+
Class.new { include Elasticsearch::API }.new
|
37
|
+
end
|
38
|
+
|
39
|
+
it 'raises an error if no node_id is provided' do
|
40
|
+
expect do
|
41
|
+
client.nodes.get_repositories_metering_info
|
42
|
+
end.to raise_exception(ArgumentError)
|
34
43
|
end
|
35
44
|
end
|
@@ -21,24 +21,14 @@ describe 'client#open_point_in_time' do
|
|
21
21
|
let(:expected_args) do
|
22
22
|
[
|
23
23
|
'POST',
|
24
|
-
|
24
|
+
'foo/_pit',
|
25
25
|
{},
|
26
26
|
nil,
|
27
27
|
{}
|
28
28
|
]
|
29
29
|
end
|
30
30
|
|
31
|
-
let (:url) { '_pit'}
|
32
|
-
|
33
31
|
it 'performs the request' do
|
34
|
-
expect(client_double.open_point_in_time).to eq({})
|
35
|
-
end
|
36
|
-
|
37
|
-
context 'with index' do
|
38
|
-
let (:url) { 'foo/_pit'}
|
39
|
-
|
40
|
-
it 'performs the request' do
|
41
|
-
expect(client_double.open_point_in_time(index: 'foo')).to eq({})
|
42
|
-
end
|
32
|
+
expect(client_double.open_point_in_time(index: 'foo')).to eq({})
|
43
33
|
end
|
44
34
|
end
|