elasticsearch-api 7.13.3 → 8.14.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.
Files changed (1006) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +2 -10
  3. data/README.md +15 -186
  4. data/Rakefile +29 -74
  5. data/api-spec-testing/README.md +118 -0
  6. data/api-spec-testing/custom_cleanup.rb +32 -0
  7. data/api-spec-testing/logging.rb +28 -0
  8. data/api-spec-testing/rspec_matchers.rb +338 -0
  9. data/api-spec-testing/test_file/action.rb +251 -0
  10. data/api-spec-testing/test_file/task_group.rb +346 -0
  11. data/api-spec-testing/test_file/test.rb +296 -0
  12. data/api-spec-testing/test_file.rb +184 -0
  13. data/api-spec-testing/wipe_cluster.rb +423 -0
  14. data/elasticsearch-api.gemspec +22 -17
  15. data/lib/elasticsearch/api/actions/async_search/delete.rb +60 -0
  16. data/lib/elasticsearch/api/actions/async_search/get.rb +63 -0
  17. data/lib/elasticsearch/api/actions/async_search/status.rb +61 -0
  18. data/lib/elasticsearch/api/actions/async_search/submit.rb +104 -0
  19. data/lib/elasticsearch/api/actions/autoscaling/delete_autoscaling_policy.rb +60 -0
  20. data/lib/elasticsearch/api/actions/autoscaling/get_autoscaling_capacity.rb +50 -0
  21. data/lib/elasticsearch/api/actions/autoscaling/get_autoscaling_policy.rb +60 -0
  22. data/lib/elasticsearch/api/actions/autoscaling/put_autoscaling_policy.rb +62 -0
  23. data/lib/elasticsearch/api/actions/bulk.rb +29 -35
  24. data/lib/elasticsearch/api/actions/cat/aliases.rb +19 -20
  25. data/lib/elasticsearch/api/actions/cat/allocation.rb +19 -21
  26. data/lib/elasticsearch/api/actions/cat/component_templates.rb +69 -0
  27. data/lib/elasticsearch/api/actions/cat/count.rb +19 -18
  28. data/lib/elasticsearch/api/actions/cat/fielddata.rb +19 -20
  29. data/lib/elasticsearch/api/actions/cat/health.rb +14 -20
  30. data/lib/elasticsearch/api/actions/cat/help.rb +14 -15
  31. data/lib/elasticsearch/api/actions/cat/indices.rb +19 -27
  32. data/lib/elasticsearch/api/actions/cat/master.rb +14 -20
  33. data/lib/elasticsearch/api/actions/cat/ml_data_frame_analytics.rb +70 -0
  34. data/lib/elasticsearch/api/actions/cat/ml_datafeeds.rb +69 -0
  35. data/lib/elasticsearch/api/actions/cat/ml_jobs.rb +70 -0
  36. data/lib/elasticsearch/api/actions/cat/ml_trained_models.rb +72 -0
  37. data/lib/elasticsearch/api/actions/cat/nodeattrs.rb +14 -20
  38. data/lib/elasticsearch/api/actions/cat/nodes.rb +14 -25
  39. data/lib/elasticsearch/api/actions/cat/pending_tasks.rb +14 -21
  40. data/lib/elasticsearch/api/actions/cat/plugins.rb +14 -21
  41. data/lib/elasticsearch/api/actions/cat/recovery.rb +19 -23
  42. data/lib/elasticsearch/api/actions/cat/repositories.rb +14 -20
  43. data/lib/elasticsearch/api/actions/cat/segments.rb +19 -19
  44. data/lib/elasticsearch/api/actions/cat/shards.rb +19 -23
  45. data/lib/elasticsearch/api/actions/cat/snapshots.rb +19 -21
  46. data/lib/elasticsearch/api/actions/cat/tasks.rb +18 -23
  47. data/lib/elasticsearch/api/actions/cat/templates.rb +19 -20
  48. data/lib/elasticsearch/api/actions/cat/thread_pool.rb +20 -22
  49. data/lib/elasticsearch/api/actions/cat/transforms.rb +71 -0
  50. data/lib/elasticsearch/api/actions/clear_scroll.rb +27 -7
  51. data/lib/elasticsearch/api/actions/close_point_in_time.rb +13 -6
  52. data/lib/elasticsearch/api/actions/cluster/allocation_explain.rb +16 -17
  53. data/lib/elasticsearch/api/actions/cluster/delete_component_template.rb +18 -14
  54. data/lib/elasticsearch/api/actions/cluster/delete_voting_config_exclusions.rb +15 -14
  55. data/lib/elasticsearch/api/actions/cluster/exists_component_template.rb +19 -14
  56. data/lib/elasticsearch/api/actions/cluster/get_component_template.rb +20 -15
  57. data/lib/elasticsearch/api/actions/cluster/get_settings.rb +14 -17
  58. data/lib/elasticsearch/api/actions/cluster/health.rb +19 -24
  59. data/lib/elasticsearch/api/actions/cluster/info.rb +60 -0
  60. data/lib/elasticsearch/api/actions/cluster/pending_tasks.rb +14 -15
  61. data/lib/elasticsearch/api/actions/cluster/post_voting_config_exclusions.rb +15 -16
  62. data/lib/elasticsearch/api/actions/cluster/put_component_template.rb +18 -15
  63. data/lib/elasticsearch/api/actions/cluster/put_settings.rb +14 -16
  64. data/lib/elasticsearch/api/actions/cluster/remote_info.rb +13 -6
  65. data/lib/elasticsearch/api/actions/cluster/reroute.rb +15 -20
  66. data/lib/elasticsearch/api/actions/cluster/state.rb +19 -21
  67. data/lib/elasticsearch/api/actions/cluster/stats.rb +19 -15
  68. data/lib/elasticsearch/api/actions/connector/check_in.rb +64 -0
  69. data/lib/elasticsearch/api/actions/connector/delete.rb +65 -0
  70. data/lib/elasticsearch/api/actions/connector/get.rb +64 -0
  71. data/lib/elasticsearch/api/actions/connector/last_sync.rb +66 -0
  72. data/lib/elasticsearch/api/actions/connector/list.rb +60 -0
  73. data/lib/elasticsearch/api/actions/connector/post.rb +57 -0
  74. data/lib/elasticsearch/api/actions/connector/put.rb +66 -0
  75. data/lib/elasticsearch/api/actions/connector/secret_delete.rb +64 -0
  76. data/lib/elasticsearch/api/actions/connector/secret_get.rb +64 -0
  77. data/lib/elasticsearch/api/actions/connector/secret_post.rb +57 -0
  78. data/lib/elasticsearch/api/actions/connector/secret_put.rb +66 -0
  79. data/lib/elasticsearch/api/actions/connector/sync_job_cancel.rb +67 -0
  80. data/lib/elasticsearch/api/actions/connector/sync_job_check_in.rb +67 -0
  81. data/lib/elasticsearch/api/actions/connector/sync_job_delete.rb +67 -0
  82. data/lib/elasticsearch/api/actions/connector/sync_job_error.rb +70 -0
  83. data/lib/elasticsearch/api/actions/connector/sync_job_get.rb +67 -0
  84. data/lib/elasticsearch/api/actions/connector/sync_job_list.rb +59 -0
  85. data/lib/elasticsearch/api/actions/connector/sync_job_post.rb +57 -0
  86. data/lib/elasticsearch/api/actions/connector/sync_job_update_stats.rb +70 -0
  87. data/lib/elasticsearch/api/actions/connector/update_active_filtering.rb +64 -0
  88. data/lib/elasticsearch/api/actions/connector/update_api_key_id.rb +66 -0
  89. data/lib/elasticsearch/api/actions/connector/update_configuration.rb +66 -0
  90. data/lib/elasticsearch/api/actions/connector/update_error.rb +66 -0
  91. data/lib/elasticsearch/api/actions/connector/update_filtering.rb +66 -0
  92. data/lib/elasticsearch/api/actions/connector/update_filtering_validation.rb +66 -0
  93. data/lib/elasticsearch/api/actions/connector/update_index_name.rb +66 -0
  94. data/lib/elasticsearch/api/actions/connector/update_name.rb +66 -0
  95. data/lib/elasticsearch/api/actions/connector/update_native.rb +66 -0
  96. data/lib/elasticsearch/api/actions/connector/update_pipeline.rb +66 -0
  97. data/lib/elasticsearch/api/actions/connector/update_scheduling.rb +66 -0
  98. data/lib/elasticsearch/api/actions/connector/update_service_type.rb +66 -0
  99. data/lib/elasticsearch/api/actions/connector/update_status.rb +66 -0
  100. data/lib/elasticsearch/api/actions/count.rb +27 -40
  101. data/lib/elasticsearch/api/actions/create.rb +12 -8
  102. data/lib/elasticsearch/api/actions/cross_cluster_replication/delete_auto_follow_pattern.rb +61 -0
  103. data/lib/elasticsearch/api/actions/cross_cluster_replication/follow.rb +64 -0
  104. data/lib/elasticsearch/api/actions/cross_cluster_replication/follow_info.rb +61 -0
  105. data/lib/elasticsearch/api/actions/cross_cluster_replication/follow_stats.rb +61 -0
  106. data/lib/elasticsearch/api/actions/cross_cluster_replication/forget_follower.rb +63 -0
  107. data/lib/elasticsearch/api/actions/cross_cluster_replication/get_auto_follow_pattern.rb +63 -0
  108. data/lib/elasticsearch/api/actions/cross_cluster_replication/pause_auto_follow_pattern.rb +61 -0
  109. data/lib/elasticsearch/api/actions/cross_cluster_replication/pause_follow.rb +61 -0
  110. data/lib/elasticsearch/api/actions/cross_cluster_replication/put_auto_follow_pattern.rb +63 -0
  111. data/lib/elasticsearch/api/actions/cross_cluster_replication/resume_auto_follow_pattern.rb +61 -0
  112. data/lib/elasticsearch/api/actions/cross_cluster_replication/resume_follow.rb +62 -0
  113. data/lib/elasticsearch/api/actions/{snapshot/get_features.rb → cross_cluster_replication/stats.rb} +18 -17
  114. data/lib/elasticsearch/api/actions/cross_cluster_replication/unfollow.rb +61 -0
  115. data/lib/elasticsearch/api/actions/dangling_indices/delete_dangling_index.rb +18 -15
  116. data/lib/elasticsearch/api/actions/dangling_indices/import_dangling_index.rb +18 -15
  117. data/lib/elasticsearch/api/actions/dangling_indices/list_dangling_indices.rb +13 -6
  118. data/lib/elasticsearch/api/actions/delete.rb +25 -35
  119. data/lib/elasticsearch/api/actions/delete_by_query.rb +21 -64
  120. data/lib/elasticsearch/api/actions/delete_by_query_rethrottle.rb +18 -13
  121. data/lib/elasticsearch/api/actions/delete_script.rb +18 -14
  122. data/lib/elasticsearch/api/actions/enrich/delete_policy.rb +60 -0
  123. data/lib/elasticsearch/api/actions/enrich/execute_policy.rb +61 -0
  124. data/lib/elasticsearch/api/actions/enrich/get_policy.rb +62 -0
  125. data/lib/elasticsearch/api/actions/enrich/put_policy.rb +62 -0
  126. data/lib/elasticsearch/api/actions/enrich/stats.rb +50 -0
  127. data/lib/elasticsearch/api/actions/eql/delete.rb +60 -0
  128. data/lib/elasticsearch/api/actions/eql/get.rb +62 -0
  129. data/lib/elasticsearch/api/actions/eql/get_status.rb +60 -0
  130. data/lib/elasticsearch/api/actions/eql/search.rb +65 -0
  131. data/lib/elasticsearch/api/actions/esql/async_query.rb +56 -0
  132. data/lib/elasticsearch/api/actions/esql/async_query_get.rb +63 -0
  133. data/lib/elasticsearch/api/actions/esql/query.rb +56 -0
  134. data/lib/elasticsearch/api/actions/exists.rb +19 -37
  135. data/lib/elasticsearch/api/actions/exists_source.rb +21 -35
  136. data/lib/elasticsearch/api/actions/explain.rb +20 -38
  137. data/lib/elasticsearch/api/actions/features/get_features.rb +14 -14
  138. data/lib/elasticsearch/api/actions/features/reset_features.rb +13 -6
  139. data/lib/elasticsearch/api/actions/field_caps.rb +23 -19
  140. data/lib/elasticsearch/api/actions/fleet/delete_secret.rb +64 -0
  141. data/lib/elasticsearch/api/actions/fleet/get_secret.rb +64 -0
  142. data/lib/elasticsearch/api/actions/fleet/global_checkpoints.rb +64 -0
  143. data/lib/elasticsearch/api/actions/fleet/msearch.rb +90 -0
  144. data/lib/elasticsearch/api/actions/fleet/post_secret.rb +57 -0
  145. data/lib/elasticsearch/api/actions/fleet/search.rb +73 -0
  146. data/lib/elasticsearch/api/actions/get.rb +26 -37
  147. data/lib/elasticsearch/api/actions/get_script.rb +18 -13
  148. data/lib/elasticsearch/api/actions/get_script_context.rb +13 -10
  149. data/lib/elasticsearch/api/actions/get_script_languages.rb +13 -10
  150. data/lib/elasticsearch/api/actions/get_source.rb +20 -35
  151. data/lib/elasticsearch/api/actions/graph/explore.rb +68 -0
  152. data/lib/elasticsearch/api/actions/health_report.rb +63 -0
  153. data/lib/elasticsearch/api/actions/index.rb +20 -36
  154. data/lib/elasticsearch/api/actions/index_lifecycle_management/delete_lifecycle.rb +60 -0
  155. data/lib/elasticsearch/api/actions/index_lifecycle_management/explain_lifecycle.rb +62 -0
  156. data/lib/elasticsearch/api/actions/index_lifecycle_management/get_lifecycle.rb +62 -0
  157. data/lib/elasticsearch/api/actions/index_lifecycle_management/get_status.rb +50 -0
  158. data/lib/elasticsearch/api/actions/index_lifecycle_management/migrate_to_data_tiers.rb +52 -0
  159. data/lib/elasticsearch/api/actions/index_lifecycle_management/move_to_step.rb +61 -0
  160. data/lib/elasticsearch/api/actions/index_lifecycle_management/put_lifecycle.rb +61 -0
  161. data/lib/elasticsearch/api/actions/index_lifecycle_management/remove_policy.rb +60 -0
  162. data/lib/elasticsearch/api/actions/index_lifecycle_management/retry.rb +60 -0
  163. data/lib/elasticsearch/api/actions/index_lifecycle_management/start.rb +50 -0
  164. data/lib/elasticsearch/api/actions/index_lifecycle_management/stop.rb +50 -0
  165. data/lib/elasticsearch/api/actions/indices/add_block.rb +18 -17
  166. data/lib/elasticsearch/api/actions/indices/analyze.rb +20 -15
  167. data/lib/elasticsearch/api/actions/indices/clear_cache.rb +19 -21
  168. data/lib/elasticsearch/api/actions/indices/clone.rb +18 -15
  169. data/lib/elasticsearch/api/actions/indices/close.rb +19 -19
  170. data/lib/elasticsearch/api/actions/indices/create.rb +18 -17
  171. data/lib/elasticsearch/api/actions/indices/create_data_stream.rb +60 -0
  172. data/lib/elasticsearch/api/actions/indices/data_streams_stats.rb +62 -0
  173. data/lib/elasticsearch/api/actions/indices/delete.rb +24 -19
  174. data/lib/elasticsearch/api/actions/indices/delete_alias.rb +19 -17
  175. data/lib/elasticsearch/api/actions/indices/delete_data_lifecycle.rb +67 -0
  176. data/lib/elasticsearch/api/actions/indices/delete_data_stream.rb +61 -0
  177. data/lib/elasticsearch/api/actions/indices/delete_index_template.rb +18 -14
  178. data/lib/elasticsearch/api/actions/indices/delete_template.rb +23 -15
  179. data/lib/elasticsearch/api/actions/indices/disk_usage.rb +69 -0
  180. data/lib/elasticsearch/api/actions/indices/downsample.rb +70 -0
  181. data/lib/elasticsearch/api/actions/indices/exists.rb +17 -19
  182. data/lib/elasticsearch/api/actions/indices/exists_alias.rb +17 -17
  183. data/lib/elasticsearch/api/actions/indices/exists_index_template.rb +19 -15
  184. data/lib/elasticsearch/api/actions/indices/exists_template.rb +17 -16
  185. data/lib/elasticsearch/api/actions/indices/explain_data_lifecycle.rb +66 -0
  186. data/lib/elasticsearch/api/actions/indices/{exists_type.rb → field_usage_stats.rb} +28 -30
  187. data/lib/elasticsearch/api/actions/indices/flush.rb +19 -18
  188. data/lib/elasticsearch/api/actions/indices/forcemerge.rb +20 -19
  189. data/lib/elasticsearch/api/actions/indices/get.rb +19 -21
  190. data/lib/elasticsearch/api/actions/indices/get_alias.rb +19 -17
  191. data/lib/elasticsearch/api/actions/indices/get_data_lifecycle.rb +66 -0
  192. data/lib/elasticsearch/api/actions/indices/get_data_stream.rb +64 -0
  193. data/lib/elasticsearch/api/actions/indices/get_field_mapping.rb +19 -32
  194. data/lib/elasticsearch/api/actions/indices/get_index_template.rb +21 -17
  195. data/lib/elasticsearch/api/actions/indices/get_mapping.rb +20 -33
  196. data/lib/elasticsearch/api/actions/indices/get_settings.rb +19 -20
  197. data/lib/elasticsearch/api/actions/indices/get_template.rb +19 -18
  198. data/lib/elasticsearch/api/actions/indices/migrate_to_data_stream.rb +60 -0
  199. data/lib/elasticsearch/api/actions/indices/modify_data_stream.rb +53 -0
  200. data/lib/elasticsearch/api/actions/indices/open.rb +18 -18
  201. data/lib/elasticsearch/api/actions/indices/promote_data_stream.rb +60 -0
  202. data/lib/elasticsearch/api/actions/indices/put_alias.rb +19 -17
  203. data/lib/elasticsearch/api/actions/indices/put_data_lifecycle.rb +68 -0
  204. data/lib/elasticsearch/api/actions/indices/put_index_template.rb +18 -15
  205. data/lib/elasticsearch/api/actions/indices/put_mapping.rb +20 -35
  206. data/lib/elasticsearch/api/actions/indices/put_settings.rb +20 -20
  207. data/lib/elasticsearch/api/actions/indices/put_template.rb +18 -17
  208. data/lib/elasticsearch/api/actions/indices/recovery.rb +19 -15
  209. data/lib/elasticsearch/api/actions/indices/refresh.rb +19 -16
  210. data/lib/elasticsearch/api/actions/indices/{get_upgrade.rb → reload_search_analyzers.rb} +25 -28
  211. data/lib/elasticsearch/api/actions/indices/resolve_cluster.rb +64 -0
  212. data/lib/elasticsearch/api/actions/indices/resolve_index.rb +18 -17
  213. data/lib/elasticsearch/api/actions/indices/rollover.rb +20 -18
  214. data/lib/elasticsearch/api/actions/indices/segments.rb +20 -18
  215. data/lib/elasticsearch/api/actions/indices/shard_stores.rb +19 -17
  216. data/lib/elasticsearch/api/actions/indices/shrink.rb +18 -17
  217. data/lib/elasticsearch/api/actions/indices/simulate_index_template.rb +19 -15
  218. data/lib/elasticsearch/api/actions/indices/simulate_template.rb +20 -16
  219. data/lib/elasticsearch/api/actions/indices/split.rb +18 -17
  220. data/lib/elasticsearch/api/actions/indices/stats.rb +35 -49
  221. data/lib/elasticsearch/api/actions/indices/{upgrade.rb → unfreeze.rb} +30 -30
  222. data/lib/elasticsearch/api/actions/indices/update_aliases.rb +14 -15
  223. data/lib/elasticsearch/api/actions/indices/validate_query.rb +21 -37
  224. data/lib/elasticsearch/api/actions/inference/delete_model.rb +71 -0
  225. data/lib/elasticsearch/api/actions/inference/get_model.rb +71 -0
  226. data/lib/elasticsearch/api/actions/inference/inference.rb +72 -0
  227. data/lib/elasticsearch/api/actions/inference/put_model.rb +72 -0
  228. data/lib/elasticsearch/api/actions/info.rb +13 -6
  229. data/lib/elasticsearch/api/actions/ingest/delete_pipeline.rb +18 -14
  230. data/lib/elasticsearch/api/actions/ingest/geo_ip_stats.rb +13 -6
  231. data/lib/elasticsearch/api/actions/ingest/get_pipeline.rb +19 -15
  232. data/lib/elasticsearch/api/actions/ingest/processor_grok.rb +13 -6
  233. data/lib/elasticsearch/api/actions/ingest/put_pipeline.rb +19 -14
  234. data/lib/elasticsearch/api/actions/ingest/simulate.rb +19 -14
  235. data/lib/elasticsearch/api/actions/knn_search.rb +69 -0
  236. data/lib/elasticsearch/api/actions/license/delete.rb +50 -0
  237. data/lib/elasticsearch/api/actions/license/get.rb +52 -0
  238. data/lib/elasticsearch/api/actions/license/get_basic_status.rb +50 -0
  239. data/lib/elasticsearch/api/actions/license/get_trial_status.rb +50 -0
  240. data/lib/elasticsearch/api/actions/license/post.rb +52 -0
  241. data/lib/elasticsearch/api/actions/license/post_start_basic.rb +51 -0
  242. data/lib/elasticsearch/api/actions/license/post_start_trial.rb +52 -0
  243. data/lib/elasticsearch/api/actions/logstash/delete_pipeline.rb +60 -0
  244. data/lib/elasticsearch/api/actions/logstash/get_pipeline.rb +62 -0
  245. data/lib/elasticsearch/api/actions/logstash/put_pipeline.rb +62 -0
  246. data/lib/elasticsearch/api/actions/machine_learning/clear_trained_model_deployment_cache.rb +60 -0
  247. data/lib/elasticsearch/api/actions/machine_learning/close_job.rb +64 -0
  248. data/lib/elasticsearch/api/actions/machine_learning/delete_calendar.rb +60 -0
  249. data/lib/elasticsearch/api/actions/machine_learning/delete_calendar_event.rb +64 -0
  250. data/lib/elasticsearch/api/actions/machine_learning/delete_calendar_job.rb +64 -0
  251. data/lib/elasticsearch/api/actions/machine_learning/delete_data_frame_analytics.rb +62 -0
  252. data/lib/elasticsearch/api/actions/machine_learning/delete_datafeed.rb +61 -0
  253. data/lib/elasticsearch/api/actions/machine_learning/delete_expired_data.rb +65 -0
  254. data/lib/elasticsearch/api/actions/machine_learning/delete_filter.rb +60 -0
  255. data/lib/elasticsearch/api/actions/machine_learning/delete_forecast.rb +69 -0
  256. data/lib/elasticsearch/api/actions/machine_learning/delete_job.rb +63 -0
  257. data/lib/elasticsearch/api/actions/machine_learning/delete_model_snapshot.rb +64 -0
  258. data/lib/elasticsearch/api/actions/machine_learning/delete_trained_model.rb +62 -0
  259. data/lib/elasticsearch/api/actions/machine_learning/delete_trained_model_alias.rb +64 -0
  260. data/lib/elasticsearch/api/actions/machine_learning/estimate_model_memory.rb +53 -0
  261. data/lib/elasticsearch/api/actions/machine_learning/evaluate_data_frame.rb +53 -0
  262. data/lib/elasticsearch/api/actions/machine_learning/explain_data_frame_analytics.rb +68 -0
  263. data/lib/elasticsearch/api/actions/machine_learning/flush_job.rb +66 -0
  264. data/lib/elasticsearch/api/actions/machine_learning/forecast.rb +64 -0
  265. data/lib/elasticsearch/api/actions/machine_learning/get_buckets.rb +82 -0
  266. data/lib/elasticsearch/api/actions/machine_learning/get_calendar_events.rb +65 -0
  267. data/lib/elasticsearch/api/actions/machine_learning/get_calendars.rb +70 -0
  268. data/lib/elasticsearch/api/actions/machine_learning/get_categories.rb +76 -0
  269. data/lib/elasticsearch/api/actions/machine_learning/get_data_frame_analytics.rb +66 -0
  270. data/lib/elasticsearch/api/actions/machine_learning/get_data_frame_analytics_stats.rb +66 -0
  271. data/lib/elasticsearch/api/actions/machine_learning/get_datafeed_stats.rb +63 -0
  272. data/lib/elasticsearch/api/actions/machine_learning/get_datafeeds.rb +64 -0
  273. data/lib/elasticsearch/api/actions/machine_learning/get_filters.rb +64 -0
  274. data/lib/elasticsearch/api/actions/machine_learning/get_influencers.rb +74 -0
  275. data/lib/elasticsearch/api/actions/machine_learning/get_job_stats.rb +63 -0
  276. data/lib/elasticsearch/api/actions/machine_learning/get_jobs.rb +64 -0
  277. data/lib/elasticsearch/api/actions/machine_learning/get_memory_stats.rb +64 -0
  278. data/lib/elasticsearch/api/actions/machine_learning/get_model_snapshot_upgrade_stats.rb +65 -0
  279. data/lib/elasticsearch/api/actions/machine_learning/get_model_snapshots.rb +79 -0
  280. data/lib/elasticsearch/api/actions/machine_learning/get_overall_buckets.rb +73 -0
  281. data/lib/elasticsearch/api/actions/machine_learning/get_records.rb +74 -0
  282. data/lib/elasticsearch/api/actions/machine_learning/get_trained_models.rb +70 -0
  283. data/lib/elasticsearch/api/actions/machine_learning/get_trained_models_stats.rb +65 -0
  284. data/lib/elasticsearch/api/actions/machine_learning/infer_trained_model.rb +68 -0
  285. data/lib/elasticsearch/api/actions/machine_learning/info.rb +50 -0
  286. data/lib/elasticsearch/api/actions/machine_learning/open_job.rb +61 -0
  287. data/lib/elasticsearch/api/actions/machine_learning/post_calendar_events.rb +62 -0
  288. data/lib/elasticsearch/api/actions/machine_learning/post_data.rb +64 -0
  289. data/lib/elasticsearch/api/actions/machine_learning/preview_data_frame_analytics.rb +68 -0
  290. data/lib/elasticsearch/api/actions/machine_learning/preview_datafeed.rb +70 -0
  291. data/lib/elasticsearch/api/actions/machine_learning/put_calendar.rb +61 -0
  292. data/lib/elasticsearch/api/actions/machine_learning/put_calendar_job.rb +64 -0
  293. data/lib/elasticsearch/api/actions/machine_learning/put_data_frame_analytics.rb +62 -0
  294. data/lib/elasticsearch/api/actions/machine_learning/put_datafeed.rb +66 -0
  295. data/lib/elasticsearch/api/actions/machine_learning/put_filter.rb +62 -0
  296. data/lib/elasticsearch/api/actions/machine_learning/put_job.rb +66 -0
  297. data/lib/elasticsearch/api/actions/machine_learning/put_trained_model.rb +64 -0
  298. data/lib/elasticsearch/api/actions/machine_learning/put_trained_model_alias.rb +65 -0
  299. data/lib/elasticsearch/api/actions/machine_learning/put_trained_model_definition_part.rb +66 -0
  300. data/lib/elasticsearch/api/actions/machine_learning/put_trained_model_vocabulary.rb +62 -0
  301. data/lib/elasticsearch/api/actions/machine_learning/reset_job.rb +62 -0
  302. data/lib/elasticsearch/api/actions/machine_learning/revert_model_snapshot.rb +66 -0
  303. data/lib/elasticsearch/api/actions/machine_learning/set_upgrade_mode.rb +52 -0
  304. data/lib/elasticsearch/api/actions/machine_learning/start_data_frame_analytics.rb +62 -0
  305. data/lib/elasticsearch/api/actions/machine_learning/start_datafeed.rb +64 -0
  306. data/lib/elasticsearch/api/actions/machine_learning/start_trained_model_deployment.rb +68 -0
  307. data/lib/elasticsearch/api/actions/machine_learning/stop_data_frame_analytics.rb +64 -0
  308. data/lib/elasticsearch/api/actions/machine_learning/stop_datafeed.rb +65 -0
  309. data/lib/elasticsearch/api/actions/machine_learning/stop_trained_model_deployment.rb +63 -0
  310. data/lib/elasticsearch/api/actions/machine_learning/update_data_frame_analytics.rb +62 -0
  311. data/lib/elasticsearch/api/actions/machine_learning/update_datafeed.rb +66 -0
  312. data/lib/elasticsearch/api/actions/machine_learning/update_filter.rb +62 -0
  313. data/lib/elasticsearch/api/actions/machine_learning/update_job.rb +62 -0
  314. data/lib/elasticsearch/api/actions/machine_learning/update_model_snapshot.rb +66 -0
  315. data/lib/elasticsearch/api/actions/machine_learning/update_trained_model_deployment.rb +66 -0
  316. data/lib/elasticsearch/api/actions/machine_learning/upgrade_job_snapshot.rb +66 -0
  317. data/lib/elasticsearch/api/actions/machine_learning/validate.rb +53 -0
  318. data/lib/elasticsearch/api/actions/machine_learning/validate_detector.rb +53 -0
  319. data/lib/elasticsearch/api/actions/mget.rb +22 -33
  320. data/lib/elasticsearch/api/actions/migration/deprecations.rb +62 -0
  321. data/lib/elasticsearch/api/actions/migration/get_feature_upgrade_status.rb +50 -0
  322. data/lib/elasticsearch/api/actions/migration/post_feature_upgrade.rb +50 -0
  323. data/lib/elasticsearch/api/actions/monitoring/bulk.rb +81 -0
  324. data/lib/elasticsearch/api/actions/msearch.rb +27 -40
  325. data/lib/elasticsearch/api/actions/msearch_template.rb +25 -36
  326. data/lib/elasticsearch/api/actions/mtermvectors.rb +26 -43
  327. data/lib/elasticsearch/api/actions/nodes/clear_repositories_metering_archive.rb +68 -0
  328. data/lib/elasticsearch/api/actions/nodes/get_repositories_metering_info.rb +64 -0
  329. data/lib/elasticsearch/api/actions/nodes/hot_threads.rb +22 -26
  330. data/lib/elasticsearch/api/actions/nodes/info.rb +20 -16
  331. data/lib/elasticsearch/api/actions/nodes/reload_secure_settings.rb +19 -14
  332. data/lib/elasticsearch/api/actions/nodes/stats.rb +22 -25
  333. data/lib/elasticsearch/api/actions/nodes/usage.rb +19 -14
  334. data/lib/elasticsearch/api/actions/open_point_in_time.rb +23 -23
  335. data/lib/elasticsearch/api/actions/ping.rb +15 -12
  336. data/lib/elasticsearch/api/actions/profiling/flamegraph.rb +53 -0
  337. data/lib/elasticsearch/api/actions/profiling/stacktraces.rb +53 -0
  338. data/lib/elasticsearch/api/actions/profiling/status.rb +53 -0
  339. data/lib/elasticsearch/api/actions/profiling/topn_functions.rb +53 -0
  340. data/lib/elasticsearch/api/actions/put_script.rb +18 -15
  341. data/lib/elasticsearch/api/actions/query_ruleset/delete.rb +64 -0
  342. data/lib/elasticsearch/api/actions/query_ruleset/get.rb +64 -0
  343. data/lib/elasticsearch/api/actions/query_ruleset/list.rb +56 -0
  344. data/lib/elasticsearch/api/actions/query_ruleset/put.rb +66 -0
  345. data/lib/elasticsearch/api/actions/rank_eval.rb +19 -21
  346. data/lib/elasticsearch/api/actions/reindex.rb +14 -21
  347. data/lib/elasticsearch/api/actions/reindex_rethrottle.rb +18 -13
  348. data/lib/elasticsearch/api/actions/render_search_template.rb +19 -7
  349. data/lib/elasticsearch/api/actions/rollup/delete_job.rb +64 -0
  350. data/lib/elasticsearch/api/actions/rollup/get_jobs.rb +66 -0
  351. data/lib/elasticsearch/api/actions/rollup/get_rollup_caps.rb +66 -0
  352. data/lib/elasticsearch/api/actions/rollup/get_rollup_index_caps.rb +64 -0
  353. data/lib/elasticsearch/api/actions/rollup/put_job.rb +66 -0
  354. data/lib/elasticsearch/api/actions/rollup/rollup_search.rb +68 -0
  355. data/lib/elasticsearch/api/actions/rollup/start_job.rb +64 -0
  356. data/lib/elasticsearch/api/actions/rollup/stop_job.rb +66 -0
  357. data/lib/elasticsearch/api/actions/scripts_painless_execute.rb +14 -7
  358. data/lib/elasticsearch/api/actions/scroll.rb +20 -17
  359. data/lib/elasticsearch/api/actions/search.rb +24 -70
  360. data/lib/elasticsearch/api/actions/search_application/delete.rb +64 -0
  361. data/lib/elasticsearch/api/actions/search_application/delete_behavioral_analytics.rb +64 -0
  362. data/lib/elasticsearch/api/actions/search_application/get.rb +64 -0
  363. data/lib/elasticsearch/api/actions/search_application/get_behavioral_analytics.rb +66 -0
  364. data/lib/elasticsearch/api/actions/search_application/list.rb +57 -0
  365. data/lib/elasticsearch/api/actions/search_application/post_behavioral_analytics_event.rb +71 -0
  366. data/lib/elasticsearch/api/actions/search_application/put.rb +67 -0
  367. data/lib/elasticsearch/api/actions/search_application/put_behavioral_analytics.rb +64 -0
  368. data/lib/elasticsearch/api/actions/search_application/render_query.rb +65 -0
  369. data/lib/elasticsearch/api/actions/search_application/search.rb +71 -0
  370. data/lib/elasticsearch/api/actions/search_mvt.rb +86 -0
  371. data/lib/elasticsearch/api/actions/search_shards.rb +19 -19
  372. data/lib/elasticsearch/api/actions/search_template.rb +21 -38
  373. data/lib/elasticsearch/api/actions/searchable_snapshots/cache_stats.rb +66 -0
  374. data/lib/elasticsearch/api/actions/{indices/flush_synced.rb → searchable_snapshots/clear_cache.rb} +28 -30
  375. data/lib/elasticsearch/api/actions/searchable_snapshots/mount.rb +69 -0
  376. data/lib/elasticsearch/api/actions/searchable_snapshots/stats.rb +63 -0
  377. data/lib/elasticsearch/api/actions/security/activate_user_profile.rb +53 -0
  378. data/lib/elasticsearch/api/actions/security/authenticate.rb +50 -0
  379. data/lib/elasticsearch/api/actions/security/bulk_update_api_keys.rb +53 -0
  380. data/lib/elasticsearch/api/actions/security/change_password.rb +66 -0
  381. data/lib/elasticsearch/api/actions/security/clear_api_key_cache.rb +60 -0
  382. data/lib/elasticsearch/api/actions/security/clear_cached_privileges.rb +60 -0
  383. data/lib/elasticsearch/api/actions/security/clear_cached_realms.rb +61 -0
  384. data/lib/elasticsearch/api/actions/security/clear_cached_roles.rb +60 -0
  385. data/lib/elasticsearch/api/actions/security/clear_cached_service_tokens.rb +68 -0
  386. data/lib/elasticsearch/api/actions/security/create_api_key.rb +54 -0
  387. data/lib/elasticsearch/api/actions/security/create_cross_cluster_api_key.rb +57 -0
  388. data/lib/elasticsearch/api/actions/security/create_service_token.rb +72 -0
  389. data/lib/elasticsearch/api/actions/security/delete_privileges.rb +65 -0
  390. data/lib/elasticsearch/api/actions/security/delete_role.rb +61 -0
  391. data/lib/elasticsearch/api/actions/security/delete_role_mapping.rb +61 -0
  392. data/lib/elasticsearch/api/actions/security/delete_service_token.rb +69 -0
  393. data/lib/elasticsearch/api/actions/security/delete_user.rb +61 -0
  394. data/lib/elasticsearch/api/actions/security/disable_user.rb +61 -0
  395. data/lib/elasticsearch/api/actions/security/disable_user_profile.rb +61 -0
  396. data/lib/elasticsearch/api/actions/security/enable_user.rb +61 -0
  397. data/lib/elasticsearch/api/actions/security/enable_user_profile.rb +61 -0
  398. data/lib/elasticsearch/api/actions/security/enroll_kibana.rb +50 -0
  399. data/lib/elasticsearch/api/actions/security/enroll_node.rb +50 -0
  400. data/lib/elasticsearch/api/actions/security/get_api_key.rb +58 -0
  401. data/lib/elasticsearch/api/actions/security/get_builtin_privileges.rb +50 -0
  402. data/lib/elasticsearch/api/actions/security/get_privileges.rb +67 -0
  403. data/lib/elasticsearch/api/actions/security/get_role.rb +70 -0
  404. data/lib/elasticsearch/api/actions/security/get_role_mapping.rb +62 -0
  405. data/lib/elasticsearch/api/actions/security/get_service_accounts.rb +67 -0
  406. data/lib/elasticsearch/api/actions/security/get_service_credentials.rb +64 -0
  407. data/lib/elasticsearch/api/actions/security/get_settings.rb +50 -0
  408. data/lib/elasticsearch/api/actions/security/get_token.rb +53 -0
  409. data/lib/elasticsearch/api/actions/security/get_user.rb +71 -0
  410. data/lib/elasticsearch/api/actions/security/get_user_privileges.rb +50 -0
  411. data/lib/elasticsearch/api/actions/security/get_user_profile.rb +61 -0
  412. data/lib/elasticsearch/api/actions/security/grant_api_key.rb +54 -0
  413. data/lib/elasticsearch/api/actions/security/has_privileges.rb +65 -0
  414. data/lib/elasticsearch/api/actions/security/has_privileges_user_profile.rb +53 -0
  415. data/lib/elasticsearch/api/actions/security/invalidate_api_key.rb +53 -0
  416. data/lib/elasticsearch/api/actions/security/invalidate_token.rb +53 -0
  417. data/lib/elasticsearch/api/actions/security/oidc_authenticate.rb +53 -0
  418. data/lib/elasticsearch/api/actions/security/oidc_logout.rb +53 -0
  419. data/lib/elasticsearch/api/actions/security/oidc_prepare_authentication.rb +53 -0
  420. data/lib/elasticsearch/api/actions/security/put_privileges.rb +54 -0
  421. data/lib/elasticsearch/api/actions/security/put_role.rb +63 -0
  422. data/lib/elasticsearch/api/actions/security/put_role_mapping.rb +63 -0
  423. data/lib/elasticsearch/api/actions/security/put_user.rb +63 -0
  424. data/lib/elasticsearch/api/actions/security/query_api_keys.rb +59 -0
  425. data/lib/elasticsearch/api/actions/security/query_user.rb +57 -0
  426. data/lib/elasticsearch/api/actions/security/saml_authenticate.rb +53 -0
  427. data/lib/elasticsearch/api/actions/security/saml_complete_logout.rb +53 -0
  428. data/lib/elasticsearch/api/actions/security/saml_invalidate.rb +53 -0
  429. data/lib/elasticsearch/api/actions/security/saml_logout.rb +53 -0
  430. data/lib/elasticsearch/api/actions/security/saml_prepare_authentication.rb +53 -0
  431. data/lib/elasticsearch/api/actions/security/saml_service_provider_metadata.rb +60 -0
  432. data/lib/elasticsearch/api/actions/security/suggest_user_profiles.rb +57 -0
  433. data/lib/elasticsearch/api/actions/security/update_api_key.rb +61 -0
  434. data/lib/elasticsearch/api/actions/security/update_cross_cluster_api_key.rb +66 -0
  435. data/lib/elasticsearch/api/actions/security/update_settings.rb +53 -0
  436. data/lib/elasticsearch/api/actions/security/update_user_profile_data.rb +65 -0
  437. data/lib/elasticsearch/api/actions/shutdown/delete_node.rb +17 -9
  438. data/lib/elasticsearch/api/actions/shutdown/get_node.rb +18 -10
  439. data/lib/elasticsearch/api/actions/shutdown/put_node.rb +17 -9
  440. data/lib/elasticsearch/api/actions/simulate/ingest.rb +70 -0
  441. data/lib/elasticsearch/api/actions/snapshot/cleanup_repository.rb +18 -14
  442. data/lib/elasticsearch/api/actions/snapshot/clone.rb +18 -13
  443. data/lib/elasticsearch/api/actions/snapshot/create.rb +18 -14
  444. data/lib/elasticsearch/api/actions/snapshot/create_repository.rb +18 -15
  445. data/lib/elasticsearch/api/actions/snapshot/delete.rb +25 -16
  446. data/lib/elasticsearch/api/actions/snapshot/delete_repository.rb +23 -15
  447. data/lib/elasticsearch/api/actions/snapshot/get.rb +32 -17
  448. data/lib/elasticsearch/api/actions/snapshot/get_repository.rb +24 -16
  449. data/lib/elasticsearch/api/actions/snapshot/repository_analyze.rb +71 -0
  450. data/lib/elasticsearch/api/actions/snapshot/restore.rb +18 -14
  451. data/lib/elasticsearch/api/actions/snapshot/status.rb +24 -16
  452. data/lib/elasticsearch/api/actions/snapshot/verify_repository.rb +18 -14
  453. data/lib/elasticsearch/api/actions/snapshot_lifecycle_management/delete_lifecycle.rb +60 -0
  454. data/lib/elasticsearch/api/actions/snapshot_lifecycle_management/execute_lifecycle.rb +60 -0
  455. data/lib/elasticsearch/api/actions/snapshot_lifecycle_management/execute_retention.rb +50 -0
  456. data/lib/elasticsearch/api/actions/snapshot_lifecycle_management/get_lifecycle.rb +62 -0
  457. data/lib/elasticsearch/api/actions/snapshot_lifecycle_management/get_stats.rb +50 -0
  458. data/lib/elasticsearch/api/actions/snapshot_lifecycle_management/get_status.rb +50 -0
  459. data/lib/elasticsearch/api/actions/snapshot_lifecycle_management/put_lifecycle.rb +61 -0
  460. data/lib/elasticsearch/api/actions/snapshot_lifecycle_management/start.rb +50 -0
  461. data/lib/elasticsearch/api/actions/snapshot_lifecycle_management/stop.rb +50 -0
  462. data/lib/elasticsearch/api/actions/sql/clear_cursor.rb +53 -0
  463. data/lib/elasticsearch/api/actions/sql/delete_async.rb +60 -0
  464. data/lib/elasticsearch/api/actions/sql/get_async.rb +64 -0
  465. data/lib/elasticsearch/api/actions/sql/get_async_status.rb +60 -0
  466. data/lib/elasticsearch/api/actions/sql/query.rb +54 -0
  467. data/lib/elasticsearch/api/actions/sql/translate.rb +53 -0
  468. data/lib/elasticsearch/api/actions/ssl/certificates.rb +50 -0
  469. data/lib/elasticsearch/api/actions/synonyms/delete_synonym.rb +60 -0
  470. data/lib/elasticsearch/api/actions/synonyms/delete_synonym_rule.rb +64 -0
  471. data/lib/elasticsearch/api/actions/synonyms/get_synonym.rb +62 -0
  472. data/lib/elasticsearch/api/actions/synonyms/get_synonym_rule.rb +64 -0
  473. data/lib/elasticsearch/api/actions/synonyms/get_synonyms_sets.rb +52 -0
  474. data/lib/elasticsearch/api/actions/synonyms/put_synonym.rb +62 -0
  475. data/lib/elasticsearch/api/actions/synonyms/put_synonym_rule.rb +66 -0
  476. data/lib/elasticsearch/api/actions/tasks/cancel.rb +19 -17
  477. data/lib/elasticsearch/api/actions/tasks/get.rb +18 -14
  478. data/lib/elasticsearch/api/actions/tasks/list.rb +14 -20
  479. data/lib/elasticsearch/api/actions/terms_enum.rb +64 -0
  480. data/lib/elasticsearch/api/actions/termvectors.rb +27 -43
  481. data/lib/elasticsearch/api/actions/text_structure/find_field_structure.rb +64 -0
  482. data/lib/elasticsearch/api/actions/text_structure/find_message_structure.rb +64 -0
  483. data/lib/elasticsearch/api/actions/text_structure/find_structure.rb +75 -0
  484. data/lib/elasticsearch/api/actions/text_structure/test_grok_pattern.rb +54 -0
  485. data/lib/elasticsearch/api/actions/transform/delete_transform.rb +63 -0
  486. data/lib/elasticsearch/api/actions/transform/get_transform.rb +66 -0
  487. data/lib/elasticsearch/api/actions/transform/get_transform_stats.rb +64 -0
  488. data/lib/elasticsearch/api/actions/transform/preview_transform.rb +69 -0
  489. data/lib/elasticsearch/api/actions/transform/put_transform.rb +64 -0
  490. data/lib/elasticsearch/api/actions/transform/reset_transform.rb +62 -0
  491. data/lib/elasticsearch/api/actions/transform/schedule_now_transform.rb +61 -0
  492. data/lib/elasticsearch/api/actions/transform/start_transform.rb +62 -0
  493. data/lib/elasticsearch/api/actions/transform/stop_transform.rb +65 -0
  494. data/lib/elasticsearch/api/actions/transform/update_transform.rb +64 -0
  495. data/lib/elasticsearch/api/actions/transform/upgrade_transforms.rb +52 -0
  496. data/lib/elasticsearch/api/actions/update.rb +24 -38
  497. data/lib/elasticsearch/api/actions/update_by_query.rb +20 -65
  498. data/lib/elasticsearch/api/actions/update_by_query_rethrottle.rb +18 -13
  499. data/lib/elasticsearch/api/actions/watcher/ack_watch.rb +67 -0
  500. data/lib/elasticsearch/api/actions/watcher/activate_watch.rb +60 -0
  501. data/lib/elasticsearch/api/actions/watcher/deactivate_watch.rb +60 -0
  502. data/lib/elasticsearch/api/actions/watcher/delete_watch.rb +68 -0
  503. data/lib/elasticsearch/api/actions/watcher/execute_watch.rb +64 -0
  504. data/lib/elasticsearch/api/actions/watcher/get_settings.rb +50 -0
  505. data/lib/elasticsearch/api/actions/watcher/get_watch.rb +60 -0
  506. data/lib/elasticsearch/api/actions/watcher/put_watch.rb +65 -0
  507. data/lib/elasticsearch/api/actions/watcher/query_watches.rb +56 -0
  508. data/lib/elasticsearch/api/actions/watcher/start.rb +50 -0
  509. data/lib/elasticsearch/api/actions/watcher/stats.rb +63 -0
  510. data/lib/elasticsearch/api/actions/watcher/stop.rb +50 -0
  511. data/lib/elasticsearch/api/actions/watcher/update_settings.rb +53 -0
  512. data/lib/elasticsearch/api/actions/xpack/info.rb +52 -0
  513. data/lib/elasticsearch/api/actions/xpack/usage.rb +51 -0
  514. data/lib/elasticsearch/api/namespace/async_search.rb +36 -0
  515. data/lib/elasticsearch/api/{actions/remote/info.rb → namespace/autoscaling.rb} +12 -13
  516. data/lib/elasticsearch/api/namespace/common.rb +2 -2
  517. data/lib/elasticsearch/api/namespace/connector.rb +36 -0
  518. data/lib/elasticsearch/api/namespace/cross_cluster_replication.rb +38 -0
  519. data/lib/elasticsearch/api/namespace/data_frame_transform_deprecated.rb +36 -0
  520. data/lib/elasticsearch/api/namespace/enrich.rb +36 -0
  521. data/lib/elasticsearch/api/namespace/eql.rb +36 -0
  522. data/lib/elasticsearch/api/namespace/esql.rb +36 -0
  523. data/lib/elasticsearch/api/namespace/fleet.rb +36 -0
  524. data/lib/elasticsearch/api/namespace/graph.rb +36 -0
  525. data/lib/elasticsearch/api/namespace/index_lifecycle_management.rb +38 -0
  526. data/lib/elasticsearch/api/namespace/inference.rb +36 -0
  527. data/lib/elasticsearch/api/namespace/ingest.rb +0 -1
  528. data/lib/elasticsearch/api/namespace/license.rb +36 -0
  529. data/lib/elasticsearch/api/namespace/logstash.rb +36 -0
  530. data/lib/elasticsearch/api/{actions/abort_benchmark.rb → namespace/machine_learning.rb} +13 -16
  531. data/lib/elasticsearch/api/namespace/migration.rb +36 -0
  532. data/lib/elasticsearch/api/namespace/monitoring.rb +36 -0
  533. data/lib/elasticsearch/api/namespace/profiling.rb +36 -0
  534. data/lib/elasticsearch/api/namespace/query_ruleset.rb +36 -0
  535. data/lib/elasticsearch/api/namespace/rollup.rb +36 -0
  536. data/lib/elasticsearch/api/namespace/search_application.rb +36 -0
  537. data/lib/elasticsearch/api/namespace/searchable_snapshots.rb +36 -0
  538. data/lib/elasticsearch/api/namespace/security.rb +36 -0
  539. data/lib/elasticsearch/api/namespace/simulate.rb +36 -0
  540. data/lib/elasticsearch/api/namespace/snapshot_lifecycle_management.rb +38 -0
  541. data/lib/elasticsearch/api/namespace/sql.rb +36 -0
  542. data/lib/elasticsearch/api/namespace/ssl.rb +36 -0
  543. data/lib/elasticsearch/api/namespace/synonyms.rb +36 -0
  544. data/lib/elasticsearch/api/namespace/text_structure.rb +36 -0
  545. data/lib/elasticsearch/api/namespace/transform.rb +36 -0
  546. data/lib/elasticsearch/api/namespace/watcher.rb +36 -0
  547. data/lib/elasticsearch/api/namespace/xpack.rb +36 -0
  548. data/lib/elasticsearch/api/response.rb +48 -0
  549. data/lib/elasticsearch/api/utils.rb +6 -56
  550. data/lib/elasticsearch/api/version.rb +1 -1
  551. data/lib/elasticsearch/api.rb +34 -21
  552. data/spec/elasticsearch/api/actions/bulk_spec.rb +39 -35
  553. data/spec/elasticsearch/api/actions/cat/aliases_spec.rb +3 -2
  554. data/spec/elasticsearch/api/actions/cat/allocation_spec.rb +3 -2
  555. data/spec/elasticsearch/api/actions/cat/component_templates_spec.rb +58 -0
  556. data/spec/elasticsearch/api/actions/cat/count_spec.rb +3 -2
  557. data/spec/elasticsearch/api/actions/cat/fielddata_spec.rb +6 -4
  558. data/spec/elasticsearch/api/actions/cat/health_spec.rb +3 -2
  559. data/spec/elasticsearch/api/actions/cat/help_spec.rb +3 -2
  560. data/spec/elasticsearch/api/actions/cat/indices_spec.rb +3 -2
  561. data/spec/elasticsearch/api/actions/cat/master_spec.rb +3 -2
  562. data/spec/elasticsearch/api/actions/cat/nodeattrs_spec.rb +3 -2
  563. data/spec/elasticsearch/api/actions/cat/nodes_spec.rb +3 -2
  564. data/spec/elasticsearch/api/actions/cat/pending_tasks_spec.rb +3 -2
  565. data/spec/elasticsearch/api/actions/cat/plugins_spec.rb +3 -2
  566. data/spec/elasticsearch/api/actions/cat/recovery_spec.rb +3 -2
  567. data/spec/elasticsearch/api/actions/cat/repositories_spec.rb +3 -2
  568. data/spec/elasticsearch/api/actions/cat/segments_spec.rb +15 -3
  569. data/spec/elasticsearch/api/actions/cat/shards_spec.rb +3 -2
  570. data/spec/elasticsearch/api/actions/cat/snapshot_spec.rb +3 -2
  571. data/spec/elasticsearch/api/actions/cat/tasks_spec.rb +3 -2
  572. data/spec/elasticsearch/api/actions/cat/templates_spec.rb +3 -2
  573. data/spec/elasticsearch/api/actions/cat/thread_pool_spec.rb +3 -2
  574. data/spec/elasticsearch/api/actions/clear_scroll_spec.rb +6 -4
  575. data/spec/elasticsearch/api/actions/close_point_in_time_spec.rb +3 -2
  576. data/spec/elasticsearch/api/actions/cluster/allocation_explain_spec.rb +3 -2
  577. data/spec/elasticsearch/api/actions/cluster/get_settings_spec.rb +3 -2
  578. data/spec/elasticsearch/api/actions/cluster/health_spec.rb +9 -6
  579. data/spec/elasticsearch/api/actions/cluster/info_spec.rb +36 -0
  580. data/spec/elasticsearch/api/actions/cluster/pending_tasks_spec.rb +3 -2
  581. data/spec/elasticsearch/api/actions/cluster/put_settings_spec.rb +3 -2
  582. data/spec/elasticsearch/api/actions/cluster/remote_info_spec.rb +3 -2
  583. data/spec/elasticsearch/api/actions/cluster/reroute_spec.rb +6 -4
  584. data/spec/elasticsearch/api/actions/cluster/state_spec.rb +6 -4
  585. data/spec/elasticsearch/api/actions/cluster/stats_spec.rb +3 -2
  586. data/spec/elasticsearch/api/actions/connector/check_in_spec.rb +38 -0
  587. data/spec/elasticsearch/api/actions/connector/delete_spec.rb +38 -0
  588. data/spec/elasticsearch/api/actions/connector/get_spec.rb +38 -0
  589. data/spec/elasticsearch/api/actions/connector/last_sync_spec.rb +38 -0
  590. data/spec/elasticsearch/api/actions/{benchmark_spec.rb → connector/list_spec.rb} +7 -6
  591. data/spec/elasticsearch/api/actions/connector/post_spec.rb +35 -0
  592. data/spec/elasticsearch/api/actions/connector/put_spec.rb +43 -0
  593. data/spec/elasticsearch/api/actions/connector/update_active_filtering_spec.rb +38 -0
  594. data/spec/elasticsearch/api/actions/connector/update_api_key_id_spec.rb +38 -0
  595. data/spec/elasticsearch/api/actions/connector/update_configuration_spec.rb +38 -0
  596. data/spec/elasticsearch/api/actions/connector/update_error_spec.rb +38 -0
  597. data/spec/elasticsearch/api/actions/connector/update_filtering_spec.rb +38 -0
  598. data/spec/elasticsearch/api/actions/connector/update_filtering_validation_spec.rb +38 -0
  599. data/spec/elasticsearch/api/actions/connector/update_index_name_spec.rb +38 -0
  600. data/spec/elasticsearch/api/actions/connector/update_name_spec.rb +38 -0
  601. data/spec/elasticsearch/api/actions/connector/update_native_spec.rb +38 -0
  602. data/spec/elasticsearch/api/actions/connector/update_pipeline_spec.rb +38 -0
  603. data/spec/elasticsearch/api/actions/connector/update_scheduling_spec.rb +42 -0
  604. data/spec/elasticsearch/api/actions/connector/update_service_type_spec.rb +38 -0
  605. data/spec/elasticsearch/api/actions/connector/update_status_spec.rb +38 -0
  606. data/spec/elasticsearch/api/actions/connector_secret/delete_spec.rb +35 -0
  607. data/spec/elasticsearch/api/actions/connector_secret/get_spec.rb +35 -0
  608. data/spec/elasticsearch/api/actions/connector_secret/post_spec.rb +35 -0
  609. data/spec/elasticsearch/api/actions/connector_secret/put_spec.rb +35 -0
  610. data/spec/elasticsearch/api/actions/connector_sync_job/cancel_spec.rb +38 -0
  611. data/spec/elasticsearch/api/actions/connector_sync_job/check_in_spec.rb +38 -0
  612. data/spec/elasticsearch/api/actions/connector_sync_job/delete_spec.rb +38 -0
  613. data/spec/elasticsearch/api/actions/connector_sync_job/error_spec.rb +38 -0
  614. data/spec/elasticsearch/api/actions/connector_sync_job/get_spec.rb +38 -0
  615. data/spec/elasticsearch/api/actions/connector_sync_job/list_spec.rb +35 -0
  616. data/spec/elasticsearch/api/actions/connector_sync_job/post_spec.rb +35 -0
  617. data/spec/elasticsearch/api/actions/connector_sync_job/update_stats_spec.rb +38 -0
  618. data/spec/elasticsearch/api/actions/count_spec.rb +12 -12
  619. data/spec/elasticsearch/api/actions/create_document_spec.rb +43 -9
  620. data/spec/elasticsearch/api/actions/dangling_indices/delete_dangling_indices_spec.rb +3 -2
  621. data/spec/elasticsearch/api/actions/dangling_indices/import_dangling_indices_spec.rb +3 -2
  622. data/spec/elasticsearch/api/actions/dangling_indices/list_dangling_indices_spec.rb +3 -2
  623. data/spec/elasticsearch/api/actions/data_frame/update_data_frame_transform_spec.rb +82 -0
  624. data/spec/elasticsearch/api/actions/delete_by_query_spec.rb +6 -21
  625. data/spec/elasticsearch/api/actions/delete_document_spec.rb +13 -24
  626. data/spec/elasticsearch/api/actions/delete_script_spec.rb +3 -2
  627. data/spec/elasticsearch/api/actions/esql/async_query_get._spec.rb +35 -0
  628. data/spec/elasticsearch/api/actions/esql/async_query_spec.rb +35 -0
  629. data/spec/elasticsearch/api/actions/{abort_benchmark_spec.rb → esql/query_spec.rb} +6 -5
  630. data/spec/elasticsearch/api/actions/exists_document_spec.rb +12 -22
  631. data/spec/elasticsearch/api/actions/explain_document_spec.rb +44 -10
  632. data/spec/elasticsearch/api/actions/features/get_features_spec.rb +12 -7
  633. data/spec/elasticsearch/api/actions/features/reset_features_spec.rb +12 -7
  634. data/spec/elasticsearch/api/actions/field_caps_spec.rb +3 -2
  635. data/spec/elasticsearch/api/actions/fleet/global_checkpoints_spec.rb +45 -0
  636. data/spec/elasticsearch/api/actions/fleet/msearch_spec.rb +45 -0
  637. data/spec/elasticsearch/api/actions/fleet/search_spec.rb +45 -0
  638. data/spec/elasticsearch/api/actions/get_document_source_spec.rb +19 -19
  639. data/spec/elasticsearch/api/actions/get_document_spec.rb +19 -32
  640. data/spec/elasticsearch/api/actions/get_script_spec.rb +3 -2
  641. data/spec/elasticsearch/api/actions/health_report_spec.rb +52 -0
  642. data/spec/elasticsearch/api/actions/index_document_spec.rb +34 -29
  643. data/spec/elasticsearch/api/actions/index_lifecycle_management/migrate_to_data_tiers_spec.rb +37 -0
  644. data/spec/elasticsearch/api/actions/indices/add_block_spec.rb +4 -2
  645. data/spec/elasticsearch/api/actions/indices/analyze_spec.rb +16 -4
  646. data/spec/elasticsearch/api/actions/indices/clear_cache_spec.rb +44 -8
  647. data/spec/elasticsearch/api/actions/indices/clone_spec.rb +9 -7
  648. data/spec/elasticsearch/api/actions/indices/close_spec.rb +16 -4
  649. data/spec/elasticsearch/api/actions/indices/create_spec.rb +16 -4
  650. data/spec/elasticsearch/api/actions/{nodes/shutdown_spec.rb → indices/data_streams_stats_spec.rb} +26 -32
  651. data/spec/elasticsearch/api/actions/indices/delete_alias_spec.rb +17 -3
  652. data/spec/elasticsearch/api/actions/indices/delete_data_lifecycle_spec.rb +35 -0
  653. data/spec/elasticsearch/api/actions/indices/delete_spec.rb +28 -5
  654. data/spec/elasticsearch/api/actions/indices/delete_template_spec.rb +15 -3
  655. data/spec/elasticsearch/api/actions/indices/disk_usage_spec.rb +49 -0
  656. data/spec/elasticsearch/api/actions/indices/exists_alias_spec.rb +26 -1
  657. data/spec/elasticsearch/api/actions/indices/exists_spec.rb +24 -1
  658. data/spec/elasticsearch/api/actions/indices/exists_template_spec.rb +13 -1
  659. data/spec/elasticsearch/api/actions/indices/explain_data_lifecycle_spec.rb +36 -0
  660. data/spec/elasticsearch/api/actions/indices/field_usage_stats_spec.rb +47 -0
  661. data/spec/elasticsearch/api/actions/indices/flush_spec.rb +51 -6
  662. data/spec/elasticsearch/api/actions/indices/forcemerge_spec.rb +3 -2
  663. data/spec/elasticsearch/api/actions/indices/get_alias_spec.rb +28 -4
  664. data/spec/elasticsearch/api/actions/indices/get_data_lifecycle_spec.rb +35 -0
  665. data/spec/elasticsearch/api/actions/indices/get_field_mapping_spec.rb +13 -12
  666. data/spec/elasticsearch/api/actions/indices/get_mapping_spec.rb +40 -21
  667. data/spec/elasticsearch/api/actions/indices/get_settings_spec.rb +39 -5
  668. data/spec/elasticsearch/api/actions/indices/get_spec.rb +4 -3
  669. data/spec/elasticsearch/api/actions/indices/open_spec.rb +16 -4
  670. data/spec/elasticsearch/api/actions/indices/put_alias_spec.rb +31 -5
  671. data/spec/elasticsearch/api/actions/indices/put_data_lifecycle_spec.rb +35 -0
  672. data/spec/elasticsearch/api/actions/indices/put_mapping_spec.rb +32 -15
  673. data/spec/elasticsearch/api/actions/indices/put_settings_spec.rb +51 -6
  674. data/spec/elasticsearch/api/actions/indices/put_template_spec.rb +16 -4
  675. data/spec/elasticsearch/api/actions/indices/recovery_spec.rb +3 -2
  676. data/spec/elasticsearch/api/actions/indices/refresh_spec.rb +51 -6
  677. data/spec/elasticsearch/api/actions/indices/resolve_cluster_spec.rb +51 -0
  678. data/spec/elasticsearch/api/actions/indices/rollover_spec.rb +15 -3
  679. data/spec/elasticsearch/api/actions/indices/segments_spec.rb +51 -6
  680. data/spec/elasticsearch/api/actions/indices/shard_stores_spec.rb +3 -2
  681. data/spec/elasticsearch/api/actions/indices/shrink_spec.rb +4 -2
  682. data/spec/elasticsearch/api/actions/indices/split_spec.rb +4 -2
  683. data/spec/elasticsearch/api/actions/indices/stats_spec.rb +75 -13
  684. data/spec/elasticsearch/api/actions/indices/unfreeze_spec.rb +97 -0
  685. data/spec/elasticsearch/api/actions/indices/update_aliases_spec.rb +4 -3
  686. data/spec/elasticsearch/api/actions/indices/validate_query_spec.rb +74 -16
  687. data/spec/elasticsearch/api/actions/inference/delete_model_spec.rb +36 -0
  688. data/spec/elasticsearch/api/actions/inference/get_model_spec.rb +36 -0
  689. data/spec/elasticsearch/api/actions/inference/inference_spec.rb +36 -0
  690. data/spec/elasticsearch/api/actions/inference/put_model_spec.rb +36 -0
  691. data/spec/elasticsearch/api/actions/info_spec.rb +3 -2
  692. data/spec/elasticsearch/api/actions/ingest/delete_pipeline_spec.rb +15 -3
  693. data/spec/elasticsearch/api/actions/ingest/geo_ip_stats_spec.rb +7 -2
  694. data/spec/elasticsearch/api/actions/ingest/get_pipeline_spec.rb +15 -3
  695. data/spec/elasticsearch/api/actions/ingest/put_pipeline_spec.rb +15 -3
  696. data/spec/elasticsearch/api/actions/ingest/simulate_spec.rb +15 -3
  697. data/spec/elasticsearch/api/actions/json_builders_spec.rb +6 -4
  698. data/spec/elasticsearch/api/actions/machine_learning/get_memory_stats_spec.rb +59 -0
  699. data/spec/elasticsearch/api/actions/machine_learning/get_model_snapshot_upgrade_stats_spec.rb +60 -0
  700. data/spec/elasticsearch/api/actions/machine_learning/infer_trained_model_deployment_spec.rb +47 -0
  701. data/spec/elasticsearch/api/actions/machine_learning/put_trained_model_definition_part_spec.rb +64 -0
  702. data/spec/elasticsearch/api/actions/machine_learning/put_trained_model_vocabulary_spec.rb +56 -0
  703. data/spec/elasticsearch/api/actions/machine_learning/reset_job_spec.rb +47 -0
  704. data/spec/elasticsearch/api/actions/machine_learning/set_upgrade_mode_spec.rb +53 -0
  705. data/spec/elasticsearch/api/actions/machine_learning/start_trained_model_deployment_spec.rb +48 -0
  706. data/spec/elasticsearch/api/actions/machine_learning/stop_trained_model_deployment_spec.rb +48 -0
  707. data/spec/elasticsearch/api/actions/machine_learning/update_trained_model_deployment_spec.rb +36 -0
  708. data/spec/elasticsearch/api/actions/mget_spec.rb +27 -19
  709. data/spec/elasticsearch/api/actions/migration/get_feature_upgrade_status_spec.rb +35 -0
  710. data/spec/elasticsearch/api/actions/migration/post_feature_upgrade_spec.rb +35 -0
  711. data/spec/elasticsearch/api/actions/msearch_spec.rb +51 -15
  712. data/spec/elasticsearch/api/actions/msearch_template_spec.rb +15 -3
  713. data/spec/elasticsearch/api/actions/mtermvectors_spec.rb +6 -7
  714. data/spec/elasticsearch/api/actions/nodes/clear_repositories_metering_archive_spec.rb +53 -0
  715. data/spec/elasticsearch/api/actions/nodes/get_repositories_metering_info_spec.rb +46 -0
  716. data/spec/elasticsearch/api/actions/nodes/hot_threads_spec.rb +30 -7
  717. data/spec/elasticsearch/api/actions/nodes/info_spec.rb +52 -7
  718. data/spec/elasticsearch/api/actions/nodes/reload_secure_settings_spec.rb +40 -6
  719. data/spec/elasticsearch/api/actions/nodes/stats_spec.rb +39 -5
  720. data/spec/elasticsearch/api/actions/open_point_in_time_spec.rb +4 -13
  721. data/spec/elasticsearch/api/actions/ping_spec.rb +2 -1
  722. data/spec/elasticsearch/api/actions/profiling/flamegraph_spec.rb +35 -0
  723. data/spec/elasticsearch/api/actions/profiling/stacktraces_spec.rb +35 -0
  724. data/spec/elasticsearch/api/actions/{snapshot/get_features_spec.rb → profiling/status_spec.rb} +6 -8
  725. data/spec/elasticsearch/api/actions/profiling/topn_functions_spec.rb +35 -0
  726. data/spec/elasticsearch/api/actions/put_script_spec.rb +6 -4
  727. data/spec/elasticsearch/api/actions/query_ruleset/delete_spec.rb +36 -0
  728. data/spec/elasticsearch/api/actions/query_ruleset/get_spec.rb +35 -0
  729. data/spec/elasticsearch/api/actions/query_ruleset/put_spec.rb +36 -0
  730. data/spec/elasticsearch/api/actions/rank_eval_spec.rb +139 -0
  731. data/spec/elasticsearch/api/actions/reindex_spec.rb +3 -2
  732. data/spec/elasticsearch/api/actions/render_search_template_spec.rb +6 -4
  733. data/spec/elasticsearch/api/actions/scroll_spec.rb +6 -4
  734. data/spec/elasticsearch/api/actions/search_application/delete_behavioral_analytics_spec.rb +36 -0
  735. data/spec/elasticsearch/api/actions/search_application/delete_spec.rb +35 -0
  736. data/spec/elasticsearch/api/actions/search_application/get_behavioral_analytics_spec.rb +35 -0
  737. data/spec/elasticsearch/api/actions/search_application/get_spec.rb +35 -0
  738. data/spec/elasticsearch/api/actions/search_application/list_spec.rb +35 -0
  739. data/spec/elasticsearch/api/actions/search_application/post_behavioral_analytics_event_spec.rb +40 -0
  740. data/spec/elasticsearch/api/actions/search_application/put_behavioral_analytics_spec.rb +36 -0
  741. data/spec/elasticsearch/api/actions/search_application/put_spec.rb +35 -0
  742. data/spec/elasticsearch/api/actions/search_application/render_query_spec.rb +36 -0
  743. data/spec/elasticsearch/api/actions/search_application/search_spec.rb +35 -0
  744. data/spec/elasticsearch/api/actions/search_mvt_spec.rb +55 -0
  745. data/spec/elasticsearch/api/actions/search_shards_spec.rb +3 -2
  746. data/spec/elasticsearch/api/actions/search_spec.rb +24 -39
  747. data/spec/elasticsearch/api/actions/search_template_spec.rb +3 -2
  748. data/spec/elasticsearch/api/actions/searchable_snapshots/cache_stats_spec.rb +56 -0
  749. data/spec/elasticsearch/api/actions/searchable_snapshots/clear_cache_spec.rb +57 -0
  750. data/spec/elasticsearch/api/actions/searchable_snapshots/mount_spec.rb +58 -0
  751. data/spec/elasticsearch/api/actions/searchable_snapshots/stats_spec.rb +57 -0
  752. data/spec/elasticsearch/api/actions/security/clear_cached_service_tokens_spec.rb +60 -0
  753. data/spec/elasticsearch/api/actions/security/create_api_key_spec.rb +81 -0
  754. data/spec/elasticsearch/api/actions/security/create_cross_cluster_api_key_spec.rb +36 -0
  755. data/spec/elasticsearch/api/actions/security/create_service_token_spec.rb +83 -0
  756. data/spec/elasticsearch/api/actions/security/delete_service_token_spec.rb +62 -0
  757. data/spec/elasticsearch/api/actions/security/disable_user_profile_spec.rb +35 -0
  758. data/spec/elasticsearch/api/actions/security/enable_user_profile_spec.rb +35 -0
  759. data/spec/elasticsearch/api/actions/security/enroll_kibana_spec.rb +35 -0
  760. data/spec/elasticsearch/api/actions/security/get_api_key_spec.rb +57 -0
  761. data/spec/elasticsearch/api/actions/{indices/upgrade_spec.rb → security/get_builtin_privileges_spec.rb} +6 -5
  762. data/spec/elasticsearch/api/actions/security/get_service_accounts_spec.rb +83 -0
  763. data/spec/elasticsearch/api/actions/security/get_service_credentials_spec.rb +55 -0
  764. data/spec/elasticsearch/api/actions/security/has_privileges_user_profile_spec.rb +35 -0
  765. data/spec/elasticsearch/api/actions/security/invalidate_api_key_spec.rb +39 -0
  766. data/spec/elasticsearch/api/actions/security/query_api_keys_spec.rb +49 -0
  767. data/spec/elasticsearch/api/actions/security/query_user_spec.rb +49 -0
  768. data/spec/elasticsearch/api/actions/security/saml_authenticate_spec.rb +45 -0
  769. data/spec/elasticsearch/api/actions/security/saml_complete_logout_spec.rb +45 -0
  770. data/spec/elasticsearch/api/actions/security/saml_invalidate_spec.rb +45 -0
  771. data/spec/elasticsearch/api/actions/security/saml_logout_spec.rb +45 -0
  772. data/spec/elasticsearch/api/actions/security/saml_prepare_authentication_spec.rb +45 -0
  773. data/spec/elasticsearch/api/actions/security/saml_service_provider_metadata_spec.rb +48 -0
  774. data/spec/elasticsearch/api/actions/security/suggest_user_profiles_spec.rb +46 -0
  775. data/spec/elasticsearch/api/actions/security/update_api_key_spec.rb +35 -0
  776. data/spec/elasticsearch/api/actions/security/update_cross_cluster_api_key_spec.rb +37 -0
  777. data/spec/elasticsearch/api/actions/shutdown/delete_node_spec.rb +3 -2
  778. data/spec/elasticsearch/api/actions/shutdown/get_node_spec.rb +15 -3
  779. data/spec/elasticsearch/api/actions/shutdown/put_node_spec.rb +3 -2
  780. data/spec/elasticsearch/api/actions/simulate/ingest_spec.rb +35 -0
  781. data/spec/elasticsearch/api/actions/snapshot/clone_spec.rb +5 -2
  782. data/spec/elasticsearch/api/actions/snapshot/create_repository_spec.rb +4 -2
  783. data/spec/elasticsearch/api/actions/snapshot/create_spec.rb +4 -2
  784. data/spec/elasticsearch/api/actions/snapshot/delete_repository_spec.rb +17 -3
  785. data/spec/elasticsearch/api/actions/snapshot/delete_spec.rb +4 -2
  786. data/spec/elasticsearch/api/actions/snapshot/get_repository_spec.rb +3 -2
  787. data/spec/elasticsearch/api/actions/snapshot/get_spec.rb +4 -2
  788. data/spec/elasticsearch/api/actions/snapshot/repository_analize_spec.rb +48 -0
  789. data/spec/elasticsearch/api/actions/snapshot/restore_spec.rb +9 -10
  790. data/spec/elasticsearch/api/actions/snapshot/status_spec.rb +15 -4
  791. data/spec/elasticsearch/api/actions/snapshot/verify_repository_spec.rb +8 -7
  792. data/spec/elasticsearch/api/actions/sql/delete_async_spec.rb +47 -0
  793. data/spec/elasticsearch/api/actions/sql/get_async_spec.rb +47 -0
  794. data/spec/elasticsearch/api/actions/sql/get_async_stats_spec.rb +47 -0
  795. data/spec/elasticsearch/api/actions/tasks/cancel_spec.rb +19 -8
  796. data/spec/elasticsearch/api/actions/tasks/get_spec.rb +3 -2
  797. data/spec/elasticsearch/api/actions/tasks/list_spec.rb +7 -7
  798. data/spec/elasticsearch/api/actions/terms_enum_spec.rb +53 -0
  799. data/spec/elasticsearch/api/actions/termvectors_spec.rb +18 -6
  800. data/spec/elasticsearch/api/actions/text_structure/find_field_structure_spec.rb +35 -0
  801. data/spec/elasticsearch/api/actions/text_structure/find_message_structure_spec.rb +35 -0
  802. data/spec/elasticsearch/api/actions/text_structure/find_structure_spec.rb +35 -0
  803. data/spec/elasticsearch/api/actions/text_structure/test_grok_pattern_spec.rb +35 -0
  804. data/spec/elasticsearch/api/actions/transform/schedule_now_transform_spec.rb +36 -0
  805. data/spec/elasticsearch/api/actions/update_by_query_spec.rb +7 -7
  806. data/spec/elasticsearch/api/actions/update_document_spec.rb +27 -29
  807. data/spec/elasticsearch/api/actions/watcher/get_settings_spec.rb +35 -0
  808. data/spec/elasticsearch/api/actions/watcher/update_settings_spec.rb +47 -0
  809. data/spec/elasticsearch/api/api_response_spec.rb +65 -0
  810. data/spec/elasticsearch/api/api_spec.rb +0 -3
  811. data/spec/elasticsearch/api/client_spec.rb +0 -4
  812. data/spec/elasticsearch/api/perform_request_spec.rb +86 -0
  813. data/spec/elasticsearch/api/utils_spec.rb +14 -89
  814. data/spec/free/integration/health_spec.rb +28 -0
  815. data/spec/free/integration/spec_helper.rb +28 -0
  816. data/spec/platinum/integration/analytics/usage_spec.rb +56 -0
  817. data/spec/platinum/integration/api_key/admin_user_query_api_keys_spec.rb +111 -0
  818. data/spec/platinum/integration/api_key/api_key_admin_user_spec.rb +127 -0
  819. data/spec/platinum/integration/api_key/api_key_cross_cluster_spec.rb +113 -0
  820. data/spec/platinum/integration/api_key/api_key_invalidation_spec.rb +105 -0
  821. data/spec/platinum/integration/api_key/api_key_query_spec.rb +149 -0
  822. data/spec/platinum/integration/api_key/api_key_query_with_aggs_spec.rb +120 -0
  823. data/spec/platinum/integration/api_key/api_key_spec.rb +156 -0
  824. data/spec/platinum/integration/api_key/api_key_update_spec.rb +134 -0
  825. data/spec/platinum/integration/eql/eql_async_spec.rb +72 -0
  826. data/spec/platinum/integration/health/health_spec.rb +49 -0
  827. data/spec/platinum/integration/ml/get_memory_stats_spec.rb +47 -0
  828. data/spec/platinum/integration/platinum_helper.rb +42 -0
  829. data/spec/platinum/integration/security/users_query_spec.rb +49 -0
  830. data/spec/platinum/integration/service_accounts/service_accounts_spec.rb +65 -0
  831. data/spec/platinum/integration/snapshots/snapshots_spec.rb +84 -0
  832. data/spec/platinum/integration/spatial/script_doc_values_spec.rb +147 -0
  833. data/spec/platinum/integration/token/token_spec.rb +94 -0
  834. data/spec/platinum/unit/async_search/delete_test.rb +39 -0
  835. data/spec/platinum/unit/async_search/get_test.rb +39 -0
  836. data/spec/platinum/unit/async_search/status_test.rb +39 -0
  837. data/spec/platinum/unit/async_search/submit_test.rb +50 -0
  838. data/spec/platinum/unit/autoscaling/delete_autoscaling_policy_test.rb +46 -0
  839. data/spec/platinum/unit/autoscaling/get_autoscaling_capacity_test.rb +40 -0
  840. data/spec/platinum/unit/autoscaling/get_autoscaling_policy_test.rb +46 -0
  841. data/spec/platinum/unit/autoscaling/put_autoscaling_policy_test.rb +52 -0
  842. data/spec/platinum/unit/enrich/delete_policy_test.rb +43 -0
  843. data/spec/platinum/unit/eql/delete_test.rb +46 -0
  844. data/spec/platinum/unit/eql/get_status_test.rb +46 -0
  845. data/spec/platinum/unit/eql/get_test.rb +46 -0
  846. data/spec/platinum/unit/eql/search_test.rb +52 -0
  847. data/spec/platinum/unit/graph/explore_test.rb +43 -0
  848. data/spec/platinum/unit/index_lifecycle_management/explain_test.rb +43 -0
  849. data/spec/platinum/unit/index_lifecycle_management/get_status_test.rb +43 -0
  850. data/spec/platinum/unit/index_lifecycle_management/move_to_step.rb +43 -0
  851. data/spec/platinum/unit/index_lifecycle_management/remove_policy_test.rb +43 -0
  852. data/spec/platinum/unit/index_lifecycle_management/retry_policy_test.rb +43 -0
  853. data/spec/platinum/unit/index_lifecycle_management/start_test.rb +43 -0
  854. data/spec/platinum/unit/index_lifecycle_management/stop_test.rb +43 -0
  855. data/spec/platinum/unit/indices/create_data_stream_test.rb +46 -0
  856. data/spec/platinum/unit/indices/data_stream_stats_test.rb +54 -0
  857. data/spec/platinum/unit/indices/delete_data_stream_test.rb +46 -0
  858. data/spec/platinum/unit/indices/downsample_test.rb +58 -0
  859. data/spec/platinum/unit/indices/get_data_stream_test.rb +50 -0
  860. data/spec/platinum/unit/indices/migrate_to_data_stream_test.rb +46 -0
  861. data/spec/platinum/unit/indices/modify_data_stream_test.rb +46 -0
  862. data/spec/platinum/unit/indices/promote_data_stream_test.rb +46 -0
  863. data/spec/platinum/unit/info_test.rb +40 -0
  864. data/spec/platinum/unit/knn_search_test.rb +40 -0
  865. data/spec/platinum/unit/license/delete_test.rb +43 -0
  866. data/spec/platinum/unit/license/get_test.rb +43 -0
  867. data/spec/platinum/unit/license/post_test.rb +43 -0
  868. data/spec/platinum/unit/logstash/delete_pipeline_test.rb +46 -0
  869. data/spec/platinum/unit/logstash/get_pipeline_test.rb +46 -0
  870. data/spec/platinum/unit/logstash/put_pipeline_test.rb +46 -0
  871. data/spec/platinum/unit/machine_learning/clear_trained_model_deployment_cache_test.rb +40 -0
  872. data/spec/platinum/unit/machine_learning/close_job_test.rb +43 -0
  873. data/spec/platinum/unit/machine_learning/delete_datafeed_test.rb +43 -0
  874. data/spec/platinum/unit/machine_learning/delete_expired_data_test.rb +43 -0
  875. data/spec/platinum/unit/machine_learning/delete_filter_test.rb +43 -0
  876. data/spec/platinum/unit/machine_learning/delete_forecast_test.rb +43 -0
  877. data/spec/platinum/unit/machine_learning/delete_job_test.rb +43 -0
  878. data/spec/platinum/unit/machine_learning/delete_model_alias_test.rb +40 -0
  879. data/spec/platinum/unit/machine_learning/delete_model_snapshot_test.rb +43 -0
  880. data/spec/platinum/unit/machine_learning/flush_job_test.rb +43 -0
  881. data/spec/platinum/unit/machine_learning/forecast_test.rb +43 -0
  882. data/spec/platinum/unit/machine_learning/get_buckets_test.rb +43 -0
  883. data/spec/platinum/unit/machine_learning/get_categories_test.rb +43 -0
  884. data/spec/platinum/unit/machine_learning/get_datafeed_stats_test.rb +43 -0
  885. data/spec/platinum/unit/machine_learning/get_datafeeds_test.rb +43 -0
  886. data/spec/platinum/unit/machine_learning/get_filters_test.rb +43 -0
  887. data/spec/platinum/unit/machine_learning/get_influencers_test.rb +43 -0
  888. data/spec/platinum/unit/machine_learning/get_job_stats_test.rb +43 -0
  889. data/spec/platinum/unit/machine_learning/get_jobs_test.rb +43 -0
  890. data/spec/platinum/unit/machine_learning/get_model_snapshots_test.rb +43 -0
  891. data/spec/platinum/unit/machine_learning/get_overall_buckets_test.rb +43 -0
  892. data/spec/platinum/unit/machine_learning/get_records_test.rb +43 -0
  893. data/spec/platinum/unit/machine_learning/open_job_test.rb +43 -0
  894. data/spec/platinum/unit/machine_learning/post_data_test.rb +43 -0
  895. data/spec/platinum/unit/machine_learning/preview_data_frame_analytics_test.rb +64 -0
  896. data/spec/platinum/unit/machine_learning/preview_datafeed_test.rb +43 -0
  897. data/spec/platinum/unit/machine_learning/put_datafeed_test.rb +43 -0
  898. data/spec/platinum/unit/machine_learning/put_filter_test.rb +43 -0
  899. data/spec/platinum/unit/machine_learning/put_job_test.rb +43 -0
  900. data/spec/platinum/unit/machine_learning/put_trained_model_alias_test.rb +40 -0
  901. data/spec/platinum/unit/machine_learning/revert_model_snapshot_test.rb +43 -0
  902. data/spec/platinum/unit/machine_learning/start_datafeed_test.rb +43 -0
  903. data/spec/platinum/unit/machine_learning/stop_datafeed_test.rb +43 -0
  904. data/spec/platinum/unit/machine_learning/update_data_frame_analytics_test.rb +40 -0
  905. data/spec/platinum/unit/machine_learning/update_datafeed_test.rb +43 -0
  906. data/spec/platinum/unit/machine_learning/update_filter_test.rb +43 -0
  907. data/spec/platinum/unit/machine_learning/update_job_test.rb +43 -0
  908. data/spec/platinum/unit/machine_learning/update_model_snapshot_test.rb +43 -0
  909. data/spec/platinum/unit/machine_learning/upgrade_job_snapshot_test.rb +43 -0
  910. data/spec/platinum/unit/machine_learning/validate_detector_test.rb +43 -0
  911. data/spec/platinum/unit/machine_learning/validate_test.rb +43 -0
  912. data/spec/platinum/unit/migration/deprecations_test.rb +42 -0
  913. data/spec/platinum/unit/monitoring/bulk_test.rb +43 -0
  914. data/spec/platinum/unit/rollup/get_rollup_index_caps_test.rb +40 -0
  915. data/spec/platinum/unit/security/activate_user_profile_test.rb +40 -0
  916. data/spec/platinum/unit/security/authenticate_test.rb +43 -0
  917. data/spec/platinum/unit/security/bulk_update_api_key_test.rb +40 -0
  918. data/spec/platinum/unit/security/change_password_test.rb +55 -0
  919. data/spec/platinum/unit/security/clear_api_key_cache_test.rb +40 -0
  920. data/spec/platinum/unit/security/clear_cached_privileges_test.rb +40 -0
  921. data/spec/platinum/unit/security/clear_cached_realms_test.rb +43 -0
  922. data/spec/platinum/unit/security/clear_cached_roles_test.rb +43 -0
  923. data/spec/platinum/unit/security/delete_privileges_test.rb +43 -0
  924. data/spec/platinum/unit/security/delete_role_mapping_test.rb +43 -0
  925. data/spec/platinum/unit/security/delete_role_test.rb +43 -0
  926. data/spec/platinum/unit/security/delete_user_test.rb +43 -0
  927. data/spec/platinum/unit/security/disable_user_test.rb +43 -0
  928. data/spec/platinum/unit/security/enable_user_test.rb +43 -0
  929. data/spec/platinum/unit/security/get_privileges_test.rb +78 -0
  930. data/spec/platinum/unit/security/get_role_mapping_test.rb +54 -0
  931. data/spec/platinum/unit/security/get_role_test.rb +62 -0
  932. data/spec/platinum/unit/security/get_token_test.rb +43 -0
  933. data/spec/platinum/unit/security/get_user_privileges_test.rb +43 -0
  934. data/spec/platinum/unit/security/get_user_profile_test.rb +40 -0
  935. data/spec/platinum/unit/security/get_user_test.rb +61 -0
  936. data/spec/platinum/unit/security/grant_api_key_test.rb +41 -0
  937. data/spec/platinum/unit/security/has_privileges_test.rb +55 -0
  938. data/spec/platinum/unit/security/invalidate_token_test.rb +43 -0
  939. data/spec/platinum/unit/security/oidc_authenticate_test.rb +40 -0
  940. data/spec/platinum/unit/security/oidc_logout_test.rb +40 -0
  941. data/spec/platinum/unit/security/oidc_prepare_authentication_test.rb +40 -0
  942. data/spec/platinum/unit/security/put_privileges_test.rb +43 -0
  943. data/spec/platinum/unit/security/put_role_mapping_test.rb +43 -0
  944. data/spec/platinum/unit/security/put_role_test.rb +43 -0
  945. data/spec/platinum/unit/security/put_user_test.rb +43 -0
  946. data/spec/platinum/unit/security/update_user_profile_data_test.rb +40 -0
  947. data/spec/platinum/unit/ssl/certificates_test.rb +43 -0
  948. data/spec/platinum/unit/test_helper.rb +72 -0
  949. data/spec/platinum/unit/transform/reset_transform_spec.rb +34 -0
  950. data/spec/{elasticsearch/api/actions/remote/info_spec.rb → platinum/unit/transform/upgrade_transforms_spec.rb} +7 -8
  951. data/spec/platinum/unit/usage_test.rb +40 -0
  952. data/spec/platinum/unit/watcher/ack_watch_test.rb +55 -0
  953. data/spec/platinum/unit/watcher/activate_watch_test.rb +43 -0
  954. data/spec/platinum/unit/watcher/deactivate_watch_test.rb +43 -0
  955. data/spec/platinum/unit/watcher/delete_watch_test.rb +43 -0
  956. data/spec/platinum/unit/watcher/execute_watch_test.rb +55 -0
  957. data/spec/platinum/unit/watcher/get_watch_test.rb +43 -0
  958. data/spec/platinum/unit/watcher/put_watch_test.rb +43 -0
  959. data/spec/platinum/unit/watcher/query_watches_test.rb +52 -0
  960. data/spec/platinum/unit/watcher/start_test.rb +41 -0
  961. data/spec/platinum/unit/watcher/stats_test.rb +43 -0
  962. data/spec/platinum/unit/watcher/stop_test.rb +43 -0
  963. data/spec/rest_api/rest_api_tests_helper.rb +100 -0
  964. data/spec/rest_api/rest_api_yaml_spec.rb +82 -0
  965. data/spec/rest_api/run_rspec_matchers.rb +111 -0
  966. data/spec/rest_api/skipped_tests_free.yml +84 -0
  967. data/spec/rest_api/skipped_tests_platinum.yml +120 -0
  968. data/spec/rspec_formatter.rb +31 -0
  969. data/spec/spec_helper.rb +23 -20
  970. data/utils/Gemfile +1 -3
  971. data/utils/README.md +15 -8
  972. data/utils/thor/endpoint_spec.rb +193 -0
  973. data/utils/thor/{generator/endpoint_specifics.rb → endpoint_specifics.rb} +16 -42
  974. data/utils/thor/generate_source.rb +29 -203
  975. data/utils/thor/generator/build_hash_helper.rb +64 -0
  976. data/utils/thor/generator/docs_helper.rb +62 -0
  977. data/utils/thor/generator/files_helper.rb +32 -42
  978. data/utils/thor/templates/_body.erb +34 -0
  979. data/utils/thor/templates/_documentation_top.erb +40 -23
  980. data/utils/thor/templates/_method_setup.erb +34 -32
  981. data/utils/thor/templates/_perform_request.erb +40 -28
  982. data/utils/thor/templates/method.erb +36 -30
  983. data/utils/thor/templates/test.erb +16 -3
  984. data/utils/thor/templates/test_helper.rb +0 -4
  985. metadata +1003 -110
  986. data/lib/elasticsearch/api/actions/benchmark.rb +0 -81
  987. data/lib/elasticsearch/api/actions/cat/params_registry.rb +0 -60
  988. data/lib/elasticsearch/api/actions/cluster/params_registry.rb +0 -60
  989. data/lib/elasticsearch/api/actions/dangling_indices/params_registry.rb +0 -60
  990. data/lib/elasticsearch/api/actions/delete_by_rethrottle.rb +0 -47
  991. data/lib/elasticsearch/api/actions/features/params_registry.rb +0 -60
  992. data/lib/elasticsearch/api/actions/indices/params_registry.rb +0 -60
  993. data/lib/elasticsearch/api/actions/ingest/params_registry.rb +0 -60
  994. data/lib/elasticsearch/api/actions/nodes/params_registry.rb +0 -60
  995. data/lib/elasticsearch/api/actions/nodes/shutdown.rb +0 -56
  996. data/lib/elasticsearch/api/actions/params_registry.rb +0 -58
  997. data/lib/elasticsearch/api/actions/shutdown/params_registry.rb +0 -60
  998. data/lib/elasticsearch/api/actions/snapshot/params_registry.rb +0 -60
  999. data/lib/elasticsearch/api/actions/tasks/params_registry.rb +0 -60
  1000. data/spec/elasticsearch/api/actions/indices/exists_type_spec.rb +0 -108
  1001. data/spec/elasticsearch/api/actions/indices/flush_synced_spec.rb +0 -90
  1002. data/spec/elasticsearch/api/rest_api_yaml_spec.rb +0 -147
  1003. data/spec/rest_yaml_tests_helper.rb +0 -81
  1004. data/spec/skipped_tests.yml +0 -29
  1005. data/utils/thor/templates/_params_registry.erb +0 -12
  1006. /data/{LICENSE → LICENSE.txt} +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 2d942f82af15ad27d4ba1e43be15fa496d6136fc8c255334ef80eb5e60739f29
4
- data.tar.gz: 41dd752da3a20fd4cb9fc307bea21aa5d2c86f442151702179218b3a2a3954cd
3
+ metadata.gz: 48a1f0762bf3581cab4b030cb4e6d7542ec46428330428200cb1bd391e189ae6
4
+ data.tar.gz: b308b299290fd997c9000fce4400ac0b685efc03c9a2ae681a7b5bb5ade91398
5
5
  SHA512:
6
- metadata.gz: ecf05b89094afb7702755f6e314bbc29f0b4bb670c50d5540b46e8a0757752547e9a39b739613e6e356d7ca90295a7a0bd547251e474cb3b214308b684dae328
7
- data.tar.gz: e61fff3d3f6a5451af2f6a6ed03f5fa8d71c0240f9c629d65f1f35d453b52de8880e86e01f8a0f0fe3f5af208e36fe0fae038d34cbffa5200d066846ca960683
6
+ metadata.gz: 59292fa91b9edf4d1af23eb0a73241596be0bacde69b15e567a7b61461495cc0efc9e43b287441688eb258c0f90d0d2883bf5440d3ee91a9ec22e5d1004b4c0c
7
+ data.tar.gz: 3469c3a62f0c2199c2f2a437b91fd2d73eb4edfb533e4d5b2a3ea450376acbfa66dbde977a40285e5a021cbea5fb441891c33619f092abb268725e4cb5d38095
data/Gemfile CHANGED
@@ -21,15 +21,7 @@ source 'https://rubygems.org'
21
21
  gemspec
22
22
 
23
23
  if File.exist? File.expand_path("../../elasticsearch/elasticsearch.gemspec", __FILE__)
24
- gem 'elasticsearch', path: File.expand_path("../../elasticsearch", __FILE__), require: false
25
- end
26
-
27
- if File.exist? File.expand_path("../../elasticsearch-transport", __FILE__)
28
- gem 'elasticsearch-transport', path: File.expand_path("../../elasticsearch-transport", __FILE__), require: true
29
- end
30
-
31
- if File.exist? File.expand_path("../../elasticsearch-extensions", __FILE__)
32
- gem 'elasticsearch-extensions', path: File.expand_path("../../elasticsearch-extensions", __FILE__), require: false
24
+ gem 'elasticsearch', path: File.expand_path('../../elasticsearch', __FILE__), require: false
33
25
  end
34
26
 
35
27
  group :development do
@@ -38,6 +30,6 @@ group :development do
38
30
  if defined?(JRUBY_VERSION)
39
31
  gem 'pry-nav'
40
32
  else
41
- gem 'pry-byebug'
33
+ gem 'debug'
42
34
  end
43
35
  end
data/README.md CHANGED
@@ -1,206 +1,35 @@
1
1
  # Elasticsearch::API
2
2
 
3
- **This library is part of the [`elasticsearch-ruby`](https://github.com/elasticsearch/elasticsearch-ruby/) package;
4
- please refer to it, unless you want to use this library standalone.**
3
+ *This library is part of the [`elasticsearch-ruby`](https://github.com/elasticsearch/elasticsearch-ruby/) package; please refer to it, unless you want to use this library standalone.*
5
4
 
6
- ----
5
+ **Refer to the [official documentation on Elasticsearch API](https://www.elastic.co/guide/en/elasticsearch/client/ruby-api/current/api.html).**
7
6
 
8
- The `elasticsearch-api` library provides a Ruby implementation of
9
- the [Elasticsearch](http://elasticsearch.com) REST API.
7
+ The `elasticsearch-api` library provides a Ruby implementation of the [Elasticsearch](http://elasticsearch.com) REST API. It does not provide an Elasticsearch client; see the [`elastic-transport`](https://github.com/elastic/elastic-transport-ruby/) library.
10
8
 
11
- It does not provide an Elasticsearch client; see the
12
- [`elasticsearch-transport`](https://github.com/elasticsearch/elasticsearch-ruby/tree/master/elasticsearch-transport) library.
9
+ We follow Ruby’s own maintenance policy and officially support all currently maintained versions per [Ruby Maintenance Branches](https://www.ruby-lang.org/en/downloads/branches/).
13
10
 
14
- The library is compatible with Ruby 1.9 and higher.
11
+ Language clients are forward compatible; meaning that clients support communicating with greater minor versions of Elasticsearch. Elastic language clients are also backwards compatible with lesser supported minor Elasticsearch versions.
15
12
 
16
- It is compatible with Elasticsearch's API versions from 0.90 till current, just use a release matching major version of Elasticsearch.
17
13
 
18
- | Ruby | | Elasticsearch |
19
- |:-------------:|:-:| :-----------: |
20
- | 0.90 | → | 0.90 |
21
- | 1.x | → | 1.x |
22
- | 2.x | → | 2.x |
23
- | 5.x | → | 5.x |
24
- | 6.x | → | 6.x |
25
- | 7.x | → | 7.x |
26
- | master | → | master |
27
-
28
- ## Installation
29
-
30
- Install the package from [Rubygems](https://rubygems.org):
31
-
32
- gem install elasticsearch-api
33
-
34
- To use an unreleased version, either add it to your `Gemfile` for [Bundler](http://gembundler.com):
35
-
36
- gem 'elasticsearch-api', git: 'git://github.com/elasticsearch/elasticsearch-ruby.git'
37
-
38
- or install it from a source code checkout:
39
-
40
- git clone https://github.com/elasticsearch/elasticsearch-ruby.git
41
- cd elasticsearch-ruby/elasticsearch-api
42
- bundle install
43
- rake install
44
-
45
- ## Usage
46
-
47
- The library is designed as a group of standalone Ruby modules, which can be mixed into a class
48
- providing connection to Elasticsearch -- an Elasticsearch client.
49
-
50
- ### Usage with the `elasticsearch` gem
51
-
52
- **When you use the client from the [`elasticsearch-ruby`](https://github.com/elasticsearch/elasticsearch-ruby/) package,
53
- the library modules have been already included**, so you just call the API methods:
54
-
55
- ```ruby
56
- require 'elasticsearch'
57
-
58
- client = Elasticsearch::Client.new log: true
59
-
60
- client.index index: 'myindex', type: 'mytype', id: 1, body: { title: 'Test' }
61
- # => {"_index"=>"myindex", ... "created"=>true}
62
-
63
- client.search index: 'myindex', body: { query: { match: { title: 'test' } } }
64
- # => {"took"=>2, ..., "hits"=>{"total":5, ...}}
65
- ```
66
-
67
- Full documentation and examples are included as RDoc annotations in the source code
68
- and available online at <http://rubydoc.info/gems/elasticsearch-api>.
69
-
70
- ### Usage with a custom client
71
-
72
- When you want to mix the library into your own client, it must conform to a following _contract_:
73
-
74
- * It responds to a `perform_request(method, path, params, body, headers)` method,
75
- * the method returns an object with `status`, `body` and `headers` methods.
76
-
77
- A simple client could look like this (_with a dependency on `active_support` to parse the query params_):
78
-
79
- ```ruby
80
- require 'multi_json'
81
- require 'faraday'
82
- require 'elasticsearch/api'
83
- require 'active_support'
84
-
85
- class MySimpleClient
86
- include Elasticsearch::API
87
-
88
- CONNECTION = ::Faraday::Connection.new url: 'http://localhost:9200'
89
-
90
- def perform_request(method, path, params, body, headers = nil)
91
- puts "--> #{method.upcase} #{path} #{params} #{body} #{headers}"
92
-
93
- CONNECTION.run_request \
94
- method.downcase.to_sym,
95
- path_with_params(path, params),
96
- ( body ? MultiJson.dump(body): nil ),
97
- {'Content-Type' => 'application/json'}
98
- end
99
-
100
- private
101
-
102
- def path_with_params(path, params)
103
- return path if params.blank?
104
-
105
- case params
106
- when String
107
- "#{path}?#{params}"
108
- when Hash
109
- "#{path}?#{params.to_query}"
110
- else
111
- raise ArgumentError, "Cannot parse params: '#{params}'"
112
- end
113
- end
114
- end
115
-
116
- client = MySimpleClient.new
117
-
118
- p client.cluster.health
119
- # --> GET _cluster/health {}
120
- # => "{"cluster_name":"elasticsearch" ... }"
121
-
122
- p client.index index: 'myindex', type: 'mytype', id: 'custom', body: { title: "Indexing from my client" }
123
- # --> PUT myindex/mytype/custom {} {:title=>"Indexing from my client"}
124
- # => "{"ok":true, ... }"
125
- ```
126
-
127
- ### Using JSON Builders
128
-
129
- Instead of passing the `:body` argument as a Ruby _Hash_, you can pass it as a _String_, potentially
130
- taking advantage of JSON builders such as [JBuilder](https://github.com/rails/jbuilder) or
131
- [Jsonify](https://github.com/bsiggelkow/jsonify):
132
-
133
- ```ruby
134
- require 'jbuilder'
135
-
136
- query = Jbuilder.encode do |json|
137
- json.query do
138
- json.match do
139
- json.title do
140
- json.query 'test 1'
141
- json.operator 'and'
142
- end
143
- end
144
- end
145
- end
146
-
147
- client.search index: 'myindex', body: query
148
-
149
- # 2013-06-25 09:56:05 +0200: GET http://localhost:9200/myindex/_search [status:200, request:0.015s, query:0.011s]
150
- # 2013-06-25 09:56:05 +0200: > {"query":{"match":{"title":{"query":"test 1","operator":"and"}}}}
151
- # ...
152
- # => {"took"=>21, ..., "hits"=>{"total"=>1, "hits"=>[{ "_source"=>{"title"=>"Test 1", ...}}]}}
153
- ```
14
+ ## Development
154
15
 
155
- ### Using Hash Wrappers
16
+ Refer to [CONTRIBUTING](https://github.com/elastic/elasticsearch-ruby/blob/main/CONTRIBUTING.md).
156
17
 
157
- For a more comfortable access to response properties, you may wrap it in one of the _Hash_ "object access"
158
- wrappers, such as [`Hashie::Mash`](https://github.com/intridea/hashie):
18
+ We run the test suite for Elasticsearch's Rest API tests. You can read more about this in [the test runner README](https://github.com/elastic/elasticsearch-ruby/tree/main/api-spec-testing#rest-api-yaml-test-runner).
159
19
 
160
- ```ruby
161
- require 'hashie'
162
-
163
- response = client.search index: 'myindex',
164
- body: {
165
- query: { match: { title: 'test' } },
166
- aggregations: { tags: { terms: { field: 'tags' } } }
167
- }
168
-
169
- mash = Hashie::Mash.new response
170
-
171
- mash.hits.hits.first._source.title
172
- # => 'Test'
173
-
174
- mash.aggregations.tags.terms.first
175
- # => #<Hashie::Mash count=3 term="z">
176
- ```
177
-
178
- ### Using a Custom JSON Serializer
179
-
180
- The library uses the [MultiJson](https://rubygems.org/gems/multi_json/) gem by default,
181
- but allows you to set a custom JSON library, provided it uses the standard `load/dump`
182
- interface:
183
-
184
- ```ruby
185
- Elasticsearch::API.settings[:serializer] = JrJackson::Json
186
- Elasticsearch::API.serializer.dump({foo: 'bar'})
187
- # => {"foo":"bar"}
188
- ```
20
+ The `rest_api` task needs the test files from Elasticsearch. You can run the rake task to download the test artifacts in the root folder of the project. You can pass in a version to the task as a parameter:
189
21
 
190
- ## Development
22
+ `rake download_artifacts[8.5.0-SNAPSHOT]`
191
23
 
192
- To work on the code, clone and bootstrap the main repository first -- please see instructions in the main [README](../README.md#development).
24
+ Or it can get the version from a running cluster to determine which version and build hash of Elasticsearch to use and test against:
193
25
 
194
- To run tests, launch a testing cluster -- again, see instructions in the main [README](../README.md#development) -- and use the Rake tasks:
26
+ `TEST_ES_SERVER=http://localhost:9200 rake elasticsearch:download_artifacts`
195
27
 
196
- ```
197
- time rake test:unit
198
- time rake test:integration
199
- ```
28
+ This will download the necessary files used for the integration tests to `./tmp`.
200
29
 
201
- We run the test suite for Elasticsearch's Rest API tests. You can read more about this in [the test runner README](https://github.com/elastic/elasticsearch-ruby/tree/master/api-spec-testing#rest-api-yaml-test-runner).
30
+ ### Code generation
202
31
 
203
- The `rest_api` needs the test files from Elasticsearch. You can run the rake task to download the test artifacts in the root folder of the project. This task needs a running cluster to determine which version and build hash of Elasticsearch to use and test against. `TEST_ES_SERVER=http://localhost:9200 rake test:download_artifacts`. This will download the necessary files used for the integration tests to `./tmp`.
32
+ The code for most of this library is automatically generated. See [./utils/README.md](utils/README.md) for more information.
204
33
 
205
34
  ## License
206
35
 
data/Rakefile CHANGED
@@ -20,47 +20,28 @@ require 'json'
20
20
 
21
21
  task(:default) { system 'rake --tasks' }
22
22
  task test: 'test:unit'
23
-
24
- # ----- Test tasks ------------------------------------------------------------
25
-
26
23
  require 'rake/testtask'
27
24
  require 'rspec/core/rake_task'
28
25
 
26
+ # Test Tasks
27
+
29
28
  namespace :test do
30
29
  desc 'Wait for Elasticsearch to be in a green state'
31
30
  task :wait_for_green do
32
31
  sh '../scripts/wait-cluster.sh'
33
32
  end
34
33
 
35
- # Unit tests - rake test:unit
36
- #
34
+ desc 'Run unit tests'
37
35
  task unit: :spec
38
36
  RSpec::Core::RakeTask.new(:spec) do |t|
39
- t.exclude_pattern = 'spec/**{,/*/**}/rest_api_yaml_spec.rb'
37
+ t.pattern = 'spec/elasticsearch/api/**/*_spec.rb'
38
+ t.exclude_pattern = 'spec/platinum/**/*_spec.rb'
40
39
  end
41
40
 
42
- desc "Run Rest API Spec tests"
41
+ desc 'Run Rest API Spec tests'
43
42
  RSpec::Core::RakeTask.new(:rest_api) do |t|
44
- require 'elasticsearch'
45
- # Check if a test cluster is running
46
- begin
47
- url = ENV['TEST_CLUSTER_URL'] || ENV['TEST_ES_SERVER']
48
- url = "http://localhost:#{ENV['TEST_CLUSTER_PORT'] || 9200}" unless url
49
- client = Elasticsearch::Client.new :url => url
50
- es_version_info = client.info['version']
51
- version_number = es_version_info['number']
52
- build_hash = es_version_info['build_hash']
53
- rescue Faraday::ConnectionFailed
54
- STDERR.puts "[!] Test cluster not running?"
55
- exit 1
56
- end
57
-
58
- t.pattern = 'spec/**{,/*/**}/rest_api_yaml_spec.rb'
59
- end
60
-
61
- desc "Run integration tests"
62
- task :integration do
63
- Rake::Task['test:rest_api'].invoke
43
+ test_dir = Rake.application.original_dir
44
+ t.pattern = "#{test_dir}/spec/rest_api/rest_api_yaml_spec.rb"
64
45
  end
65
46
 
66
47
  desc 'Run unit and integration tests'
@@ -69,67 +50,41 @@ namespace :test do
69
50
  Rake::Task['test:integration'].invoke
70
51
  end
71
52
 
72
- def refresh_artifacts(build_hash, version_number)
73
- unless build_hash
74
- STDERR.puts "[!] Cannot determine checkout build hash -- server not running"
75
- exit(1)
53
+ namespace :platinum do
54
+ desc 'Run Platinum Rest API Spec tests'
55
+ RSpec::Core::RakeTask.new(:api) do
56
+ ENV['TEST_SUITE'] = 'platinum'
57
+ Rake::Task['test:rest_api'].invoke
76
58
  end
77
59
 
78
- puts 'Downloading artifacts file...'
79
- filename = 'tmp/artifacts.json'
80
- `curl -s https://artifacts-api.elastic.co/v1/versions/#{version_number} -o #{filename}`
81
-
82
- unless File.exists?("./#{filename}")
83
- STDERR.puts '[!] Couldn\'t download artifacts file'
84
- exit 1
85
- end
86
-
87
- artifacts = JSON.parse(File.read('./tmp/artifacts.json'))
88
-
89
- build_hash_artifact = artifacts['version']['builds'].select do |a|
90
- a.dig('projects', 'elasticsearch', 'commit_hash') == build_hash
91
- end.first
92
- # Dig into the elasticsearch packages, search for the rest-resources-zip package and catch the URL:
93
- zip_url = build_hash_artifact.dig('projects', 'elasticsearch', 'packages').select { |k,v| k =~ /rest-resources-zip/ }.map { | _, v| v['url'] }.first
94
-
95
- filename = zip_url.split('/').last
96
- puts 'Downloading zip file:'
97
- `curl -s #{zip_url} -o tmp/#{filename}`
98
-
99
- unless File.exists?("./tmp/#{filename}")
100
- STDERR.puts '[!] Couldn\'t download artifact'
101
- exit 1
102
- end
103
-
104
- puts "Unzipping file #{filename}"
105
- `unzip -o tmp/#{filename} -d tmp/`
106
- end
107
-
108
- namespace :cluster do
109
- desc "Start Elasticsearch nodes for tests"
110
- task :start do
111
- $LOAD_PATH << File.expand_path('../../elasticsearch-transport/lib', __FILE__) << File.expand_path('../test', __FILE__)
112
- require 'elasticsearch/extensions/test/cluster'
113
- Elasticsearch::Extensions::Test::Cluster.start
60
+ desc 'Run Platinum Unit tests - DEPRECATED: Will be migrated to RSpec'
61
+ Rake::TestTask.new(:unit) do |test|
62
+ test.libs << 'spec/platinum/unit'
63
+ test.test_files = FileList['spec/platinum/unit/**/*_test.rb']
64
+ test.verbose = false
65
+ test.warning = false
114
66
  end
115
67
 
116
- desc "Stop Elasticsearch nodes for tests"
117
- task :stop do
118
- $LOAD_PATH << File.expand_path('../../elasticsearch-transport/lib', __FILE__) << File.expand_path('../test', __FILE__)
119
- require 'elasticsearch/extensions/test/cluster'
120
- Elasticsearch::Extensions::Test::Cluster.stop
68
+ desc 'Run Platinum Integration Specs'
69
+ RSpec::Core::RakeTask.new(:integration) do |t|
70
+ t.pattern = if ENV['TEST_SUITE'] == 'platinum'
71
+ 'spec/platinum/integration/**/*_spec.rb'
72
+ else
73
+ 'spec/free/integration/**/*_spec.rb'
74
+ end
75
+ t.ruby_opts = '-W0'
121
76
  end
122
77
  end
123
78
  end
124
79
 
125
- # ----- Documentation tasks ---------------------------------------------------
80
+ # Documentation tasks
126
81
 
127
82
  require 'yard'
128
83
  YARD::Rake::YardocTask.new(:doc) do |t|
129
84
  t.options = %w| --embed-mixins --markup=markdown |
130
85
  end
131
86
 
132
- # ----- Code analysis tasks ---------------------------------------------------
87
+ # Code analysis tasks
133
88
 
134
89
  require 'cane/rake_task'
135
90
  Cane::RakeTask.new(:quality) do |cane|
@@ -0,0 +1,118 @@
1
+ # Rest API YAML Test Runner
2
+
3
+ The specs in `elasticsearch-api` automatically run the tests from [Elasticsearch's REST API Spec tests](https://github.com/elastic/elasticsearch/tree/main/rest-api-spec/src/main/resources/rest-api-spec/test#test-suite). The test runner is defined in the `spec` folder, starting with the `rest_api_yaml_spec.rb` file.
4
+
5
+ You can run the tests with Rake. The main task is `rake test:rest_api`. This task will evaluate the `TEST_SUITE` environment variable. It will run either the `free` or `platinum` tests suites depending on the value of `TEST_SUITE`. If you don't set this value, the task will run the `free` test suite by default. To run the `platinum` test suite use:
6
+ ```
7
+ TEST_SUITE=platinum rake test:rest_api
8
+ ```
9
+
10
+ Or the shortcut:
11
+ ```
12
+ rake test:platinum:api
13
+ ```
14
+
15
+ ## REST API YAML Spec
16
+
17
+ The file that traverses the yaml files and loads a **TestFile** object per each of them:
18
+ `elasticsearch-api/spec/elasticsearch/api/rest_api_yaml_spec.rb`
19
+
20
+ You can use the SINGLE_TEST env variable to run just one test or one test directory. E.g.:
21
+ ```
22
+ $ cd elasticsearch-api && SINGLE_TEST=indices.resolve_index/10_basic_resolve_index.yml TEST_ES_SERVER='http://localhost:9200' be rake test:rest_api
23
+ ```
24
+ And:
25
+ ```
26
+ $ cd elasticsearch-api && SINGLE_TEST=indices.resolve_index TEST_ES_SERVER='http://localhost:9200' be rake test:rest_api
27
+ ```
28
+
29
+ ## Skipped tests
30
+
31
+ We sometimes skip tests, generally due to limitations on how we run the CI server or for stuff that hasn't been completely implemented on the client yet. Skipped tests are located in `elasticsearch-api/spec/skipped_tests.yml`. You can run just the tests which are currently being skipped by running:
32
+ ```
33
+ $ cd elasticsearch-api && TEST_SUITE=(free|platinum) RUN_SKIPPED_TESTS=true TEST_ES_SERVER='http://localhost:9200' be rake test:rest_api
34
+ ```
35
+
36
+ ## TestFile
37
+ Class representing a single test file. Contains setup, teardown and tests.
38
+ `../api-spec-testing/test_file.rb`
39
+
40
+ ## Test
41
+ Every single test in the test file is represented in the Test object.
42
+ `../api-spec-testing/test_file/test.rb`
43
+
44
+ ## TaskGroup
45
+
46
+ Tests are ordered in task groups, an array of TaskGroup objects.
47
+ `../api-spec-testing/test_file/task_group.rb`
48
+
49
+ Task Groups are a representation of a block of actions consisting of 'do' actions and their verifications. e.g.:
50
+ ```yaml
51
+ - do:
52
+ index:
53
+ index: test-index
54
+ id: 1
55
+ body: { foo: bar }
56
+
57
+ - match: { _index: test-index }
58
+ - match: { _id: "1"}
59
+ - match: { _version: 1}
60
+ ```
61
+
62
+ **Before** each test, the spec runner runs `clear_data` on the test_file. This clears indices, index templates, snapshots and repositories. For platinum it also clears roles, users, privileges, datafeeds, ml_jobs and more.
63
+
64
+ **After** each test, it runs the test file teardown and `clear_data` again.
65
+
66
+ For each TaskGroup, it sees what's in the task group definition and runs an expectation test.
67
+
68
+ ## Action
69
+
70
+ This file is where the action is executed, where we call the client with the method from the test and save the response which is then used in the task group.
71
+
72
+ ## Rest YAML tests Helper
73
+
74
+ `elasticsearch-api/spec/rest_yaml_tests_helper.rb`
75
+
76
+ - `ADMIN_CLIENT` is defined here.
77
+ - `SINGLE_TEST` is defined here.
78
+ - Skipped tests are listed here
79
+
80
+ ## Spec Helper
81
+
82
+ - `DEFAULT_CLIENT` is defined here
83
+
84
+ ## Enable Logging
85
+
86
+ To enable logging, set the environment `QUIET` to false before running the tests. In CI, this is located in the [Dockerfile](https://github.com/elastic/elasticsearch-ruby/blob/main/.ci/Dockerfile). The environment variable is evaluated in the Rest YAML tests Helper file.
87
+
88
+ # Features
89
+
90
+ ## RSpec Matchers
91
+
92
+ The tests use custom [RSpec Matchers](https://www.rubydoc.info/gems/rspec-expectations/RSpec/Matchers) defined in `api-spec-testing/rspec_matchers.rb`.
93
+
94
+ From the [Rest API test docs](https://github.com/elastic/elasticsearch/tree/main/rest-api-spec/src/main/resources/rest-api-spec/test#do):
95
+
96
+ ## `catch`
97
+
98
+ > If the arguments to `do` include `catch`, then we are expecting an error, which should be caught and tested.
99
+
100
+ In `rest_api_yaml_spec`, there's a check for `catch_exception?` per task_group. This checks if the `do` definitions have any `catch` definitions. If there is a `catch`, it'll send the request and use the `match_error` RSpec custom matcher to validate the expected error.
101
+
102
+ ## `warnings`
103
+
104
+ >If the arguments to `do` include `warnings` then we are expecting a Warning header to come back from the request. If the arguments don’t include a warnings argument then we don’t expect the response to include a Warning header. The warnings must match exactly. Using it looks like this:
105
+
106
+ ```
107
+ - do:
108
+ warnings:
109
+ - '[index] is deprecated'
110
+ - quotes are not required because yaml
111
+ - but this argument is always a list, never a single string
112
+ - no matter how many warnings you expect
113
+ get:
114
+ index: test
115
+ type: test
116
+ id: 1
117
+ ```
118
+
@@ -0,0 +1,32 @@
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 RestAPIYAMLTests
20
+ # Custom functions for wipe cluster
21
+ module CustomCleanup
22
+ class << self
23
+ def wipe_calendars(client)
24
+ calendars = client.ml.get_calendars(calendar_id: '_all').body['calendars']
25
+ calendars.each do |calendar|
26
+ client.ml.delete_calendar(calendar_id: calendar['calendar_id'])
27
+ end
28
+ end
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,28 @@
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 'logger'
19
+
20
+ module Elasticsearch
21
+ module RestAPIYAMLTests
22
+ module Logging
23
+ def logger
24
+ @logger ||= Logger.new($stdout)
25
+ end
26
+ end
27
+ end
28
+ end