opensearch-ruby 2.0.3 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data/README.md +80 -46
- data/USER_GUIDE.md +146 -0
- data/bin/opensearch_ruby_console +4 -34
- data/lib/opensearch/api/actions/abort_benchmark.rb +49 -0
- data/lib/opensearch/api/actions/benchmark.rb +88 -0
- data/lib/opensearch/api/actions/bulk.rb +91 -0
- data/lib/opensearch/api/actions/cat/aliases.rb +79 -0
- data/lib/opensearch/api/actions/cat/all_pit_segments.rb +45 -0
- data/lib/opensearch/api/actions/cat/allocation.rb +83 -0
- data/lib/opensearch/api/actions/cat/cluster_manager.rb +54 -0
- data/lib/opensearch/api/actions/cat/count.rb +75 -0
- data/lib/opensearch/api/actions/cat/fielddata.rb +77 -0
- data/lib/opensearch/api/actions/cat/health.rb +72 -0
- data/lib/opensearch/api/actions/cat/help.rb +61 -0
- data/lib/opensearch/api/actions/cat/indices.rb +93 -0
- data/lib/opensearch/api/actions/cat/master.rb +73 -0
- data/lib/opensearch/api/actions/cat/nodeattrs.rb +73 -0
- data/lib/opensearch/api/actions/cat/nodes.rb +82 -0
- data/lib/opensearch/api/actions/cat/params_registry.rb +69 -0
- data/lib/opensearch/api/actions/cat/pending_tasks.rb +76 -0
- data/lib/opensearch/api/actions/cat/pit_segments.rb +48 -0
- data/lib/opensearch/api/actions/cat/plugins.rb +75 -0
- data/lib/opensearch/api/actions/cat/recovery.rb +84 -0
- data/lib/opensearch/api/actions/cat/repositories.rb +73 -0
- data/lib/opensearch/api/actions/cat/segments.rb +76 -0
- data/lib/opensearch/api/actions/cat/shards.rb +85 -0
- data/lib/opensearch/api/actions/cat/snapshots.rb +82 -0
- data/lib/opensearch/api/actions/cat/tasks.rb +77 -0
- data/lib/opensearch/api/actions/cat/templates.rb +80 -0
- data/lib/opensearch/api/actions/cat/thread_pool.rb +84 -0
- data/lib/opensearch/api/actions/clear_scroll.rb +62 -0
- data/lib/opensearch/api/actions/cluster/allocation_explain.rb +67 -0
- data/lib/opensearch/api/actions/cluster/delete_component_template.rb +68 -0
- data/lib/opensearch/api/actions/cluster/delete_voting_config_exclusions.rb +59 -0
- data/lib/opensearch/api/actions/cluster/exists_component_template.rb +70 -0
- data/lib/opensearch/api/actions/cluster/get_component_template.rb +70 -0
- data/lib/opensearch/api/actions/cluster/get_settings.rb +67 -0
- data/lib/opensearch/api/actions/cluster/health.rb +88 -0
- data/lib/opensearch/api/actions/cluster/params_registry.rb +69 -0
- data/lib/opensearch/api/actions/cluster/pending_tasks.rb +64 -0
- data/lib/opensearch/api/actions/cluster/post_voting_config_exclusions.rb +63 -0
- data/lib/opensearch/api/actions/cluster/put_component_template.rb +72 -0
- data/lib/opensearch/api/actions/cluster/put_settings.rb +68 -0
- data/{spec/unit/wrapper_gem_spec.rb → lib/opensearch/api/actions/cluster/remote_info.rb} +20 -17
- data/lib/opensearch/api/actions/cluster/reroute.rb +72 -0
- data/lib/opensearch/api/actions/cluster/state.rb +87 -0
- data/lib/opensearch/api/actions/cluster/stats.rb +68 -0
- data/lib/opensearch/api/actions/count.rb +96 -0
- data/lib/opensearch/api/actions/create.rb +60 -0
- data/lib/opensearch/api/actions/create_pit.rb +45 -0
- data/lib/opensearch/api/actions/dangling_indices/delete_dangling_index.rb +70 -0
- data/lib/opensearch/api/actions/dangling_indices/import_dangling_index.rb +69 -0
- data/lib/opensearch/api/actions/dangling_indices/list_dangling_indices.rb +51 -0
- data/lib/opensearch/api/actions/dangling_indices/params_registry.rb +69 -0
- data/lib/opensearch/api/actions/delete.rb +89 -0
- data/lib/opensearch/api/actions/delete_all_pits.rb +26 -0
- data/lib/opensearch/api/actions/delete_by_query.rb +133 -0
- data/lib/opensearch/api/actions/delete_by_query_rethrottle.rb +62 -0
- data/lib/opensearch/api/actions/delete_by_rethrottle.rb +55 -0
- data/lib/opensearch/api/actions/delete_pit.rb +30 -0
- data/lib/opensearch/api/actions/delete_script.rb +66 -0
- data/lib/opensearch/api/actions/exists.rb +94 -0
- data/lib/opensearch/api/actions/exists_source.rb +89 -0
- data/lib/opensearch/api/actions/explain.rb +99 -0
- data/lib/opensearch/api/actions/features/get_features.rb +61 -0
- data/lib/opensearch/api/actions/features/params_registry.rb +69 -0
- data/lib/opensearch/api/actions/features/reset_features.rb +55 -0
- data/lib/opensearch/api/actions/field_caps.rb +78 -0
- data/lib/opensearch/api/actions/get.rb +93 -0
- data/lib/opensearch/api/actions/get_all_pits.rb +26 -0
- data/lib/opensearch/api/actions/get_script.rb +64 -0
- data/lib/opensearch/api/actions/get_script_context.rb +53 -0
- data/lib/opensearch/api/actions/get_script_languages.rb +53 -0
- data/lib/opensearch/api/actions/get_source.rb +87 -0
- data/lib/opensearch/api/actions/index.rb +96 -0
- data/lib/opensearch/api/actions/indices/add_block.rb +78 -0
- data/lib/opensearch/api/actions/indices/analyze.rb +71 -0
- data/lib/opensearch/api/actions/indices/clear_cache.rb +79 -0
- data/lib/opensearch/api/actions/indices/clone.rb +75 -0
- data/lib/opensearch/api/actions/indices/close.rb +76 -0
- data/lib/opensearch/api/actions/indices/create.rb +71 -0
- data/lib/opensearch/api/actions/indices/delete.rb +78 -0
- data/lib/opensearch/api/actions/indices/delete_alias.rb +72 -0
- data/lib/opensearch/api/actions/indices/delete_index_template.rb +68 -0
- data/lib/opensearch/api/actions/indices/delete_template.rb +72 -0
- data/lib/opensearch/api/actions/indices/disk_usage.rb +76 -0
- data/lib/opensearch/api/actions/indices/exists.rb +79 -0
- data/lib/opensearch/api/actions/indices/exists_alias.rb +82 -0
- data/lib/opensearch/api/actions/indices/exists_index_template.rb +72 -0
- data/lib/opensearch/api/actions/indices/exists_template.rb +75 -0
- data/lib/opensearch/api/actions/indices/field_usage_stats.rb +74 -0
- data/lib/opensearch/api/actions/indices/flush.rb +74 -0
- data/lib/opensearch/api/actions/indices/forcemerge.rb +76 -0
- data/lib/opensearch/api/actions/indices/get.rb +78 -0
- data/lib/opensearch/api/actions/indices/get_alias.rb +79 -0
- data/lib/opensearch/api/actions/indices/get_field_mapping.rb +83 -0
- data/lib/opensearch/api/actions/indices/get_index_template.rb +72 -0
- data/lib/opensearch/api/actions/indices/get_mapping.rb +81 -0
- data/lib/opensearch/api/actions/indices/get_settings.rb +87 -0
- data/lib/opensearch/api/actions/indices/get_template.rb +72 -0
- data/lib/opensearch/api/actions/indices/get_upgrade.rb +75 -0
- data/lib/opensearch/api/actions/indices/open.rb +76 -0
- data/lib/opensearch/api/actions/indices/params_registry.rb +69 -0
- data/lib/opensearch/api/actions/indices/put_alias.rb +73 -0
- data/lib/opensearch/api/actions/indices/put_index_template.rb +72 -0
- data/lib/opensearch/api/actions/indices/put_mapping.rb +82 -0
- data/lib/opensearch/api/actions/indices/put_settings.rb +83 -0
- data/lib/opensearch/api/actions/indices/put_template.rb +72 -0
- data/lib/opensearch/api/actions/indices/recovery.rb +68 -0
- data/lib/opensearch/api/actions/indices/refresh.rb +70 -0
- data/lib/opensearch/api/actions/indices/resolve_index.rb +68 -0
- data/lib/opensearch/api/actions/indices/rollover.rb +81 -0
- data/lib/opensearch/api/actions/indices/segments.rb +72 -0
- data/lib/opensearch/api/actions/indices/shard_stores.rb +72 -0
- data/lib/opensearch/api/actions/indices/shrink.rb +77 -0
- data/lib/opensearch/api/actions/indices/simulate_index_template.rb +71 -0
- data/lib/opensearch/api/actions/indices/simulate_template.rb +73 -0
- data/lib/opensearch/api/actions/indices/split.rb +77 -0
- data/lib/opensearch/api/actions/indices/stats.rb +100 -0
- data/lib/opensearch/api/actions/indices/update_aliases.rb +66 -0
- data/lib/opensearch/api/actions/indices/upgrade.rb +79 -0
- data/lib/opensearch/api/actions/indices/validate_query.rb +99 -0
- data/{Gemfile → lib/opensearch/api/actions/info.rb} +19 -8
- data/lib/opensearch/api/actions/ingest/delete_pipeline.rb +68 -0
- data/lib/opensearch/api/actions/ingest/geo_ip_stats.rb +51 -0
- data/lib/opensearch/api/actions/ingest/get_pipeline.rb +70 -0
- data/lib/opensearch/api/actions/ingest/params_registry.rb +69 -0
- data/lib/opensearch/api/actions/ingest/processor_grok.rb +51 -0
- data/lib/opensearch/api/actions/ingest/put_pipeline.rb +70 -0
- data/lib/opensearch/api/actions/ingest/simulate.rb +69 -0
- data/lib/opensearch/api/actions/mget.rb +86 -0
- data/lib/opensearch/api/actions/msearch.rb +105 -0
- data/lib/opensearch/api/actions/msearch_template.rb +89 -0
- data/lib/opensearch/api/actions/mtermvectors.rb +102 -0
- data/lib/opensearch/api/actions/nodes/hot_threads.rb +81 -0
- data/lib/opensearch/api/actions/nodes/info.rb +75 -0
- data/lib/opensearch/api/actions/nodes/params_registry.rb +69 -0
- data/lib/opensearch/api/actions/nodes/reload_secure_settings.rb +67 -0
- data/lib/opensearch/api/actions/nodes/shutdown.rb +65 -0
- data/lib/opensearch/api/actions/nodes/stats.rb +96 -0
- data/lib/opensearch/api/actions/nodes/usage.rb +73 -0
- data/lib/opensearch/api/actions/params_registry.rb +67 -0
- data/lib/opensearch/api/actions/ping.rb +54 -0
- data/lib/opensearch/api/actions/put_script.rb +76 -0
- data/lib/opensearch/api/actions/rank_eval.rb +77 -0
- data/lib/opensearch/api/actions/reindex.rb +76 -0
- data/lib/opensearch/api/actions/reindex_rethrottle.rb +62 -0
- data/{spec/integration/security_disabled/validation_integration_spec.rb → lib/opensearch/api/actions/remote/info.rb} +17 -11
- data/lib/opensearch/api/actions/remote_store/restore.rb +43 -0
- data/lib/opensearch/api/actions/render_search_template.rb +62 -0
- data/lib/opensearch/api/actions/scripts_painless_execute.rb +59 -0
- data/lib/opensearch/api/actions/scroll.rb +78 -0
- data/lib/opensearch/api/actions/search.rb +159 -0
- data/lib/opensearch/api/actions/search_shards.rb +74 -0
- data/lib/opensearch/api/actions/search_template.rb +96 -0
- data/lib/opensearch/api/actions/security/change_password.rb +39 -0
- data/lib/opensearch/api/actions/security/create_action_group.rb +42 -0
- data/lib/opensearch/api/actions/security/create_role.rb +43 -0
- data/lib/opensearch/api/actions/security/create_role_mapping.rb +43 -0
- data/lib/opensearch/api/actions/security/create_tenant.rb +42 -0
- data/lib/opensearch/api/actions/security/create_user.rb +43 -0
- data/lib/opensearch/api/actions/security/delete_action_group.rb +41 -0
- data/lib/opensearch/api/actions/security/delete_distinguished_names.rb +41 -0
- data/lib/opensearch/api/actions/security/delete_role.rb +41 -0
- data/lib/opensearch/api/actions/security/delete_role_mapping.rb +41 -0
- data/lib/opensearch/api/actions/security/delete_tenant.rb +41 -0
- data/lib/opensearch/api/actions/security/delete_user.rb +41 -0
- data/lib/opensearch/api/actions/security/flush_cache.rb +36 -0
- data/lib/opensearch/api/actions/security/get_account_details.rb +36 -0
- data/lib/opensearch/api/actions/security/get_action_group.rb +41 -0
- data/lib/opensearch/api/actions/security/get_action_groups.rb +36 -0
- data/lib/opensearch/api/actions/security/get_audit_configuration.rb +36 -0
- data/lib/opensearch/api/actions/security/get_certificates.rb +36 -0
- data/lib/opensearch/api/actions/security/get_configuration.rb +36 -0
- data/lib/opensearch/api/actions/security/get_distinguished_names.rb +39 -0
- data/lib/opensearch/api/actions/security/get_role.rb +41 -0
- data/lib/opensearch/api/actions/security/get_role_mapping.rb +41 -0
- data/lib/opensearch/api/actions/security/get_role_mappings.rb +36 -0
- data/lib/opensearch/api/actions/security/get_roles.rb +36 -0
- data/lib/opensearch/api/actions/security/get_tenant.rb +41 -0
- data/lib/opensearch/api/actions/security/get_tenants.rb +36 -0
- data/lib/opensearch/api/actions/security/get_user.rb +41 -0
- data/lib/opensearch/api/actions/security/get_users.rb +36 -0
- data/lib/opensearch/api/actions/security/health.rb +36 -0
- data/lib/opensearch/api/actions/security/patch_action_group.rb +42 -0
- data/lib/opensearch/api/actions/security/patch_action_groups.rb +37 -0
- data/lib/opensearch/api/actions/security/patch_audit_configuration.rb +39 -0
- data/lib/opensearch/api/actions/security/patch_configuration.rb +39 -0
- data/lib/opensearch/api/actions/security/patch_distinguished_names.rb +39 -0
- data/lib/opensearch/api/actions/security/patch_role.rb +43 -0
- data/lib/opensearch/api/actions/security/patch_role_mapping.rb +43 -0
- data/lib/opensearch/api/actions/security/patch_role_mappings.rb +39 -0
- data/lib/opensearch/api/actions/security/patch_roles.rb +39 -0
- data/lib/opensearch/api/actions/security/patch_tenant.rb +43 -0
- data/lib/opensearch/api/actions/security/patch_tenants.rb +39 -0
- data/lib/opensearch/api/actions/security/patch_user.rb +43 -0
- data/lib/opensearch/api/actions/security/patch_users.rb +39 -0
- data/lib/opensearch/api/actions/security/reload_http_certificates.rb +36 -0
- data/lib/opensearch/api/actions/security/reload_transport_certificates.rb +36 -0
- data/lib/opensearch/api/actions/security/update_audit_configuration.rb +39 -0
- data/lib/opensearch/api/actions/security/update_configuration.rb +39 -0
- data/lib/opensearch/api/actions/security/update_distinguished_names.rb +42 -0
- data/lib/opensearch/api/actions/shutdown/delete_node.rb +60 -0
- data/lib/opensearch/api/actions/shutdown/get_node.rb +62 -0
- data/lib/opensearch/api/actions/shutdown/params_registry.rb +69 -0
- data/lib/opensearch/api/actions/shutdown/put_node.rb +62 -0
- data/lib/opensearch/api/actions/snapshot/cleanup_repository.rb +68 -0
- data/lib/opensearch/api/actions/snapshot/clone.rb +76 -0
- data/lib/opensearch/api/actions/snapshot/create.rb +73 -0
- data/lib/opensearch/api/actions/snapshot/create_repository.rb +72 -0
- data/lib/opensearch/api/actions/snapshot/delete.rb +74 -0
- data/lib/opensearch/api/actions/snapshot/delete_repository.rb +72 -0
- data/lib/opensearch/api/actions/snapshot/get.rb +82 -0
- data/lib/opensearch/api/actions/snapshot/get_features.rb +61 -0
- data/lib/opensearch/api/actions/snapshot/get_repository.rb +73 -0
- data/lib/opensearch/api/actions/snapshot/params_registry.rb +69 -0
- data/lib/opensearch/api/actions/snapshot/repository_analyze.rb +84 -0
- data/lib/opensearch/api/actions/snapshot/restore.rb +73 -0
- data/lib/opensearch/api/actions/snapshot/status.rb +79 -0
- data/lib/opensearch/api/actions/snapshot/verify_repository.rb +68 -0
- data/lib/opensearch/api/actions/tasks/cancel.rb +76 -0
- data/lib/opensearch/api/actions/tasks/get.rb +68 -0
- data/lib/opensearch/api/actions/tasks/list.rb +75 -0
- data/lib/opensearch/api/actions/tasks/params_registry.rb +69 -0
- data/lib/opensearch/api/actions/termvectors.rb +108 -0
- data/lib/opensearch/api/actions/update.rb +99 -0
- data/lib/opensearch/api/actions/update_by_query.rb +137 -0
- data/lib/opensearch/api/actions/update_by_query_rethrottle.rb +62 -0
- data/{spec/integration/security_enabled/validation_integration_spec.rb → lib/opensearch/api/namespace/cat.rb} +19 -12
- data/lib/opensearch/api/namespace/cluster.rb +47 -0
- data/lib/opensearch/api/namespace/common.rb +72 -0
- data/lib/opensearch/api/namespace/dangling_indices.rb +47 -0
- data/lib/opensearch/api/namespace/features.rb +47 -0
- data/lib/opensearch/api/namespace/indices.rb +47 -0
- data/lib/opensearch/api/namespace/ingest.rb +47 -0
- data/lib/opensearch/api/namespace/nodes.rb +47 -0
- data/lib/opensearch/api/namespace/remote.rb +47 -0
- data/lib/opensearch/api/namespace/remote_store.rb +30 -0
- data/lib/opensearch/api/namespace/security.rb +30 -0
- data/lib/opensearch/api/namespace/shutdown.rb +47 -0
- data/lib/opensearch/api/namespace/snapshot.rb +47 -0
- data/lib/opensearch/api/namespace/tasks.rb +47 -0
- data/lib/opensearch/api/utils.rb +296 -0
- data/lib/opensearch/api.rb +103 -0
- data/lib/opensearch/dsl/search/aggregation.rb +112 -0
- data/lib/opensearch/dsl/search/aggregations/avg.rb +49 -0
- data/lib/opensearch/dsl/search/aggregations/cardinality.rb +56 -0
- data/lib/opensearch/dsl/search/aggregations/children.rb +63 -0
- data/lib/opensearch/dsl/search/aggregations/composite.rb +68 -0
- data/lib/opensearch/dsl/search/aggregations/date_histogram.rb +64 -0
- data/lib/opensearch/dsl/search/aggregations/date_range.rb +59 -0
- data/lib/opensearch/dsl/search/aggregations/extended_stats.rb +48 -0
- data/lib/opensearch/dsl/search/aggregations/filter.rb +54 -0
- data/lib/opensearch/dsl/search/aggregations/filters.rb +59 -0
- data/lib/opensearch/dsl/search/aggregations/geo_bounds.rb +68 -0
- data/lib/opensearch/dsl/search/aggregations/geo_distance.rb +63 -0
- data/lib/opensearch/dsl/search/aggregations/geohash_grid.rb +59 -0
- data/lib/opensearch/dsl/search/aggregations/global.rb +52 -0
- data/{spec/integration/security_disabled/client_integration_spec.rb → lib/opensearch/dsl/search/aggregations/histogram.rb} +29 -29
- data/lib/opensearch/dsl/search/aggregations/ip_range.rb +55 -0
- data/lib/opensearch/dsl/search/aggregations/max.rb +49 -0
- data/lib/opensearch/dsl/search/aggregations/min.rb +49 -0
- data/lib/opensearch/dsl/search/aggregations/missing.rb +59 -0
- data/lib/opensearch/dsl/search/aggregations/nested.rb +57 -0
- data/lib/opensearch/dsl/search/aggregations/percentile_ranks.rb +58 -0
- data/lib/opensearch/dsl/search/aggregations/percentiles.rb +57 -0
- data/lib/opensearch/dsl/search/aggregations/pipeline/avg_bucket.rb +58 -0
- data/lib/opensearch/dsl/search/aggregations/pipeline/bucket_script.rb +60 -0
- data/lib/opensearch/dsl/search/aggregations/pipeline/bucket_selector.rb +59 -0
- data/lib/opensearch/dsl/search/aggregations/pipeline/bucket_sort.rb +111 -0
- data/lib/opensearch/dsl/search/aggregations/pipeline/cumulative_sum.rb +57 -0
- data/lib/opensearch/dsl/search/aggregations/pipeline/derivative.rb +58 -0
- data/lib/opensearch/dsl/search/aggregations/pipeline/extended_stats_bucket.rb +58 -0
- data/lib/opensearch/dsl/search/aggregations/pipeline/max_bucket.rb +58 -0
- data/lib/opensearch/dsl/search/aggregations/pipeline/min_bucket.rb +58 -0
- data/lib/opensearch/dsl/search/aggregations/pipeline/moving_avg.rb +66 -0
- data/lib/opensearch/dsl/search/aggregations/pipeline/percentiles_bucket.rb +60 -0
- data/lib/opensearch/dsl/search/aggregations/pipeline/serial_diff.rb +60 -0
- data/lib/opensearch/dsl/search/aggregations/pipeline/stats_bucket.rb +58 -0
- data/lib/opensearch/dsl/search/aggregations/pipeline/sum_bucket.rb +58 -0
- data/lib/opensearch/dsl/search/aggregations/range.rb +77 -0
- data/lib/opensearch/dsl/search/aggregations/reverse_nested.rb +61 -0
- data/lib/opensearch/dsl/search/aggregations/scripted_metric.rb +63 -0
- data/lib/opensearch/dsl/search/aggregations/significant_terms.rb +69 -0
- data/lib/opensearch/dsl/search/aggregations/stats.rb +61 -0
- data/lib/opensearch/dsl/search/aggregations/sum.rb +49 -0
- data/lib/opensearch/dsl/search/aggregations/terms.rb +66 -0
- data/lib/opensearch/dsl/search/aggregations/top_hits.rb +59 -0
- data/lib/opensearch/dsl/search/aggregations/value_count.rb +49 -0
- data/lib/opensearch/dsl/search/base_aggregation_component.rb +83 -0
- data/lib/opensearch/dsl/search/base_component.rb +191 -0
- data/lib/opensearch/dsl/search/base_compound_filter_component.rb +124 -0
- data/lib/opensearch/dsl/search/filter.rb +82 -0
- data/lib/opensearch/dsl/search/filters/and.rb +70 -0
- data/lib/opensearch/dsl/search/filters/bool.rb +103 -0
- data/lib/opensearch/dsl/search/filters/exists.rb +56 -0
- data/lib/opensearch/dsl/search/filters/geo_bounding_box.rb +69 -0
- data/lib/opensearch/dsl/search/filters/geo_distance.rb +81 -0
- data/lib/opensearch/dsl/search/filters/geo_distance_range.rb +56 -0
- data/lib/opensearch/dsl/search/filters/geo_polygon.rb +65 -0
- data/lib/opensearch/dsl/search/filters/geo_shape.rb +59 -0
- data/lib/opensearch/dsl/search/filters/geohash_cell.rb +71 -0
- data/lib/opensearch/dsl/search/filters/has_child.rb +98 -0
- data/lib/opensearch/dsl/search/filters/has_parent.rb +97 -0
- data/lib/opensearch/dsl/search/filters/ids.rb +56 -0
- data/lib/opensearch/dsl/search/filters/indices.rb +101 -0
- data/lib/opensearch/dsl/search/filters/limit.rb +55 -0
- data/lib/opensearch/dsl/search/filters/match_all.rb +52 -0
- data/lib/opensearch/dsl/search/filters/missing.rb +58 -0
- data/lib/opensearch/dsl/search/filters/nested.rb +91 -0
- data/lib/opensearch/dsl/search/filters/not.rb +98 -0
- data/lib/opensearch/dsl/search/filters/or.rb +70 -0
- data/lib/opensearch/dsl/search/filters/prefix.rb +53 -0
- data/lib/opensearch/dsl/search/filters/query.rb +77 -0
- data/lib/opensearch/dsl/search/filters/range.rb +63 -0
- data/lib/opensearch/dsl/search/filters/regexp.rb +58 -0
- data/lib/opensearch/dsl/search/filters/script.rb +56 -0
- data/lib/opensearch/dsl/search/filters/term.rb +55 -0
- data/lib/opensearch/dsl/search/filters/terms.rb +56 -0
- data/lib/opensearch/dsl/search/filters/type.rb +58 -0
- data/lib/opensearch/dsl/search/highlight.rb +117 -0
- data/lib/opensearch/dsl/search/options.rb +80 -0
- data/lib/opensearch/dsl/search/queries/bool.rb +110 -0
- data/lib/opensearch/dsl/search/queries/boosting.rb +57 -0
- data/lib/opensearch/dsl/search/queries/common.rb +62 -0
- data/lib/opensearch/dsl/search/queries/constant_score.rb +90 -0
- data/lib/opensearch/dsl/search/queries/dis_max.rb +59 -0
- data/lib/opensearch/dsl/search/queries/exists.rb +68 -0
- data/lib/opensearch/dsl/search/queries/filtered.rb +101 -0
- data/lib/opensearch/dsl/search/queries/function_score.rb +122 -0
- data/lib/opensearch/dsl/search/queries/fuzzy.rb +69 -0
- data/lib/opensearch/dsl/search/queries/fuzzy_like_this.rb +61 -0
- data/lib/opensearch/dsl/search/queries/fuzzy_like_this_field.rb +60 -0
- data/lib/opensearch/dsl/search/queries/geo_shape.rb +54 -0
- data/lib/opensearch/dsl/search/queries/has_child.rb +82 -0
- data/lib/opensearch/dsl/search/queries/has_parent.rb +82 -0
- data/lib/opensearch/dsl/search/queries/ids.rb +52 -0
- data/lib/opensearch/dsl/search/queries/indices.rb +58 -0
- data/lib/opensearch/dsl/search/queries/match.rb +67 -0
- data/lib/opensearch/dsl/search/queries/match_all.rb +50 -0
- data/lib/opensearch/dsl/search/queries/match_phrase.rb +56 -0
- data/lib/opensearch/dsl/search/queries/match_phrase_prefix.rb +55 -0
- data/lib/opensearch/dsl/search/queries/more_like_this.rb +88 -0
- data/lib/opensearch/dsl/search/queries/multi_match.rb +69 -0
- data/lib/opensearch/dsl/search/queries/nested.rb +80 -0
- data/lib/opensearch/dsl/search/queries/prefix.rb +54 -0
- data/lib/opensearch/dsl/search/queries/query_string.rb +75 -0
- data/lib/opensearch/dsl/search/queries/range.rb +71 -0
- data/lib/opensearch/dsl/search/queries/regexp.rb +55 -0
- data/lib/opensearch/dsl/search/queries/simple_query_string.rb +64 -0
- data/lib/opensearch/dsl/search/queries/span_first.rb +52 -0
- data/lib/opensearch/dsl/search/queries/span_multi.rb +52 -0
- data/lib/opensearch/dsl/search/queries/span_near.rb +56 -0
- data/lib/opensearch/dsl/search/queries/span_not.rb +57 -0
- data/lib/opensearch/dsl/search/queries/span_or.rb +52 -0
- data/lib/opensearch/dsl/search/queries/span_term.rb +50 -0
- data/lib/opensearch/dsl/search/queries/template.rb +55 -0
- data/lib/opensearch/dsl/search/queries/term.rb +50 -0
- data/lib/opensearch/dsl/search/queries/terms.rb +51 -0
- data/lib/opensearch/dsl/search/queries/top_children.rb +82 -0
- data/lib/opensearch/dsl/search/queries/wildcard.rb +54 -0
- data/lib/opensearch/dsl/search/query.rb +82 -0
- data/lib/opensearch/dsl/search/sort.rb +83 -0
- data/lib/opensearch/dsl/search/suggest.rb +52 -0
- data/lib/opensearch/dsl/search.rb +282 -0
- data/lib/opensearch/dsl/utils.rb +49 -0
- data/lib/opensearch/dsl.rb +69 -0
- data/lib/opensearch/transport/client.rb +362 -0
- data/lib/opensearch/transport/redacted.rb +82 -0
- data/lib/opensearch/transport/transport/base.rb +453 -0
- data/lib/opensearch/transport/transport/connections/collection.rb +134 -0
- data/lib/opensearch/transport/transport/connections/connection.rb +168 -0
- data/lib/opensearch/transport/transport/connections/selector.rb +100 -0
- data/lib/opensearch/transport/transport/errors.rb +97 -0
- data/lib/opensearch/transport/transport/http/curb.rb +139 -0
- data/lib/opensearch/transport/transport/http/faraday.rb +101 -0
- data/lib/opensearch/transport/transport/http/manticore.rb +188 -0
- data/lib/opensearch/transport/transport/loggable.rb +92 -0
- data/lib/opensearch/transport/transport/response.rb +47 -0
- data/lib/opensearch/transport/transport/serializer/multi_json.rb +61 -0
- data/lib/opensearch/transport/transport/sniffer.rb +110 -0
- data/lib/opensearch/transport.rb +44 -0
- data/lib/opensearch/version.rb +1 -1
- data/lib/opensearch-dsl.rb +27 -0
- data/lib/opensearch.rb +12 -13
- data/opensearch-ruby.gemspec +69 -0
- data/spec/spec_helper.rb +95 -4
- data/test/dsl/integration/search_aggregation_children_test.rb +91 -0
- data/test/dsl/integration/search_aggregation_geo_test.rb +112 -0
- data/test/dsl/integration/search_aggregation_nested_test.rb +129 -0
- data/test/dsl/integration/search_aggregations_test.rb +288 -0
- data/test/dsl/integration/search_filters_test.rb +290 -0
- data/test/dsl/integration/search_options_test.rb +54 -0
- data/test/dsl/integration/search_query_test.rb +98 -0
- data/test/dsl/integration/search_size_from_test.rb +71 -0
- data/test/dsl/integration/search_sort_test.rb +57 -0
- data/test/dsl/integration/search_suggest_test.rb +107 -0
- data/test/dsl/integration/search_test.rb +81 -0
- data/test/dsl/test_helper.rb +95 -0
- data/test/dsl/unit/dsl_test.rb +44 -0
- data/test/dsl/unit/search_aggregation_test.rb +96 -0
- data/test/dsl/unit/search_base_aggregation_component_test.rb +66 -0
- data/test/dsl/unit/search_base_component_test.rb +210 -0
- data/test/dsl/unit/search_filter_test.rb +84 -0
- data/test/dsl/unit/search_highlight_test.rb +103 -0
- data/test/dsl/unit/search_options_test.rb +114 -0
- data/test/dsl/unit/search_query_test.rb +88 -0
- data/test/dsl/unit/search_size_from_test.rb +68 -0
- data/test/dsl/unit/search_sort_test.rb +91 -0
- data/test/dsl/unit/search_suggest_test.rb +46 -0
- data/test/dsl/unit/search_test.rb +268 -0
- data/test/dsl/unit/utils_test.rb +47 -0
- data/test/transport/integration/transport_test.rb +117 -0
- data/test/transport/profile/client_benchmark_test.rb +141 -0
- data/test/transport/test_helper.rb +97 -0
- data/test/transport/unit/connection_test.rb +145 -0
- data/test/transport/unit/response_test.rb +41 -0
- data/test/transport/unit/serializer_test.rb +42 -0
- data/test/transport/unit/transport_base_test.rb +673 -0
- data/test/transport/unit/transport_curb_test.rb +143 -0
- data/test/transport/unit/transport_faraday_test.rb +237 -0
- data/test/transport/unit/transport_manticore_test.rb +191 -0
- data.tar.gz.sig +0 -0
- metadata +491 -191
- metadata.gz.sig +0 -0
- data/.gitignore +0 -21
- data/Rakefile +0 -69
- data/opensearch.gemspec +0 -81
- data/spec/integration/security_enabled/client_integration_spec.rb +0 -43
- data/spec/unit/opensearch_product_validation_spec.rb +0 -198
- /data/{LICENSE → LICENSE.txt} +0 -0
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
# SPDX-License-Identifier: Apache-2.0
|
|
2
|
+
#
|
|
3
|
+
# The OpenSearch Contributors require contributions made to
|
|
4
|
+
# this file be licensed under the Apache-2.0 license or a
|
|
5
|
+
# compatible open source license.
|
|
6
|
+
#
|
|
7
|
+
# Modifications Copyright OpenSearch Contributors. See
|
|
8
|
+
# GitHub history for details.
|
|
9
|
+
#
|
|
10
|
+
# Licensed to Elasticsearch B.V. under one or more contributor
|
|
11
|
+
# license agreements. See the NOTICE file distributed with
|
|
12
|
+
# this work for additional information regarding copyright
|
|
13
|
+
# ownership. Elasticsearch B.V. licenses this file to you under
|
|
14
|
+
# the Apache License, Version 2.0 (the "License"); you may
|
|
15
|
+
# not use this file except in compliance with the License.
|
|
16
|
+
# You may obtain a copy of the License at
|
|
17
|
+
#
|
|
18
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
19
|
+
#
|
|
20
|
+
# Unless required by applicable law or agreed to in writing,
|
|
21
|
+
# software distributed under the License is distributed on an
|
|
22
|
+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
23
|
+
# KIND, either express or implied. See the License for the
|
|
24
|
+
# specific language governing permissions and limitations
|
|
25
|
+
# under the License.
|
|
26
|
+
|
|
27
|
+
module OpenSearch
|
|
28
|
+
module API
|
|
29
|
+
module Actions
|
|
30
|
+
# Returns a script.
|
|
31
|
+
#
|
|
32
|
+
# @option arguments [String] :id Script ID
|
|
33
|
+
# @option arguments [Time] :master_timeout (DEPRECATED: use cluster_manager_timeout instead) Specify timeout for connection to master
|
|
34
|
+
# @option arguments [Time] :cluster_manager_timeout Specify timeout for connection to cluster_manager
|
|
35
|
+
# @option arguments [Hash] :headers Custom HTTP headers
|
|
36
|
+
#
|
|
37
|
+
#
|
|
38
|
+
def get_script(arguments = {})
|
|
39
|
+
raise ArgumentError, "Required argument 'id' missing" unless arguments[:id]
|
|
40
|
+
|
|
41
|
+
headers = arguments.delete(:headers) || {}
|
|
42
|
+
|
|
43
|
+
arguments = arguments.clone
|
|
44
|
+
|
|
45
|
+
_id = arguments.delete(:id)
|
|
46
|
+
|
|
47
|
+
method = OpenSearch::API::HTTP_GET
|
|
48
|
+
path = "_scripts/#{Utils.__listify(_id)}"
|
|
49
|
+
params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__)
|
|
50
|
+
|
|
51
|
+
body = nil
|
|
52
|
+
perform_request(method, path, params, body, headers).body
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
# Register this action with its valid params when the module is loaded.
|
|
56
|
+
#
|
|
57
|
+
# @since 6.2.0
|
|
58
|
+
ParamsRegistry.register(:get_script, %i[
|
|
59
|
+
master_timeout
|
|
60
|
+
cluster_manager_timeout
|
|
61
|
+
].freeze)
|
|
62
|
+
end
|
|
63
|
+
end
|
|
64
|
+
end
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
# SPDX-License-Identifier: Apache-2.0
|
|
2
|
+
#
|
|
3
|
+
# The OpenSearch Contributors require contributions made to
|
|
4
|
+
# this file be licensed under the Apache-2.0 license or a
|
|
5
|
+
# compatible open source license.
|
|
6
|
+
#
|
|
7
|
+
# Modifications Copyright OpenSearch Contributors. See
|
|
8
|
+
# GitHub history for details.
|
|
9
|
+
#
|
|
10
|
+
# Licensed to Elasticsearch B.V. under one or more contributor
|
|
11
|
+
# license agreements. See the NOTICE file distributed with
|
|
12
|
+
# this work for additional information regarding copyright
|
|
13
|
+
# ownership. Elasticsearch B.V. licenses this file to you under
|
|
14
|
+
# the Apache License, Version 2.0 (the "License"); you may
|
|
15
|
+
# not use this file except in compliance with the License.
|
|
16
|
+
# You may obtain a copy of the License at
|
|
17
|
+
#
|
|
18
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
19
|
+
#
|
|
20
|
+
# Unless required by applicable law or agreed to in writing,
|
|
21
|
+
# software distributed under the License is distributed on an
|
|
22
|
+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
23
|
+
# KIND, either express or implied. See the License for the
|
|
24
|
+
# specific language governing permissions and limitations
|
|
25
|
+
# under the License.
|
|
26
|
+
|
|
27
|
+
module OpenSearch
|
|
28
|
+
module API
|
|
29
|
+
module Actions
|
|
30
|
+
# Returns all script contexts.
|
|
31
|
+
# This functionality is Experimental and may be changed or removed
|
|
32
|
+
# completely in a future release. OpenSearch will take a best effort approach
|
|
33
|
+
# to fix any issues, but experimental features are not subject to the
|
|
34
|
+
# support SLA of official GA features.
|
|
35
|
+
#
|
|
36
|
+
# @option arguments [Hash] :headers Custom HTTP headers
|
|
37
|
+
#
|
|
38
|
+
#
|
|
39
|
+
def get_script_context(arguments = {})
|
|
40
|
+
headers = arguments.delete(:headers) || {}
|
|
41
|
+
|
|
42
|
+
arguments = arguments.clone
|
|
43
|
+
|
|
44
|
+
method = OpenSearch::API::HTTP_GET
|
|
45
|
+
path = '_script_context'
|
|
46
|
+
params = {}
|
|
47
|
+
|
|
48
|
+
body = nil
|
|
49
|
+
perform_request(method, path, params, body, headers).body
|
|
50
|
+
end
|
|
51
|
+
end
|
|
52
|
+
end
|
|
53
|
+
end
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
# SPDX-License-Identifier: Apache-2.0
|
|
2
|
+
#
|
|
3
|
+
# The OpenSearch Contributors require contributions made to
|
|
4
|
+
# this file be licensed under the Apache-2.0 license or a
|
|
5
|
+
# compatible open source license.
|
|
6
|
+
#
|
|
7
|
+
# Modifications Copyright OpenSearch Contributors. See
|
|
8
|
+
# GitHub history for details.
|
|
9
|
+
#
|
|
10
|
+
# Licensed to Elasticsearch B.V. under one or more contributor
|
|
11
|
+
# license agreements. See the NOTICE file distributed with
|
|
12
|
+
# this work for additional information regarding copyright
|
|
13
|
+
# ownership. Elasticsearch B.V. licenses this file to you under
|
|
14
|
+
# the Apache License, Version 2.0 (the "License"); you may
|
|
15
|
+
# not use this file except in compliance with the License.
|
|
16
|
+
# You may obtain a copy of the License at
|
|
17
|
+
#
|
|
18
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
19
|
+
#
|
|
20
|
+
# Unless required by applicable law or agreed to in writing,
|
|
21
|
+
# software distributed under the License is distributed on an
|
|
22
|
+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
23
|
+
# KIND, either express or implied. See the License for the
|
|
24
|
+
# specific language governing permissions and limitations
|
|
25
|
+
# under the License.
|
|
26
|
+
|
|
27
|
+
module OpenSearch
|
|
28
|
+
module API
|
|
29
|
+
module Actions
|
|
30
|
+
# Returns available script types, languages and contexts
|
|
31
|
+
# This functionality is Experimental and may be changed or removed
|
|
32
|
+
# completely in a future release. OpenSearch will take a best effort approach
|
|
33
|
+
# to fix any issues, but experimental features are not subject to the
|
|
34
|
+
# support SLA of official GA features.
|
|
35
|
+
#
|
|
36
|
+
# @option arguments [Hash] :headers Custom HTTP headers
|
|
37
|
+
#
|
|
38
|
+
#
|
|
39
|
+
def get_script_languages(arguments = {})
|
|
40
|
+
headers = arguments.delete(:headers) || {}
|
|
41
|
+
|
|
42
|
+
arguments = arguments.clone
|
|
43
|
+
|
|
44
|
+
method = OpenSearch::API::HTTP_GET
|
|
45
|
+
path = '_script_language'
|
|
46
|
+
params = {}
|
|
47
|
+
|
|
48
|
+
body = nil
|
|
49
|
+
perform_request(method, path, params, body, headers).body
|
|
50
|
+
end
|
|
51
|
+
end
|
|
52
|
+
end
|
|
53
|
+
end
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
# SPDX-License-Identifier: Apache-2.0
|
|
2
|
+
#
|
|
3
|
+
# The OpenSearch Contributors require contributions made to
|
|
4
|
+
# this file be licensed under the Apache-2.0 license or a
|
|
5
|
+
# compatible open source license.
|
|
6
|
+
#
|
|
7
|
+
# Modifications Copyright OpenSearch Contributors. See
|
|
8
|
+
# GitHub history for details.
|
|
9
|
+
#
|
|
10
|
+
# Licensed to Elasticsearch B.V. under one or more contributor
|
|
11
|
+
# license agreements. See the NOTICE file distributed with
|
|
12
|
+
# this work for additional information regarding copyright
|
|
13
|
+
# ownership. Elasticsearch B.V. licenses this file to you under
|
|
14
|
+
# the Apache License, Version 2.0 (the "License"); you may
|
|
15
|
+
# not use this file except in compliance with the License.
|
|
16
|
+
# You may obtain a copy of the License at
|
|
17
|
+
#
|
|
18
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
19
|
+
#
|
|
20
|
+
# Unless required by applicable law or agreed to in writing,
|
|
21
|
+
# software distributed under the License is distributed on an
|
|
22
|
+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
23
|
+
# KIND, either express or implied. See the License for the
|
|
24
|
+
# specific language governing permissions and limitations
|
|
25
|
+
# under the License.
|
|
26
|
+
|
|
27
|
+
module OpenSearch
|
|
28
|
+
module API
|
|
29
|
+
module Actions
|
|
30
|
+
# Returns the source of a document.
|
|
31
|
+
#
|
|
32
|
+
# @option arguments [String] :id The document ID
|
|
33
|
+
# @option arguments [String] :index The name of the index
|
|
34
|
+
# @option arguments [String] :preference Specify the node or shard the operation should be performed on (default: random)
|
|
35
|
+
# @option arguments [Boolean] :realtime Specify whether to perform the operation in realtime or search mode
|
|
36
|
+
# @option arguments [Boolean] :refresh Refresh the shard containing the document before performing the operation
|
|
37
|
+
# @option arguments [String] :routing Specific routing value
|
|
38
|
+
# @option arguments [List] :_source True or false to return the _source field or not, or a list of fields to return
|
|
39
|
+
# @option arguments [List] :_source_excludes A list of fields to exclude from the returned _source field
|
|
40
|
+
# @option arguments [List] :_source_includes A list of fields to extract and return from the _source field
|
|
41
|
+
# @option arguments [Number] :version Explicit version number for concurrency control
|
|
42
|
+
# @option arguments [String] :version_type Specific version type (options: internal, external, external_gte, force)
|
|
43
|
+
# @option arguments [Hash] :headers Custom HTTP headers
|
|
44
|
+
#
|
|
45
|
+
# *Deprecation notice*:
|
|
46
|
+
# Specifying types in urls has been deprecated
|
|
47
|
+
# Deprecated since version 7.0.0
|
|
48
|
+
#
|
|
49
|
+
#
|
|
50
|
+
#
|
|
51
|
+
def get_source(arguments = {})
|
|
52
|
+
raise ArgumentError, "Required argument 'index' missing" unless arguments[:index]
|
|
53
|
+
raise ArgumentError, "Required argument 'id' missing" unless arguments[:id]
|
|
54
|
+
|
|
55
|
+
headers = arguments.delete(:headers) || {}
|
|
56
|
+
|
|
57
|
+
arguments = arguments.clone
|
|
58
|
+
|
|
59
|
+
_id = arguments.delete(:id)
|
|
60
|
+
|
|
61
|
+
_index = arguments.delete(:index)
|
|
62
|
+
|
|
63
|
+
method = OpenSearch::API::HTTP_GET
|
|
64
|
+
path = "#{Utils.__listify(_index)}/_source/#{Utils.__listify(_id)}"
|
|
65
|
+
params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__)
|
|
66
|
+
|
|
67
|
+
body = nil
|
|
68
|
+
perform_request(method, path, params, body, headers).body
|
|
69
|
+
end
|
|
70
|
+
|
|
71
|
+
# Register this action with its valid params when the module is loaded.
|
|
72
|
+
#
|
|
73
|
+
# @since 6.2.0
|
|
74
|
+
ParamsRegistry.register(:get_source, %i[
|
|
75
|
+
preference
|
|
76
|
+
realtime
|
|
77
|
+
refresh
|
|
78
|
+
routing
|
|
79
|
+
_source
|
|
80
|
+
_source_excludes
|
|
81
|
+
_source_includes
|
|
82
|
+
version
|
|
83
|
+
version_type
|
|
84
|
+
].freeze)
|
|
85
|
+
end
|
|
86
|
+
end
|
|
87
|
+
end
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
# SPDX-License-Identifier: Apache-2.0
|
|
2
|
+
#
|
|
3
|
+
# The OpenSearch Contributors require contributions made to
|
|
4
|
+
# this file be licensed under the Apache-2.0 license or a
|
|
5
|
+
# compatible open source license.
|
|
6
|
+
#
|
|
7
|
+
# Modifications Copyright OpenSearch Contributors. See
|
|
8
|
+
# GitHub history for details.
|
|
9
|
+
#
|
|
10
|
+
# Licensed to Elasticsearch B.V. under one or more contributor
|
|
11
|
+
# license agreements. See the NOTICE file distributed with
|
|
12
|
+
# this work for additional information regarding copyright
|
|
13
|
+
# ownership. Elasticsearch B.V. licenses this file to you under
|
|
14
|
+
# the Apache License, Version 2.0 (the "License"); you may
|
|
15
|
+
# not use this file except in compliance with the License.
|
|
16
|
+
# You may obtain a copy of the License at
|
|
17
|
+
#
|
|
18
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
19
|
+
#
|
|
20
|
+
# Unless required by applicable law or agreed to in writing,
|
|
21
|
+
# software distributed under the License is distributed on an
|
|
22
|
+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
23
|
+
# KIND, either express or implied. See the License for the
|
|
24
|
+
# specific language governing permissions and limitations
|
|
25
|
+
# under the License.
|
|
26
|
+
|
|
27
|
+
module OpenSearch
|
|
28
|
+
module API
|
|
29
|
+
module Actions
|
|
30
|
+
# Creates or updates a document in an index.
|
|
31
|
+
#
|
|
32
|
+
# @option arguments [String] :id Document ID
|
|
33
|
+
# @option arguments [String] :index The name of the index
|
|
34
|
+
# @option arguments [String] :wait_for_active_shards Sets the number of shard copies that must be active before proceeding with the index operation. Defaults to 1, meaning the primary shard only. Set to `all` for all shard copies, otherwise set to any non-negative value less than or equal to the total number of copies for the shard (number of replicas + 1)
|
|
35
|
+
# @option arguments [String] :op_type Explicit operation type. Defaults to `index` for requests with an explicit document ID, and to `create`for requests without an explicit document ID (options: index, create)
|
|
36
|
+
# @option arguments [String] :refresh If `true` then refresh the affected shards to make this operation visible to search, if `wait_for` then wait for a refresh to make this operation visible to search, if `false` (the default) then do nothing with refreshes. (options: true, false, wait_for)
|
|
37
|
+
# @option arguments [String] :routing Specific routing value
|
|
38
|
+
# @option arguments [Time] :timeout Explicit operation timeout
|
|
39
|
+
# @option arguments [Number] :version Explicit version number for concurrency control
|
|
40
|
+
# @option arguments [String] :version_type Specific version type (options: internal, external, external_gte)
|
|
41
|
+
# @option arguments [Number] :if_seq_no only perform the index operation if the last operation that has changed the document has the specified sequence number
|
|
42
|
+
# @option arguments [Number] :if_primary_term only perform the index operation if the last operation that has changed the document has the specified primary term
|
|
43
|
+
# @option arguments [String] :pipeline The pipeline id to preprocess incoming documents with
|
|
44
|
+
# @option arguments [Boolean] :require_alias When true, requires destination to be an alias. Default is false
|
|
45
|
+
# @option arguments [Hash] :headers Custom HTTP headers
|
|
46
|
+
# @option arguments [Hash] :body The document (*Required*)
|
|
47
|
+
#
|
|
48
|
+
# *Deprecation notice*:
|
|
49
|
+
# Specifying types in urls has been deprecated
|
|
50
|
+
# Deprecated since version 7.0.0
|
|
51
|
+
#
|
|
52
|
+
#
|
|
53
|
+
#
|
|
54
|
+
def index(arguments = {})
|
|
55
|
+
raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
|
|
56
|
+
raise ArgumentError, "Required argument 'index' missing" unless arguments[:index]
|
|
57
|
+
|
|
58
|
+
headers = arguments.delete(:headers) || {}
|
|
59
|
+
|
|
60
|
+
arguments = arguments.clone
|
|
61
|
+
|
|
62
|
+
_id = arguments.delete(:id)
|
|
63
|
+
|
|
64
|
+
_index = arguments.delete(:index)
|
|
65
|
+
|
|
66
|
+
method = _id ? OpenSearch::API::HTTP_PUT : OpenSearch::API::HTTP_POST
|
|
67
|
+
path = if _index && _id
|
|
68
|
+
"#{Utils.__listify(_index)}/_doc/#{Utils.__listify(_id)}"
|
|
69
|
+
else
|
|
70
|
+
"#{Utils.__listify(_index)}/_doc"
|
|
71
|
+
end
|
|
72
|
+
params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__)
|
|
73
|
+
|
|
74
|
+
body = arguments[:body]
|
|
75
|
+
perform_request(method, path, params, body, headers).body
|
|
76
|
+
end
|
|
77
|
+
|
|
78
|
+
# Register this action with its valid params when the module is loaded.
|
|
79
|
+
#
|
|
80
|
+
# @since 6.2.0
|
|
81
|
+
ParamsRegistry.register(:index, %i[
|
|
82
|
+
wait_for_active_shards
|
|
83
|
+
op_type
|
|
84
|
+
refresh
|
|
85
|
+
routing
|
|
86
|
+
timeout
|
|
87
|
+
version
|
|
88
|
+
version_type
|
|
89
|
+
if_seq_no
|
|
90
|
+
if_primary_term
|
|
91
|
+
pipeline
|
|
92
|
+
require_alias
|
|
93
|
+
].freeze)
|
|
94
|
+
end
|
|
95
|
+
end
|
|
96
|
+
end
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
# SPDX-License-Identifier: Apache-2.0
|
|
2
|
+
#
|
|
3
|
+
# The OpenSearch Contributors require contributions made to
|
|
4
|
+
# this file be licensed under the Apache-2.0 license or a
|
|
5
|
+
# compatible open source license.
|
|
6
|
+
#
|
|
7
|
+
# Modifications Copyright OpenSearch Contributors. See
|
|
8
|
+
# GitHub history for details.
|
|
9
|
+
#
|
|
10
|
+
# Licensed to Elasticsearch B.V. under one or more contributor
|
|
11
|
+
# license agreements. See the NOTICE file distributed with
|
|
12
|
+
# this work for additional information regarding copyright
|
|
13
|
+
# ownership. Elasticsearch B.V. licenses this file to you under
|
|
14
|
+
# the Apache License, Version 2.0 (the "License"); you may
|
|
15
|
+
# not use this file except in compliance with the License.
|
|
16
|
+
# You may obtain a copy of the License at
|
|
17
|
+
#
|
|
18
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
19
|
+
#
|
|
20
|
+
# Unless required by applicable law or agreed to in writing,
|
|
21
|
+
# software distributed under the License is distributed on an
|
|
22
|
+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
23
|
+
# KIND, either express or implied. See the License for the
|
|
24
|
+
# specific language governing permissions and limitations
|
|
25
|
+
# under the License.
|
|
26
|
+
|
|
27
|
+
module OpenSearch
|
|
28
|
+
module API
|
|
29
|
+
module Indices
|
|
30
|
+
module Actions
|
|
31
|
+
# Adds a block to an index.
|
|
32
|
+
#
|
|
33
|
+
# @option arguments [List] :index A comma separated list of indices to add a block to
|
|
34
|
+
# @option arguments [String] :block The block to add (one of read, write, read_only or metadata)
|
|
35
|
+
# @option arguments [Time] :timeout Explicit operation timeout
|
|
36
|
+
# @option arguments [Time] :master_timeout (DEPRECATED: use cluster_manager_timeout instead) Specify timeout for connection to master
|
|
37
|
+
# @option arguments [Time] :cluster_manager_timeout Specify timeout for connection to cluster_manager
|
|
38
|
+
# @option arguments [Boolean] :ignore_unavailable Whether specified concrete indices should be ignored when unavailable (missing or closed)
|
|
39
|
+
# @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)
|
|
40
|
+
# @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)
|
|
41
|
+
# @option arguments [Hash] :headers Custom HTTP headers
|
|
42
|
+
#
|
|
43
|
+
#
|
|
44
|
+
def add_block(arguments = {})
|
|
45
|
+
raise ArgumentError, "Required argument 'index' missing" unless arguments[:index]
|
|
46
|
+
raise ArgumentError, "Required argument 'block' missing" unless arguments[:block]
|
|
47
|
+
|
|
48
|
+
headers = arguments.delete(:headers) || {}
|
|
49
|
+
|
|
50
|
+
arguments = arguments.clone
|
|
51
|
+
|
|
52
|
+
_index = arguments.delete(:index)
|
|
53
|
+
|
|
54
|
+
_block = arguments.delete(:block)
|
|
55
|
+
|
|
56
|
+
method = OpenSearch::API::HTTP_PUT
|
|
57
|
+
path = "#{Utils.__listify(_index)}/_block/#{Utils.__listify(_block)}"
|
|
58
|
+
params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__)
|
|
59
|
+
|
|
60
|
+
body = nil
|
|
61
|
+
perform_request(method, path, params, body, headers).body
|
|
62
|
+
end
|
|
63
|
+
|
|
64
|
+
# Register this action with its valid params when the module is loaded.
|
|
65
|
+
#
|
|
66
|
+
# @since 6.2.0
|
|
67
|
+
ParamsRegistry.register(:add_block, %i[
|
|
68
|
+
timeout
|
|
69
|
+
master_timeout
|
|
70
|
+
cluster_manager_timeout
|
|
71
|
+
ignore_unavailable
|
|
72
|
+
allow_no_indices
|
|
73
|
+
expand_wildcards
|
|
74
|
+
].freeze)
|
|
75
|
+
end
|
|
76
|
+
end
|
|
77
|
+
end
|
|
78
|
+
end
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
# SPDX-License-Identifier: Apache-2.0
|
|
2
|
+
#
|
|
3
|
+
# The OpenSearch Contributors require contributions made to
|
|
4
|
+
# this file be licensed under the Apache-2.0 license or a
|
|
5
|
+
# compatible open source license.
|
|
6
|
+
#
|
|
7
|
+
# Modifications Copyright OpenSearch Contributors. See
|
|
8
|
+
# GitHub history for details.
|
|
9
|
+
#
|
|
10
|
+
# Licensed to Elasticsearch B.V. under one or more contributor
|
|
11
|
+
# license agreements. See the NOTICE file distributed with
|
|
12
|
+
# this work for additional information regarding copyright
|
|
13
|
+
# ownership. Elasticsearch B.V. licenses this file to you under
|
|
14
|
+
# the Apache License, Version 2.0 (the "License"); you may
|
|
15
|
+
# not use this file except in compliance with the License.
|
|
16
|
+
# You may obtain a copy of the License at
|
|
17
|
+
#
|
|
18
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
19
|
+
#
|
|
20
|
+
# Unless required by applicable law or agreed to in writing,
|
|
21
|
+
# software distributed under the License is distributed on an
|
|
22
|
+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
23
|
+
# KIND, either express or implied. See the License for the
|
|
24
|
+
# specific language governing permissions and limitations
|
|
25
|
+
# under the License.
|
|
26
|
+
|
|
27
|
+
module OpenSearch
|
|
28
|
+
module API
|
|
29
|
+
module Indices
|
|
30
|
+
module Actions
|
|
31
|
+
# Performs the analysis process on a text and return the tokens breakdown of the text.
|
|
32
|
+
#
|
|
33
|
+
# @option arguments [String] :index The name of the index to scope the operation
|
|
34
|
+
# @option arguments [Hash] :headers Custom HTTP headers
|
|
35
|
+
# @option arguments [Hash] :body Define analyzer/tokenizer parameters and the text on which the analysis should be performed
|
|
36
|
+
#
|
|
37
|
+
#
|
|
38
|
+
def analyze(arguments = {})
|
|
39
|
+
headers = arguments.delete(:headers) || {}
|
|
40
|
+
|
|
41
|
+
arguments = arguments.clone
|
|
42
|
+
|
|
43
|
+
_index = arguments.delete(:index)
|
|
44
|
+
|
|
45
|
+
method = if arguments[:body]
|
|
46
|
+
OpenSearch::API::HTTP_POST
|
|
47
|
+
else
|
|
48
|
+
OpenSearch::API::HTTP_GET
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
path = if _index
|
|
52
|
+
"#{Utils.__listify(_index)}/_analyze"
|
|
53
|
+
else
|
|
54
|
+
'_analyze'
|
|
55
|
+
end
|
|
56
|
+
params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__)
|
|
57
|
+
|
|
58
|
+
body = arguments[:body]
|
|
59
|
+
perform_request(method, path, params, body, headers).body
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
# Register this action with its valid params when the module is loaded.
|
|
63
|
+
#
|
|
64
|
+
# @since 6.2.0
|
|
65
|
+
ParamsRegistry.register(:analyze, [
|
|
66
|
+
:index
|
|
67
|
+
].freeze)
|
|
68
|
+
end
|
|
69
|
+
end
|
|
70
|
+
end
|
|
71
|
+
end
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
# SPDX-License-Identifier: Apache-2.0
|
|
2
|
+
#
|
|
3
|
+
# The OpenSearch Contributors require contributions made to
|
|
4
|
+
# this file be licensed under the Apache-2.0 license or a
|
|
5
|
+
# compatible open source license.
|
|
6
|
+
#
|
|
7
|
+
# Modifications Copyright OpenSearch Contributors. See
|
|
8
|
+
# GitHub history for details.
|
|
9
|
+
#
|
|
10
|
+
# Licensed to Elasticsearch B.V. under one or more contributor
|
|
11
|
+
# license agreements. See the NOTICE file distributed with
|
|
12
|
+
# this work for additional information regarding copyright
|
|
13
|
+
# ownership. Elasticsearch B.V. licenses this file to you under
|
|
14
|
+
# the Apache License, Version 2.0 (the "License"); you may
|
|
15
|
+
# not use this file except in compliance with the License.
|
|
16
|
+
# You may obtain a copy of the License at
|
|
17
|
+
#
|
|
18
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
19
|
+
#
|
|
20
|
+
# Unless required by applicable law or agreed to in writing,
|
|
21
|
+
# software distributed under the License is distributed on an
|
|
22
|
+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
23
|
+
# KIND, either express or implied. See the License for the
|
|
24
|
+
# specific language governing permissions and limitations
|
|
25
|
+
# under the License.
|
|
26
|
+
|
|
27
|
+
module OpenSearch
|
|
28
|
+
module API
|
|
29
|
+
module Indices
|
|
30
|
+
module Actions
|
|
31
|
+
# Clears all or specific caches for one or more indices.
|
|
32
|
+
#
|
|
33
|
+
# @option arguments [List] :index A comma-separated list of index name to limit the operation
|
|
34
|
+
# @option arguments [Boolean] :fielddata Clear field data
|
|
35
|
+
# @option arguments [List] :fields A comma-separated list of fields to clear when using the `fielddata` parameter (default: all)
|
|
36
|
+
# @option arguments [Boolean] :query Clear query caches
|
|
37
|
+
# @option arguments [Boolean] :ignore_unavailable Whether specified concrete indices should be ignored when unavailable (missing or closed)
|
|
38
|
+
# @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)
|
|
39
|
+
# @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
|
+
# @option arguments [Boolean] :request Clear request cache
|
|
41
|
+
# @option arguments [Hash] :headers Custom HTTP headers
|
|
42
|
+
#
|
|
43
|
+
#
|
|
44
|
+
def clear_cache(arguments = {})
|
|
45
|
+
headers = arguments.delete(:headers) || {}
|
|
46
|
+
|
|
47
|
+
arguments = arguments.clone
|
|
48
|
+
|
|
49
|
+
_index = arguments.delete(:index)
|
|
50
|
+
|
|
51
|
+
method = OpenSearch::API::HTTP_POST
|
|
52
|
+
path = if _index
|
|
53
|
+
"#{Utils.__listify(_index)}/_cache/clear"
|
|
54
|
+
else
|
|
55
|
+
'_cache/clear'
|
|
56
|
+
end
|
|
57
|
+
params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__)
|
|
58
|
+
|
|
59
|
+
body = nil
|
|
60
|
+
perform_request(method, path, params, body, headers).body
|
|
61
|
+
end
|
|
62
|
+
|
|
63
|
+
# Register this action with its valid params when the module is loaded.
|
|
64
|
+
#
|
|
65
|
+
# @since 6.2.0
|
|
66
|
+
ParamsRegistry.register(:clear_cache, %i[
|
|
67
|
+
fielddata
|
|
68
|
+
fields
|
|
69
|
+
query
|
|
70
|
+
ignore_unavailable
|
|
71
|
+
allow_no_indices
|
|
72
|
+
expand_wildcards
|
|
73
|
+
index
|
|
74
|
+
request
|
|
75
|
+
].freeze)
|
|
76
|
+
end
|
|
77
|
+
end
|
|
78
|
+
end
|
|
79
|
+
end
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
# SPDX-License-Identifier: Apache-2.0
|
|
2
|
+
#
|
|
3
|
+
# The OpenSearch Contributors require contributions made to
|
|
4
|
+
# this file be licensed under the Apache-2.0 license or a
|
|
5
|
+
# compatible open source license.
|
|
6
|
+
#
|
|
7
|
+
# Modifications Copyright OpenSearch Contributors. See
|
|
8
|
+
# GitHub history for details.
|
|
9
|
+
#
|
|
10
|
+
# Licensed to Elasticsearch B.V. under one or more contributor
|
|
11
|
+
# license agreements. See the NOTICE file distributed with
|
|
12
|
+
# this work for additional information regarding copyright
|
|
13
|
+
# ownership. Elasticsearch B.V. licenses this file to you under
|
|
14
|
+
# the Apache License, Version 2.0 (the "License"); you may
|
|
15
|
+
# not use this file except in compliance with the License.
|
|
16
|
+
# You may obtain a copy of the License at
|
|
17
|
+
#
|
|
18
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
19
|
+
#
|
|
20
|
+
# Unless required by applicable law or agreed to in writing,
|
|
21
|
+
# software distributed under the License is distributed on an
|
|
22
|
+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
23
|
+
# KIND, either express or implied. See the License for the
|
|
24
|
+
# specific language governing permissions and limitations
|
|
25
|
+
# under the License.
|
|
26
|
+
|
|
27
|
+
module OpenSearch
|
|
28
|
+
module API
|
|
29
|
+
module Indices
|
|
30
|
+
module Actions
|
|
31
|
+
# Clones an index
|
|
32
|
+
#
|
|
33
|
+
# @option arguments [String] :index The name of the source index to clone
|
|
34
|
+
# @option arguments [String] :target The name of the target index to clone into
|
|
35
|
+
# @option arguments [Time] :timeout Explicit operation timeout
|
|
36
|
+
# @option arguments [Time] :master_timeout (DEPRECATED: use cluster_manager_timeout instead) Specify timeout for connection to master
|
|
37
|
+
# @option arguments [Time] :cluster_manager_timeout Specify timeout for connection to cluster_manager
|
|
38
|
+
# @option arguments [String] :wait_for_active_shards Set the number of active shards to wait for on the cloned index before the operation returns.
|
|
39
|
+
# @option arguments [Hash] :headers Custom HTTP headers
|
|
40
|
+
# @option arguments [Hash] :body The configuration for the target index (`settings` and `aliases`)
|
|
41
|
+
#
|
|
42
|
+
#
|
|
43
|
+
def clone(arguments = {})
|
|
44
|
+
raise ArgumentError, "Required argument 'index' missing" unless arguments[:index]
|
|
45
|
+
raise ArgumentError, "Required argument 'target' missing" unless arguments[:target]
|
|
46
|
+
|
|
47
|
+
headers = arguments.delete(:headers) || {}
|
|
48
|
+
|
|
49
|
+
arguments = arguments.clone
|
|
50
|
+
|
|
51
|
+
_index = arguments.delete(:index)
|
|
52
|
+
|
|
53
|
+
_target = arguments.delete(:target)
|
|
54
|
+
|
|
55
|
+
method = OpenSearch::API::HTTP_PUT
|
|
56
|
+
path = "#{Utils.__listify(_index)}/_clone/#{Utils.__listify(_target)}"
|
|
57
|
+
params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__)
|
|
58
|
+
|
|
59
|
+
body = arguments[:body]
|
|
60
|
+
perform_request(method, path, params, body, headers).body
|
|
61
|
+
end
|
|
62
|
+
|
|
63
|
+
# Register this action with its valid params when the module is loaded.
|
|
64
|
+
#
|
|
65
|
+
# @since 6.2.0
|
|
66
|
+
ParamsRegistry.register(:clone, %i[
|
|
67
|
+
timeout
|
|
68
|
+
master_timeout
|
|
69
|
+
cluster_manager_timeout
|
|
70
|
+
wait_for_active_shards
|
|
71
|
+
].freeze)
|
|
72
|
+
end
|
|
73
|
+
end
|
|
74
|
+
end
|
|
75
|
+
end
|