elasticsearch-api 8.4.0 → 8.5.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 (426) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +13 -174
  3. data/Rakefile +1 -1
  4. data/api-spec-testing/test_file/action.rb +1 -5
  5. data/api-spec-testing/test_file/test.rb +3 -2
  6. data/api-spec-testing/wipe_cluster.rb +7 -7
  7. data/lib/elasticsearch/api/actions/async_search/delete.rb +2 -2
  8. data/lib/elasticsearch/api/actions/async_search/get.rb +2 -2
  9. data/lib/elasticsearch/api/actions/async_search/status.rb +2 -2
  10. data/lib/elasticsearch/api/actions/async_search/submit.rb +2 -2
  11. data/lib/elasticsearch/api/actions/autoscaling/delete_autoscaling_policy.rb +2 -2
  12. data/lib/elasticsearch/api/actions/autoscaling/get_autoscaling_capacity.rb +2 -2
  13. data/lib/elasticsearch/api/actions/autoscaling/get_autoscaling_policy.rb +2 -2
  14. data/lib/elasticsearch/api/actions/autoscaling/put_autoscaling_policy.rb +2 -2
  15. data/lib/elasticsearch/api/actions/bulk.rb +2 -2
  16. data/lib/elasticsearch/api/actions/cat/aliases.rb +2 -2
  17. data/lib/elasticsearch/api/actions/cat/allocation.rb +2 -2
  18. data/lib/elasticsearch/api/actions/cat/component_templates.rb +2 -2
  19. data/lib/elasticsearch/api/actions/cat/count.rb +2 -2
  20. data/lib/elasticsearch/api/actions/cat/fielddata.rb +2 -2
  21. data/lib/elasticsearch/api/actions/cat/health.rb +2 -2
  22. data/lib/elasticsearch/api/actions/cat/help.rb +2 -2
  23. data/lib/elasticsearch/api/actions/cat/indices.rb +2 -2
  24. data/lib/elasticsearch/api/actions/cat/master.rb +2 -2
  25. data/lib/elasticsearch/api/actions/cat/ml_data_frame_analytics.rb +2 -2
  26. data/lib/elasticsearch/api/actions/cat/ml_datafeeds.rb +2 -2
  27. data/lib/elasticsearch/api/actions/cat/ml_jobs.rb +2 -2
  28. data/lib/elasticsearch/api/actions/cat/ml_trained_models.rb +2 -2
  29. data/lib/elasticsearch/api/actions/cat/nodeattrs.rb +2 -2
  30. data/lib/elasticsearch/api/actions/cat/nodes.rb +2 -2
  31. data/lib/elasticsearch/api/actions/cat/pending_tasks.rb +2 -2
  32. data/lib/elasticsearch/api/actions/cat/plugins.rb +2 -2
  33. data/lib/elasticsearch/api/actions/cat/recovery.rb +2 -2
  34. data/lib/elasticsearch/api/actions/cat/repositories.rb +2 -2
  35. data/lib/elasticsearch/api/actions/cat/segments.rb +2 -2
  36. data/lib/elasticsearch/api/actions/cat/shards.rb +2 -2
  37. data/lib/elasticsearch/api/actions/cat/snapshots.rb +2 -2
  38. data/lib/elasticsearch/api/actions/cat/tasks.rb +2 -2
  39. data/lib/elasticsearch/api/actions/cat/templates.rb +2 -2
  40. data/lib/elasticsearch/api/actions/cat/thread_pool.rb +2 -2
  41. data/lib/elasticsearch/api/actions/cat/transforms.rb +2 -2
  42. data/lib/elasticsearch/api/actions/clear_scroll.rb +2 -2
  43. data/lib/elasticsearch/api/actions/close_point_in_time.rb +2 -2
  44. data/lib/elasticsearch/api/actions/cluster/allocation_explain.rb +2 -2
  45. data/lib/elasticsearch/api/actions/cluster/delete_component_template.rb +2 -2
  46. data/lib/elasticsearch/api/actions/cluster/delete_voting_config_exclusions.rb +2 -2
  47. data/lib/elasticsearch/api/actions/cluster/exists_component_template.rb +2 -2
  48. data/lib/elasticsearch/api/actions/cluster/get_component_template.rb +2 -2
  49. data/lib/elasticsearch/api/actions/cluster/get_settings.rb +2 -2
  50. data/lib/elasticsearch/api/actions/cluster/health.rb +2 -2
  51. data/lib/elasticsearch/api/actions/cluster/pending_tasks.rb +2 -2
  52. data/lib/elasticsearch/api/actions/cluster/post_voting_config_exclusions.rb +2 -2
  53. data/lib/elasticsearch/api/actions/cluster/put_component_template.rb +2 -2
  54. data/lib/elasticsearch/api/actions/cluster/put_settings.rb +2 -2
  55. data/lib/elasticsearch/api/actions/cluster/remote_info.rb +2 -2
  56. data/lib/elasticsearch/api/actions/cluster/reroute.rb +2 -2
  57. data/lib/elasticsearch/api/actions/cluster/state.rb +2 -2
  58. data/lib/elasticsearch/api/actions/cluster/stats.rb +2 -2
  59. data/lib/elasticsearch/api/actions/count.rb +2 -2
  60. data/lib/elasticsearch/api/actions/create.rb +2 -2
  61. data/lib/elasticsearch/api/actions/cross_cluster_replication/delete_auto_follow_pattern.rb +2 -2
  62. data/lib/elasticsearch/api/actions/cross_cluster_replication/follow.rb +2 -2
  63. data/lib/elasticsearch/api/actions/cross_cluster_replication/follow_info.rb +2 -2
  64. data/lib/elasticsearch/api/actions/cross_cluster_replication/follow_stats.rb +2 -2
  65. data/lib/elasticsearch/api/actions/cross_cluster_replication/forget_follower.rb +2 -2
  66. data/lib/elasticsearch/api/actions/cross_cluster_replication/get_auto_follow_pattern.rb +2 -2
  67. data/lib/elasticsearch/api/actions/cross_cluster_replication/pause_auto_follow_pattern.rb +2 -2
  68. data/lib/elasticsearch/api/actions/cross_cluster_replication/pause_follow.rb +2 -2
  69. data/lib/elasticsearch/api/actions/cross_cluster_replication/put_auto_follow_pattern.rb +2 -2
  70. data/lib/elasticsearch/api/actions/cross_cluster_replication/resume_auto_follow_pattern.rb +2 -2
  71. data/lib/elasticsearch/api/actions/cross_cluster_replication/resume_follow.rb +2 -2
  72. data/lib/elasticsearch/api/actions/cross_cluster_replication/stats.rb +2 -2
  73. data/lib/elasticsearch/api/actions/cross_cluster_replication/unfollow.rb +2 -2
  74. data/lib/elasticsearch/api/actions/dangling_indices/delete_dangling_index.rb +2 -2
  75. data/lib/elasticsearch/api/actions/dangling_indices/import_dangling_index.rb +2 -2
  76. data/lib/elasticsearch/api/actions/dangling_indices/list_dangling_indices.rb +2 -2
  77. data/lib/elasticsearch/api/actions/delete.rb +2 -2
  78. data/lib/elasticsearch/api/actions/delete_by_query.rb +2 -2
  79. data/lib/elasticsearch/api/actions/delete_by_query_rethrottle.rb +2 -2
  80. data/lib/elasticsearch/api/actions/delete_script.rb +2 -2
  81. data/lib/elasticsearch/api/actions/enrich/delete_policy.rb +2 -2
  82. data/lib/elasticsearch/api/actions/enrich/execute_policy.rb +2 -2
  83. data/lib/elasticsearch/api/actions/enrich/get_policy.rb +2 -2
  84. data/lib/elasticsearch/api/actions/enrich/put_policy.rb +2 -2
  85. data/lib/elasticsearch/api/actions/enrich/stats.rb +2 -2
  86. data/lib/elasticsearch/api/actions/eql/delete.rb +2 -2
  87. data/lib/elasticsearch/api/actions/eql/get.rb +2 -2
  88. data/lib/elasticsearch/api/actions/eql/get_status.rb +2 -2
  89. data/lib/elasticsearch/api/actions/eql/search.rb +2 -2
  90. data/lib/elasticsearch/api/actions/exists.rb +2 -2
  91. data/lib/elasticsearch/api/actions/exists_source.rb +2 -2
  92. data/lib/elasticsearch/api/actions/explain.rb +2 -2
  93. data/lib/elasticsearch/api/actions/features/get_features.rb +2 -2
  94. data/lib/elasticsearch/api/actions/features/reset_features.rb +2 -2
  95. data/lib/elasticsearch/api/actions/field_caps.rb +2 -2
  96. data/lib/elasticsearch/api/actions/fleet/global_checkpoints.rb +2 -2
  97. data/lib/elasticsearch/api/actions/fleet/msearch.rb +1 -1
  98. data/lib/elasticsearch/api/actions/fleet/search.rb +1 -1
  99. data/lib/elasticsearch/api/actions/get.rb +2 -2
  100. data/lib/elasticsearch/api/actions/get_script.rb +2 -2
  101. data/lib/elasticsearch/api/actions/get_script_context.rb +2 -2
  102. data/lib/elasticsearch/api/actions/get_script_languages.rb +2 -2
  103. data/lib/elasticsearch/api/actions/get_source.rb +2 -2
  104. data/lib/elasticsearch/api/actions/graph/explore.rb +2 -2
  105. data/lib/elasticsearch/api/actions/index.rb +2 -2
  106. data/lib/elasticsearch/api/actions/index_lifecycle_management/delete_lifecycle.rb +2 -2
  107. data/lib/elasticsearch/api/actions/index_lifecycle_management/explain_lifecycle.rb +2 -2
  108. data/lib/elasticsearch/api/actions/index_lifecycle_management/get_lifecycle.rb +2 -2
  109. data/lib/elasticsearch/api/actions/index_lifecycle_management/get_status.rb +2 -2
  110. data/lib/elasticsearch/api/actions/index_lifecycle_management/migrate_to_data_tiers.rb +2 -2
  111. data/lib/elasticsearch/api/actions/index_lifecycle_management/move_to_step.rb +2 -2
  112. data/lib/elasticsearch/api/actions/index_lifecycle_management/put_lifecycle.rb +2 -2
  113. data/lib/elasticsearch/api/actions/index_lifecycle_management/remove_policy.rb +2 -2
  114. data/lib/elasticsearch/api/actions/index_lifecycle_management/retry.rb +2 -2
  115. data/lib/elasticsearch/api/actions/index_lifecycle_management/start.rb +2 -2
  116. data/lib/elasticsearch/api/actions/index_lifecycle_management/stop.rb +2 -2
  117. data/lib/elasticsearch/api/actions/indices/add_block.rb +2 -2
  118. data/lib/elasticsearch/api/actions/indices/analyze.rb +2 -2
  119. data/lib/elasticsearch/api/actions/indices/clear_cache.rb +2 -2
  120. data/lib/elasticsearch/api/actions/indices/clone.rb +2 -2
  121. data/lib/elasticsearch/api/actions/indices/close.rb +2 -2
  122. data/lib/elasticsearch/api/actions/indices/create.rb +2 -2
  123. data/lib/elasticsearch/api/actions/indices/create_data_stream.rb +2 -2
  124. data/lib/elasticsearch/api/actions/indices/data_streams_stats.rb +2 -2
  125. data/lib/elasticsearch/api/actions/indices/delete.rb +2 -2
  126. data/lib/elasticsearch/api/actions/indices/delete_alias.rb +2 -2
  127. data/lib/elasticsearch/api/actions/indices/delete_data_stream.rb +2 -2
  128. data/lib/elasticsearch/api/actions/indices/delete_index_template.rb +2 -2
  129. data/lib/elasticsearch/api/actions/indices/delete_template.rb +2 -2
  130. data/lib/elasticsearch/api/actions/indices/disk_usage.rb +2 -2
  131. data/lib/elasticsearch/api/actions/{rollup/rollup.rb → indices/downsample.rb} +11 -11
  132. data/lib/elasticsearch/api/actions/indices/exists.rb +2 -2
  133. data/lib/elasticsearch/api/actions/indices/exists_alias.rb +2 -2
  134. data/lib/elasticsearch/api/actions/indices/exists_index_template.rb +2 -2
  135. data/lib/elasticsearch/api/actions/indices/exists_template.rb +2 -2
  136. data/lib/elasticsearch/api/actions/indices/field_usage_stats.rb +2 -2
  137. data/lib/elasticsearch/api/actions/indices/flush.rb +2 -2
  138. data/lib/elasticsearch/api/actions/indices/forcemerge.rb +2 -2
  139. data/lib/elasticsearch/api/actions/indices/get.rb +2 -2
  140. data/lib/elasticsearch/api/actions/indices/get_alias.rb +2 -2
  141. data/lib/elasticsearch/api/actions/indices/get_data_stream.rb +2 -2
  142. data/lib/elasticsearch/api/actions/indices/get_field_mapping.rb +2 -2
  143. data/lib/elasticsearch/api/actions/indices/get_index_template.rb +2 -2
  144. data/lib/elasticsearch/api/actions/indices/get_mapping.rb +2 -2
  145. data/lib/elasticsearch/api/actions/indices/get_settings.rb +2 -2
  146. data/lib/elasticsearch/api/actions/indices/get_template.rb +2 -2
  147. data/lib/elasticsearch/api/actions/indices/migrate_to_data_stream.rb +2 -2
  148. data/lib/elasticsearch/api/actions/indices/modify_data_stream.rb +2 -2
  149. data/lib/elasticsearch/api/actions/indices/open.rb +2 -2
  150. data/lib/elasticsearch/api/actions/indices/promote_data_stream.rb +2 -2
  151. data/lib/elasticsearch/api/actions/indices/put_alias.rb +2 -2
  152. data/lib/elasticsearch/api/actions/indices/put_index_template.rb +2 -2
  153. data/lib/elasticsearch/api/actions/indices/put_mapping.rb +2 -2
  154. data/lib/elasticsearch/api/actions/indices/put_settings.rb +2 -2
  155. data/lib/elasticsearch/api/actions/indices/put_template.rb +2 -2
  156. data/lib/elasticsearch/api/actions/indices/recovery.rb +2 -2
  157. data/lib/elasticsearch/api/actions/indices/refresh.rb +2 -2
  158. data/lib/elasticsearch/api/actions/indices/reload_search_analyzers.rb +2 -2
  159. data/lib/elasticsearch/api/actions/indices/resolve_index.rb +2 -2
  160. data/lib/elasticsearch/api/actions/indices/rollover.rb +2 -2
  161. data/lib/elasticsearch/api/actions/indices/segments.rb +2 -2
  162. data/lib/elasticsearch/api/actions/indices/shard_stores.rb +2 -2
  163. data/lib/elasticsearch/api/actions/indices/shrink.rb +2 -2
  164. data/lib/elasticsearch/api/actions/indices/simulate_index_template.rb +2 -2
  165. data/lib/elasticsearch/api/actions/indices/simulate_template.rb +2 -2
  166. data/lib/elasticsearch/api/actions/indices/split.rb +2 -2
  167. data/lib/elasticsearch/api/actions/indices/stats.rb +2 -2
  168. data/lib/elasticsearch/api/actions/indices/unfreeze.rb +2 -2
  169. data/lib/elasticsearch/api/actions/indices/update_aliases.rb +2 -2
  170. data/lib/elasticsearch/api/actions/indices/validate_query.rb +2 -2
  171. data/lib/elasticsearch/api/actions/info.rb +2 -2
  172. data/lib/elasticsearch/api/actions/ingest/delete_pipeline.rb +2 -2
  173. data/lib/elasticsearch/api/actions/ingest/geo_ip_stats.rb +2 -2
  174. data/lib/elasticsearch/api/actions/ingest/get_pipeline.rb +2 -2
  175. data/lib/elasticsearch/api/actions/ingest/processor_grok.rb +2 -2
  176. data/lib/elasticsearch/api/actions/ingest/put_pipeline.rb +2 -2
  177. data/lib/elasticsearch/api/actions/ingest/simulate.rb +2 -2
  178. data/lib/elasticsearch/api/actions/knn_search.rb +2 -2
  179. data/lib/elasticsearch/api/actions/license/delete.rb +2 -2
  180. data/lib/elasticsearch/api/actions/license/get.rb +2 -2
  181. data/lib/elasticsearch/api/actions/license/get_basic_status.rb +2 -2
  182. data/lib/elasticsearch/api/actions/license/get_trial_status.rb +2 -2
  183. data/lib/elasticsearch/api/actions/license/post.rb +2 -2
  184. data/lib/elasticsearch/api/actions/license/post_start_basic.rb +2 -2
  185. data/lib/elasticsearch/api/actions/license/post_start_trial.rb +2 -2
  186. data/lib/elasticsearch/api/actions/logstash/delete_pipeline.rb +2 -2
  187. data/lib/elasticsearch/api/actions/logstash/get_pipeline.rb +2 -2
  188. data/lib/elasticsearch/api/actions/logstash/put_pipeline.rb +2 -2
  189. data/lib/elasticsearch/api/actions/machine_learning/clear_trained_model_deployment_cache.rb +57 -0
  190. data/lib/elasticsearch/api/actions/machine_learning/close_job.rb +2 -2
  191. data/lib/elasticsearch/api/actions/machine_learning/delete_calendar.rb +2 -2
  192. data/lib/elasticsearch/api/actions/machine_learning/delete_calendar_event.rb +2 -2
  193. data/lib/elasticsearch/api/actions/machine_learning/delete_calendar_job.rb +2 -2
  194. data/lib/elasticsearch/api/actions/machine_learning/delete_data_frame_analytics.rb +2 -2
  195. data/lib/elasticsearch/api/actions/machine_learning/delete_datafeed.rb +2 -2
  196. data/lib/elasticsearch/api/actions/machine_learning/delete_expired_data.rb +2 -2
  197. data/lib/elasticsearch/api/actions/machine_learning/delete_filter.rb +2 -2
  198. data/lib/elasticsearch/api/actions/machine_learning/delete_forecast.rb +2 -2
  199. data/lib/elasticsearch/api/actions/machine_learning/delete_job.rb +2 -2
  200. data/lib/elasticsearch/api/actions/machine_learning/delete_model_snapshot.rb +2 -2
  201. data/lib/elasticsearch/api/actions/machine_learning/delete_trained_model.rb +2 -2
  202. data/lib/elasticsearch/api/actions/machine_learning/delete_trained_model_alias.rb +2 -2
  203. data/lib/elasticsearch/api/actions/machine_learning/estimate_model_memory.rb +2 -2
  204. data/lib/elasticsearch/api/actions/machine_learning/evaluate_data_frame.rb +2 -2
  205. data/lib/elasticsearch/api/actions/machine_learning/explain_data_frame_analytics.rb +2 -2
  206. data/lib/elasticsearch/api/actions/machine_learning/flush_job.rb +2 -2
  207. data/lib/elasticsearch/api/actions/machine_learning/forecast.rb +2 -2
  208. data/lib/elasticsearch/api/actions/machine_learning/get_buckets.rb +2 -2
  209. data/lib/elasticsearch/api/actions/machine_learning/get_calendar_events.rb +2 -2
  210. data/lib/elasticsearch/api/actions/machine_learning/get_calendars.rb +2 -2
  211. data/lib/elasticsearch/api/actions/machine_learning/get_categories.rb +2 -2
  212. data/lib/elasticsearch/api/actions/machine_learning/get_data_frame_analytics.rb +2 -2
  213. data/lib/elasticsearch/api/actions/machine_learning/get_data_frame_analytics_stats.rb +2 -2
  214. data/lib/elasticsearch/api/actions/machine_learning/get_datafeed_stats.rb +2 -2
  215. data/lib/elasticsearch/api/actions/machine_learning/get_datafeeds.rb +2 -2
  216. data/lib/elasticsearch/api/actions/machine_learning/get_filters.rb +2 -2
  217. data/lib/elasticsearch/api/actions/machine_learning/get_influencers.rb +2 -2
  218. data/lib/elasticsearch/api/actions/machine_learning/get_job_stats.rb +2 -2
  219. data/lib/elasticsearch/api/actions/machine_learning/get_jobs.rb +2 -2
  220. data/lib/elasticsearch/api/actions/machine_learning/get_memory_stats.rb +2 -2
  221. data/lib/elasticsearch/api/actions/machine_learning/get_model_snapshot_upgrade_stats.rb +2 -2
  222. data/lib/elasticsearch/api/actions/machine_learning/get_model_snapshots.rb +2 -2
  223. data/lib/elasticsearch/api/actions/machine_learning/get_overall_buckets.rb +2 -2
  224. data/lib/elasticsearch/api/actions/machine_learning/get_records.rb +2 -2
  225. data/lib/elasticsearch/api/actions/machine_learning/get_trained_models.rb +2 -2
  226. data/lib/elasticsearch/api/actions/machine_learning/get_trained_models_stats.rb +2 -2
  227. data/lib/elasticsearch/api/actions/machine_learning/infer_trained_model.rb +6 -6
  228. data/lib/elasticsearch/api/actions/machine_learning/info.rb +2 -2
  229. data/lib/elasticsearch/api/actions/machine_learning/open_job.rb +2 -2
  230. data/lib/elasticsearch/api/actions/machine_learning/post_calendar_events.rb +2 -2
  231. data/lib/elasticsearch/api/actions/machine_learning/post_data.rb +2 -2
  232. data/lib/elasticsearch/api/actions/machine_learning/preview_data_frame_analytics.rb +2 -2
  233. data/lib/elasticsearch/api/actions/machine_learning/preview_datafeed.rb +2 -2
  234. data/lib/elasticsearch/api/actions/machine_learning/put_calendar.rb +2 -2
  235. data/lib/elasticsearch/api/actions/machine_learning/put_calendar_job.rb +2 -2
  236. data/lib/elasticsearch/api/actions/machine_learning/put_data_frame_analytics.rb +2 -2
  237. data/lib/elasticsearch/api/actions/machine_learning/put_datafeed.rb +2 -2
  238. data/lib/elasticsearch/api/actions/machine_learning/put_filter.rb +2 -2
  239. data/lib/elasticsearch/api/actions/machine_learning/put_job.rb +2 -2
  240. data/lib/elasticsearch/api/actions/machine_learning/put_trained_model.rb +2 -2
  241. data/lib/elasticsearch/api/actions/machine_learning/put_trained_model_alias.rb +2 -2
  242. data/lib/elasticsearch/api/actions/machine_learning/put_trained_model_definition_part.rb +6 -6
  243. data/lib/elasticsearch/api/actions/machine_learning/put_trained_model_vocabulary.rb +6 -6
  244. data/lib/elasticsearch/api/actions/machine_learning/reset_job.rb +2 -2
  245. data/lib/elasticsearch/api/actions/machine_learning/revert_model_snapshot.rb +2 -2
  246. data/lib/elasticsearch/api/actions/machine_learning/set_upgrade_mode.rb +2 -2
  247. data/lib/elasticsearch/api/actions/machine_learning/start_data_frame_analytics.rb +2 -2
  248. data/lib/elasticsearch/api/actions/machine_learning/start_datafeed.rb +2 -2
  249. data/lib/elasticsearch/api/actions/machine_learning/start_trained_model_deployment.rb +7 -7
  250. data/lib/elasticsearch/api/actions/machine_learning/stop_data_frame_analytics.rb +2 -2
  251. data/lib/elasticsearch/api/actions/machine_learning/stop_datafeed.rb +2 -2
  252. data/lib/elasticsearch/api/actions/machine_learning/stop_trained_model_deployment.rb +6 -6
  253. data/lib/elasticsearch/api/actions/machine_learning/update_data_frame_analytics.rb +2 -2
  254. data/lib/elasticsearch/api/actions/machine_learning/update_datafeed.rb +2 -2
  255. data/lib/elasticsearch/api/actions/machine_learning/update_filter.rb +2 -2
  256. data/lib/elasticsearch/api/actions/machine_learning/update_job.rb +2 -2
  257. data/lib/elasticsearch/api/actions/machine_learning/update_model_snapshot.rb +2 -2
  258. data/lib/elasticsearch/api/actions/machine_learning/upgrade_job_snapshot.rb +2 -2
  259. data/lib/elasticsearch/api/actions/machine_learning/validate.rb +2 -2
  260. data/lib/elasticsearch/api/actions/machine_learning/validate_detector.rb +2 -2
  261. data/lib/elasticsearch/api/actions/mget.rb +2 -2
  262. data/lib/elasticsearch/api/actions/migration/deprecations.rb +2 -2
  263. data/lib/elasticsearch/api/actions/migration/get_feature_upgrade_status.rb +2 -2
  264. data/lib/elasticsearch/api/actions/migration/post_feature_upgrade.rb +2 -2
  265. data/lib/elasticsearch/api/actions/monitoring/bulk.rb +2 -2
  266. data/lib/elasticsearch/api/actions/msearch.rb +2 -2
  267. data/lib/elasticsearch/api/actions/msearch_template.rb +2 -2
  268. data/lib/elasticsearch/api/actions/mtermvectors.rb +2 -2
  269. data/lib/elasticsearch/api/actions/nodes/clear_repositories_metering_archive.rb +2 -2
  270. data/lib/elasticsearch/api/actions/nodes/get_repositories_metering_info.rb +2 -2
  271. data/lib/elasticsearch/api/actions/nodes/hot_threads.rb +2 -2
  272. data/lib/elasticsearch/api/actions/nodes/info.rb +2 -2
  273. data/lib/elasticsearch/api/actions/nodes/reload_secure_settings.rb +2 -2
  274. data/lib/elasticsearch/api/actions/nodes/stats.rb +2 -2
  275. data/lib/elasticsearch/api/actions/nodes/usage.rb +2 -2
  276. data/lib/elasticsearch/api/actions/open_point_in_time.rb +2 -2
  277. data/lib/elasticsearch/api/actions/ping.rb +2 -2
  278. data/lib/elasticsearch/api/actions/put_script.rb +2 -2
  279. data/lib/elasticsearch/api/actions/rank_eval.rb +2 -2
  280. data/lib/elasticsearch/api/actions/reindex.rb +2 -2
  281. data/lib/elasticsearch/api/actions/reindex_rethrottle.rb +2 -2
  282. data/lib/elasticsearch/api/actions/render_search_template.rb +2 -2
  283. data/lib/elasticsearch/api/actions/rollup/delete_job.rb +2 -2
  284. data/lib/elasticsearch/api/actions/rollup/get_jobs.rb +2 -2
  285. data/lib/elasticsearch/api/actions/rollup/get_rollup_caps.rb +2 -2
  286. data/lib/elasticsearch/api/actions/rollup/get_rollup_index_caps.rb +2 -2
  287. data/lib/elasticsearch/api/actions/rollup/put_job.rb +2 -2
  288. data/lib/elasticsearch/api/actions/rollup/rollup_search.rb +2 -2
  289. data/lib/elasticsearch/api/actions/rollup/start_job.rb +2 -2
  290. data/lib/elasticsearch/api/actions/rollup/stop_job.rb +2 -2
  291. data/lib/elasticsearch/api/actions/scripts_painless_execute.rb +2 -2
  292. data/lib/elasticsearch/api/actions/scroll.rb +2 -2
  293. data/lib/elasticsearch/api/actions/search.rb +2 -2
  294. data/lib/elasticsearch/api/actions/search_mvt.rb +2 -2
  295. data/lib/elasticsearch/api/actions/search_shards.rb +2 -2
  296. data/lib/elasticsearch/api/actions/search_template.rb +2 -2
  297. data/lib/elasticsearch/api/actions/searchable_snapshots/cache_stats.rb +2 -2
  298. data/lib/elasticsearch/api/actions/searchable_snapshots/clear_cache.rb +2 -2
  299. data/lib/elasticsearch/api/actions/searchable_snapshots/mount.rb +2 -2
  300. data/lib/elasticsearch/api/actions/searchable_snapshots/stats.rb +2 -2
  301. data/lib/elasticsearch/api/actions/security/activate_user_profile.rb +2 -6
  302. data/lib/elasticsearch/api/actions/security/authenticate.rb +2 -2
  303. data/lib/elasticsearch/api/actions/security/bulk_update_api_keys.rb +51 -0
  304. data/lib/elasticsearch/api/actions/security/change_password.rb +2 -2
  305. data/lib/elasticsearch/api/actions/security/clear_api_key_cache.rb +2 -2
  306. data/lib/elasticsearch/api/actions/security/clear_cached_privileges.rb +2 -2
  307. data/lib/elasticsearch/api/actions/security/clear_cached_realms.rb +2 -2
  308. data/lib/elasticsearch/api/actions/security/clear_cached_roles.rb +2 -2
  309. data/lib/elasticsearch/api/actions/security/clear_cached_service_tokens.rb +2 -2
  310. data/lib/elasticsearch/api/actions/security/create_api_key.rb +2 -2
  311. data/lib/elasticsearch/api/actions/security/create_service_token.rb +2 -2
  312. data/lib/elasticsearch/api/actions/security/delete_privileges.rb +2 -2
  313. data/lib/elasticsearch/api/actions/security/delete_role.rb +2 -2
  314. data/lib/elasticsearch/api/actions/security/delete_role_mapping.rb +2 -2
  315. data/lib/elasticsearch/api/actions/security/delete_service_token.rb +2 -2
  316. data/lib/elasticsearch/api/actions/security/delete_user.rb +2 -2
  317. data/lib/elasticsearch/api/actions/security/disable_user.rb +2 -2
  318. data/lib/elasticsearch/api/actions/security/disable_user_profile.rb +2 -6
  319. data/lib/elasticsearch/api/actions/security/enable_user.rb +2 -2
  320. data/lib/elasticsearch/api/actions/security/enable_user_profile.rb +2 -6
  321. data/lib/elasticsearch/api/actions/security/enroll_kibana.rb +2 -2
  322. data/lib/elasticsearch/api/actions/security/enroll_node.rb +2 -2
  323. data/lib/elasticsearch/api/actions/security/get_api_key.rb +3 -2
  324. data/lib/elasticsearch/api/actions/security/get_builtin_privileges.rb +2 -2
  325. data/lib/elasticsearch/api/actions/security/get_privileges.rb +2 -2
  326. data/lib/elasticsearch/api/actions/security/get_role.rb +2 -2
  327. data/lib/elasticsearch/api/actions/security/get_role_mapping.rb +2 -2
  328. data/lib/elasticsearch/api/actions/security/get_service_accounts.rb +2 -2
  329. data/lib/elasticsearch/api/actions/security/get_service_credentials.rb +2 -2
  330. data/lib/elasticsearch/api/actions/security/get_token.rb +2 -2
  331. data/lib/elasticsearch/api/actions/security/get_user.rb +4 -3
  332. data/lib/elasticsearch/api/actions/security/get_user_privileges.rb +2 -2
  333. data/lib/elasticsearch/api/actions/security/get_user_profile.rb +4 -8
  334. data/lib/elasticsearch/api/actions/security/grant_api_key.rb +2 -2
  335. data/lib/elasticsearch/api/actions/security/has_privileges.rb +2 -2
  336. data/lib/elasticsearch/api/actions/security/has_privileges_user_profile.rb +2 -6
  337. data/lib/elasticsearch/api/actions/security/invalidate_api_key.rb +2 -2
  338. data/lib/elasticsearch/api/actions/security/invalidate_token.rb +2 -2
  339. data/lib/elasticsearch/api/actions/security/oidc_authenticate.rb +2 -2
  340. data/lib/elasticsearch/api/actions/security/oidc_logout.rb +2 -2
  341. data/lib/elasticsearch/api/actions/security/oidc_prepare_authentication.rb +2 -2
  342. data/lib/elasticsearch/api/actions/security/put_privileges.rb +2 -2
  343. data/lib/elasticsearch/api/actions/security/put_role.rb +2 -2
  344. data/lib/elasticsearch/api/actions/security/put_role_mapping.rb +2 -2
  345. data/lib/elasticsearch/api/actions/security/put_user.rb +2 -2
  346. data/lib/elasticsearch/api/actions/security/query_api_keys.rb +4 -3
  347. data/lib/elasticsearch/api/actions/security/saml_authenticate.rb +2 -2
  348. data/lib/elasticsearch/api/actions/security/saml_complete_logout.rb +2 -2
  349. data/lib/elasticsearch/api/actions/security/saml_invalidate.rb +2 -2
  350. data/lib/elasticsearch/api/actions/security/saml_logout.rb +2 -2
  351. data/lib/elasticsearch/api/actions/security/saml_prepare_authentication.rb +2 -2
  352. data/lib/elasticsearch/api/actions/security/saml_service_provider_metadata.rb +2 -2
  353. data/lib/elasticsearch/api/actions/security/suggest_user_profiles.rb +2 -6
  354. data/lib/elasticsearch/api/actions/security/update_api_key.rb +2 -2
  355. data/lib/elasticsearch/api/actions/security/update_user_profile_data.rb +2 -6
  356. data/lib/elasticsearch/api/actions/shutdown/delete_node.rb +1 -1
  357. data/lib/elasticsearch/api/actions/shutdown/get_node.rb +1 -1
  358. data/lib/elasticsearch/api/actions/shutdown/put_node.rb +1 -1
  359. data/lib/elasticsearch/api/actions/snapshot/cleanup_repository.rb +2 -2
  360. data/lib/elasticsearch/api/actions/snapshot/clone.rb +2 -2
  361. data/lib/elasticsearch/api/actions/snapshot/create.rb +2 -2
  362. data/lib/elasticsearch/api/actions/snapshot/create_repository.rb +2 -2
  363. data/lib/elasticsearch/api/actions/snapshot/delete.rb +2 -2
  364. data/lib/elasticsearch/api/actions/snapshot/delete_repository.rb +2 -2
  365. data/lib/elasticsearch/api/actions/snapshot/get.rb +2 -2
  366. data/lib/elasticsearch/api/actions/snapshot/get_repository.rb +2 -2
  367. data/lib/elasticsearch/api/actions/snapshot/repository_analyze.rb +2 -2
  368. data/lib/elasticsearch/api/actions/snapshot/restore.rb +2 -2
  369. data/lib/elasticsearch/api/actions/snapshot/status.rb +2 -2
  370. data/lib/elasticsearch/api/actions/snapshot/verify_repository.rb +2 -2
  371. data/lib/elasticsearch/api/actions/snapshot_lifecycle_management/delete_lifecycle.rb +2 -2
  372. data/lib/elasticsearch/api/actions/snapshot_lifecycle_management/execute_lifecycle.rb +2 -2
  373. data/lib/elasticsearch/api/actions/snapshot_lifecycle_management/execute_retention.rb +2 -2
  374. data/lib/elasticsearch/api/actions/snapshot_lifecycle_management/get_lifecycle.rb +2 -2
  375. data/lib/elasticsearch/api/actions/snapshot_lifecycle_management/get_stats.rb +2 -2
  376. data/lib/elasticsearch/api/actions/snapshot_lifecycle_management/get_status.rb +2 -2
  377. data/lib/elasticsearch/api/actions/snapshot_lifecycle_management/put_lifecycle.rb +2 -2
  378. data/lib/elasticsearch/api/actions/snapshot_lifecycle_management/start.rb +2 -2
  379. data/lib/elasticsearch/api/actions/snapshot_lifecycle_management/stop.rb +2 -2
  380. data/lib/elasticsearch/api/actions/sql/clear_cursor.rb +2 -2
  381. data/lib/elasticsearch/api/actions/sql/delete_async.rb +2 -2
  382. data/lib/elasticsearch/api/actions/sql/get_async.rb +2 -2
  383. data/lib/elasticsearch/api/actions/sql/get_async_status.rb +2 -2
  384. data/lib/elasticsearch/api/actions/sql/query.rb +2 -2
  385. data/lib/elasticsearch/api/actions/sql/translate.rb +2 -2
  386. data/lib/elasticsearch/api/actions/ssl/certificates.rb +2 -2
  387. data/lib/elasticsearch/api/actions/tasks/cancel.rb +2 -2
  388. data/lib/elasticsearch/api/actions/tasks/get.rb +2 -2
  389. data/lib/elasticsearch/api/actions/tasks/list.rb +2 -2
  390. data/lib/elasticsearch/api/actions/terms_enum.rb +2 -2
  391. data/lib/elasticsearch/api/actions/termvectors.rb +2 -2
  392. data/lib/elasticsearch/api/actions/text_structure/find_structure.rb +3 -2
  393. data/lib/elasticsearch/api/actions/transform/delete_transform.rb +2 -2
  394. data/lib/elasticsearch/api/actions/transform/get_transform.rb +2 -2
  395. data/lib/elasticsearch/api/actions/transform/get_transform_stats.rb +2 -2
  396. data/lib/elasticsearch/api/actions/transform/preview_transform.rb +2 -2
  397. data/lib/elasticsearch/api/actions/transform/put_transform.rb +2 -2
  398. data/lib/elasticsearch/api/actions/transform/reset_transform.rb +2 -2
  399. data/lib/elasticsearch/api/actions/transform/start_transform.rb +2 -2
  400. data/lib/elasticsearch/api/actions/transform/stop_transform.rb +2 -2
  401. data/lib/elasticsearch/api/actions/transform/update_transform.rb +2 -2
  402. data/lib/elasticsearch/api/actions/transform/upgrade_transforms.rb +2 -2
  403. data/lib/elasticsearch/api/actions/update.rb +2 -2
  404. data/lib/elasticsearch/api/actions/update_by_query.rb +2 -2
  405. data/lib/elasticsearch/api/actions/update_by_query_rethrottle.rb +2 -2
  406. data/lib/elasticsearch/api/actions/watcher/ack_watch.rb +2 -2
  407. data/lib/elasticsearch/api/actions/watcher/activate_watch.rb +2 -2
  408. data/lib/elasticsearch/api/actions/watcher/deactivate_watch.rb +2 -2
  409. data/lib/elasticsearch/api/actions/watcher/delete_watch.rb +2 -2
  410. data/lib/elasticsearch/api/actions/watcher/execute_watch.rb +2 -2
  411. data/lib/elasticsearch/api/actions/watcher/get_watch.rb +2 -2
  412. data/lib/elasticsearch/api/actions/watcher/put_watch.rb +2 -2
  413. data/lib/elasticsearch/api/actions/watcher/query_watches.rb +2 -2
  414. data/lib/elasticsearch/api/actions/watcher/start.rb +2 -2
  415. data/lib/elasticsearch/api/actions/watcher/stats.rb +2 -2
  416. data/lib/elasticsearch/api/actions/watcher/stop.rb +2 -2
  417. data/lib/elasticsearch/api/actions/xpack/info.rb +2 -2
  418. data/lib/elasticsearch/api/actions/xpack/usage.rb +2 -2
  419. data/lib/elasticsearch/api/version.rb +1 -1
  420. data/spec/rest_api_tests_helper.rb +2 -0
  421. data/spec/skipped_tests_free.yml +0 -1
  422. data/spec/skipped_tests_platinum.yml +0 -5
  423. data/spec/unit_tests_platinum/unit/{rollup/rollup_test.rb → indices/downsample_test.rb} +7 -7
  424. data/spec/unit_tests_platinum/unit/machine_learning/clear_trained_model_deployment_cache_test.rb +40 -0
  425. data/spec/unit_tests_platinum/unit/security/bulk_update_api_key_test.rb +40 -0
  426. metadata +11 -5
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 15caa8da7e03ab34c0b4632e2fbde9bdd1706ac6c03096c407a6f748606fb884
4
- data.tar.gz: 9587a7c3491d7f422e595c2ef37e944b13e8cbf770bdcc400391cd0ba5de5e83
3
+ metadata.gz: a93e7def7192582d7c79489a2ad2953b23d41fa75c49f81e93ad717d951e6d2a
4
+ data.tar.gz: 8ecf595ae67b718028e6da5792b708a1439dc5e0522dab7d4da3f4b251541d83
5
5
  SHA512:
6
- metadata.gz: c0865c4b7e1a3be6ae18f92d7baf4a6ff23611ff2507584a40e7d6c730f1bbda14af94706748ed088fa8f4ef435a73d030904bd0dcb85af13cd55b6bf75e4997
7
- data.tar.gz: 81b8d09670066dcea7fc62b578b4dead0e8365c2fb27791f4879bac282cc392a40aa9247ca11174ccdfcd4e9f5cae47de64cc77b24cf2ed8fa8df2280832b782
6
+ metadata.gz: b6bb3945019969e536124a24ecee54e3eea42b1a6b7bfd24e3d49fb9f8fa8b58753224361e24560802eef8713fefb565553d9959e171898d8c9f737eb3b0941f
7
+ data.tar.gz: 361a85f3cba1eaa248947475a53531070916567669365306feaaee88274c8c52d49c21f36b91a28447837a6dfd1a20c1bad55af08e493533ff07baa02cd17269
data/README.md CHANGED
@@ -1,196 +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.
10
-
11
- It does not provide an Elasticsearch client; see the
12
- [`elastic-transport`](https://github.com/elastic/elastic-transport-ruby/) library.
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.
13
8
 
14
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/).
15
10
 
16
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.
17
12
 
18
- ## Installation
19
-
20
- Install the package from [Rubygems](https://rubygems.org):
21
-
22
- gem install elasticsearch-api
23
-
24
- To use an unreleased version, either add it to your `Gemfile` for [Bundler](http://gembundler.com):
25
-
26
- gem 'elasticsearch-api', git: 'git://github.com/elasticsearch/elasticsearch-ruby.git'
27
-
28
- or install it from a source code checkout:
29
-
30
- git clone https://github.com/elasticsearch/elasticsearch-ruby.git
31
- cd elasticsearch-ruby/elasticsearch-api
32
- bundle install
33
- rake install
34
-
35
- ## Usage
36
-
37
- The library is designed as a group of standalone Ruby modules, which can be mixed into a class
38
- providing connection to Elasticsearch -- an Elasticsearch client.
39
-
40
- ### Usage with the `elasticsearch` gem
41
-
42
- **When you use the client from the [`elasticsearch-ruby`](https://github.com/elasticsearch/elasticsearch-ruby/) package,
43
- the library modules have been already included**, so you just call the API methods:
44
-
45
- ```ruby
46
- require 'elasticsearch'
47
-
48
- client = Elasticsearch::Client.new(log: true)
49
-
50
- client.index(index: 'myindex', type: 'mytype', id: 1, body: { title: 'Test' })
51
- # => {"_index"=>"myindex", ... "created"=>true}
52
-
53
- client.search(index: 'myindex', body: { query: { match: { title: 'test' } } })
54
- # => {"took"=>2, ..., "hits"=>{"total":5, ...}}
55
- ```
56
-
57
- Full documentation and examples are included as RDoc annotations in the source code
58
- and available online at <http://rubydoc.info/gems/elasticsearch-api>.
59
-
60
- ### Usage with a custom client
61
-
62
- When you want to mix the library into your own client, it must conform to a following _contract_:
63
-
64
- * It responds to a `perform_request(method, path, params, body, headers)` method,
65
- * the method returns an object with `status`, `body` and `headers` methods.
66
13
 
67
- A simple client could look like this (_with a dependency on `active_support` to parse the query params_):
68
-
69
- ```ruby
70
- require 'multi_json'
71
- require 'faraday'
72
- require 'elasticsearch/api'
73
- require 'active_support'
74
-
75
- class MySimpleClient
76
- include Elasticsearch::API
77
-
78
- CONNECTION = ::Faraday::Connection.new url: 'http://localhost:9200'
79
-
80
- def perform_request(method, path, params, body, headers = nil)
81
- puts "--> #{method.upcase} #{path} #{params} #{body} #{headers}"
82
-
83
- CONNECTION.run_request \
84
- method.downcase.to_sym,
85
- path_with_params(path, params),
86
- ( body ? MultiJson.dump(body): nil ),
87
- {'Content-Type' => 'application/json'}
88
- end
89
-
90
- private
91
-
92
- def path_with_params(path, params)
93
- return path if params.blank?
94
-
95
- case params
96
- when String
97
- "#{path}?#{params}"
98
- when Hash
99
- "#{path}?#{params.to_query}"
100
- else
101
- raise ArgumentError, "Cannot parse params: '#{params}'"
102
- end
103
- end
104
- end
105
-
106
- client = MySimpleClient.new
107
-
108
- p client.cluster.health
109
- # --> GET _cluster/health {}
110
- # => "{"cluster_name":"elasticsearch" ... }"
111
-
112
- p client.index index: 'myindex', type: 'mytype', id: 'custom', body: { title: "Indexing from my client" }
113
- # --> PUT myindex/mytype/custom {} {:title=>"Indexing from my client"}
114
- # => "{"ok":true, ... }"
115
- ```
116
-
117
- ### Using JSON Builders
118
-
119
- Instead of passing the `:body` argument as a Ruby _Hash_, you can pass it as a _String_, potentially
120
- taking advantage of JSON builders such as [JBuilder](https://github.com/rails/jbuilder) or
121
- [Jsonify](https://github.com/bsiggelkow/jsonify):
122
-
123
- ```ruby
124
- require 'jbuilder'
125
-
126
- query = Jbuilder.encode do |json|
127
- json.query do
128
- json.match do
129
- json.title do
130
- json.query 'test 1'
131
- json.operator 'and'
132
- end
133
- end
134
- end
135
- end
136
-
137
- client.search index: 'myindex', body: query
138
-
139
- # 2013-06-25 09:56:05 +0200: GET http://localhost:9200/myindex/_search [status:200, request:0.015s, query:0.011s]
140
- # 2013-06-25 09:56:05 +0200: > {"query":{"match":{"title":{"query":"test 1","operator":"and"}}}}
141
- # ...
142
- # => {"took"=>21, ..., "hits"=>{"total"=>1, "hits"=>[{ "_source"=>{"title"=>"Test 1", ...}}]}}
143
- ```
14
+ ## Development
144
15
 
145
- ### Using Hash Wrappers
16
+ Refer to [CONTRIBUTING](https://github.com/elastic/elasticsearch-ruby/blob/main/CONTRIBUTING.md).
146
17
 
147
- For a more comfortable access to response properties, you may wrap it in one of the _Hash_ "object access"
148
- 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).
149
19
 
150
- ```ruby
151
- require 'hashie'
152
-
153
- response = client.search index: 'myindex',
154
- body: {
155
- query: { match: { title: 'test' } },
156
- aggregations: { tags: { terms: { field: 'tags' } } }
157
- }
158
-
159
- mash = Hashie::Mash.new response
160
-
161
- mash.hits.hits.first._source.title
162
- # => 'Test'
163
-
164
- mash.aggregations.tags.terms.first
165
- # => #<Hashie::Mash count=3 term="z">
166
- ```
167
-
168
- ### Using a Custom JSON Serializer
169
-
170
- The library uses the [MultiJson](https://rubygems.org/gems/multi_json/) gem by default,
171
- but allows you to set a custom JSON library, provided it uses the standard `load/dump`
172
- interface:
173
-
174
- ```ruby
175
- Elasticsearch::API.settings[:serializer] = JrJackson::Json
176
- Elasticsearch::API.serializer.dump({foo: 'bar'})
177
- # => {"foo":"bar"}
178
- ```
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:
179
21
 
180
- ## Development
22
+ `rake download_artifacts[8.5.0-SNAPSHOT]`
181
23
 
182
- 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:
183
25
 
184
- 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`
185
27
 
186
- ```
187
- time rake test:unit
188
- time rake test:integration
189
- ```
28
+ This will download the necessary files used for the integration tests to `./tmp`.
190
29
 
191
- 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).
30
+ ### Code generation
192
31
 
193
- 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 elasticsearch: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.
194
33
 
195
34
  ## License
196
35
 
data/Rakefile CHANGED
@@ -42,7 +42,7 @@ namespace :test do
42
42
 
43
43
  namespace :platinum do
44
44
  desc 'Run Platinum Rest API Spec tests'
45
- RSpec::Core::RakeTask.new(:api) do |t|
45
+ RSpec::Core::RakeTask.new(:api) do
46
46
  ENV['TEST_SUITE'] = 'platinum'
47
47
  Rake::Task['test:rest_api'].invoke
48
48
  end
@@ -83,10 +83,6 @@ module Elasticsearch
83
83
  client
84
84
  when 'headers'
85
85
  headers = prepare_arguments(args, test)
86
- # TODO: Remove Authorization headers while x_pack_rest_user is fixed
87
- if headers[:Authorization] == 'Basic eF9wYWNrX3Jlc3RfdXNlcjp4LXBhY2stdGVzdC1wYXNzd29yZA=='
88
- headers.delete(:Authorization)
89
- end
90
86
  host = client.transport.instance_variable_get('@hosts')
91
87
  transport_options = client.transport.instance_variable_get('@options')&.dig(:transport_options) || {}
92
88
  if ENV['QUIET'] == 'true'
@@ -207,7 +203,7 @@ module Elasticsearch
207
203
  end
208
204
  end
209
205
  elsif args.is_a?(String)
210
- if cached_value = test.cached_values.find { |k, v| args =~ /\$\{?#{k}\}?/ }
206
+ if (cached_value = test.cached_values.find { |k, _v| args =~ /\$\{?#{k}\}?/ })
211
207
  return cached_value[1]
212
208
  end
213
209
  end
@@ -58,9 +58,9 @@ module Elasticsearch
58
58
  #
59
59
  # @since 6.2.0
60
60
  def split_and_parse_key(key)
61
- key.split(/(?<!\\)\./).reject { |k| k.empty? }.map do |key_part|
61
+ key.split(/(?<!\\)\./).reject(&:empty?).map do |key_part|
62
62
  case key_part
63
- when /^\.\$/ # For keys in the form of .$key
63
+ when /^\.\$/ # For keys in the form of .$key
64
64
  key_part.gsub(/^\./, '')
65
65
  when /\A[-+]?[0-9]+\z/
66
66
  key_part.to_i
@@ -182,6 +182,7 @@ module Elasticsearch
182
182
  key =~ /^\$/ ? @cached_values.fetch(key.gsub(/[\$\{\}]/, ''), key) : key
183
183
  when Hash
184
184
  key.inject({}) do |hash, (k, v)|
185
+ k = k.to_s if k.is_a?(Float)
185
186
  if v.is_a?(String)
186
187
  hash.merge(@cached_values.fetch(k.gsub(/[\$\{\}]/, ''), k) => @cached_values.fetch(v.gsub(/[\$\{\}]/, ''), v))
187
188
  else
@@ -50,6 +50,13 @@ module Elasticsearch
50
50
  check_for_unexpectedly_recreated_objects(client)
51
51
  end
52
52
 
53
+ def self.create_xpack_rest_user(client)
54
+ client.security.put_user(
55
+ username: 'x_pack_rest_user',
56
+ body: { password: 'x-pack-test-password', roles: ['superuser'] }
57
+ )
58
+ end
59
+
53
60
  class << self
54
61
  private
55
62
 
@@ -308,13 +315,6 @@ module Elasticsearch
308
315
  end
309
316
  end
310
317
 
311
- def create_xpack_rest_user(client)
312
- client.security.put_user(
313
- username: 'x_pack_rest_user',
314
- body: { password: 'x-pack-test-password', roles: ['superuser'] }
315
- )
316
- end
317
-
318
318
  def clear_roles(client)
319
319
  client.security.get_role.each do |role, _|
320
320
  begin; client.security.delete_role(name: role); rescue; end
@@ -15,7 +15,7 @@
15
15
  # specific language governing permissions and limitations
16
16
  # under the License.
17
17
  #
18
- # Auto generated from build hash f284cc16f4d4b4289bc679aa1529bb504190fe80
18
+ # Auto generated from build hash c462e504756a92dcafba3fbf944152babda8999f
19
19
  # @see https://github.com/elastic/elasticsearch/tree/main/rest-api-spec
20
20
  #
21
21
  module Elasticsearch
@@ -27,7 +27,7 @@ module Elasticsearch
27
27
  # @option arguments [String] :id The async search ID
28
28
  # @option arguments [Hash] :headers Custom HTTP headers
29
29
  #
30
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/current/async-search.html
30
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/8.5/async-search.html
31
31
  #
32
32
  def delete(arguments = {})
33
33
  raise ArgumentError, "Required argument 'id' missing" unless arguments[:id]
@@ -15,7 +15,7 @@
15
15
  # specific language governing permissions and limitations
16
16
  # under the License.
17
17
  #
18
- # Auto generated from build hash f284cc16f4d4b4289bc679aa1529bb504190fe80
18
+ # Auto generated from build hash c462e504756a92dcafba3fbf944152babda8999f
19
19
  # @see https://github.com/elastic/elasticsearch/tree/main/rest-api-spec
20
20
  #
21
21
  module Elasticsearch
@@ -30,7 +30,7 @@ module Elasticsearch
30
30
  # @option arguments [Boolean] :typed_keys Specify whether aggregation and suggester names should be prefixed by their respective types in the response
31
31
  # @option arguments [Hash] :headers Custom HTTP headers
32
32
  #
33
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/current/async-search.html
33
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/8.5/async-search.html
34
34
  #
35
35
  def get(arguments = {})
36
36
  raise ArgumentError, "Required argument 'id' missing" unless arguments[:id]
@@ -15,7 +15,7 @@
15
15
  # specific language governing permissions and limitations
16
16
  # under the License.
17
17
  #
18
- # Auto generated from build hash f284cc16f4d4b4289bc679aa1529bb504190fe80
18
+ # Auto generated from build hash c462e504756a92dcafba3fbf944152babda8999f
19
19
  # @see https://github.com/elastic/elasticsearch/tree/main/rest-api-spec
20
20
  #
21
21
  module Elasticsearch
@@ -27,7 +27,7 @@ module Elasticsearch
27
27
  # @option arguments [String] :id The async search ID
28
28
  # @option arguments [Hash] :headers Custom HTTP headers
29
29
  #
30
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/current/async-search.html
30
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/8.5/async-search.html
31
31
  #
32
32
  def status(arguments = {})
33
33
  raise ArgumentError, "Required argument 'id' missing" unless arguments[:id]
@@ -15,7 +15,7 @@
15
15
  # specific language governing permissions and limitations
16
16
  # under the License.
17
17
  #
18
- # Auto generated from build hash f284cc16f4d4b4289bc679aa1529bb504190fe80
18
+ # Auto generated from build hash c462e504756a92dcafba3fbf944152babda8999f
19
19
  # @see https://github.com/elastic/elasticsearch/tree/main/rest-api-spec
20
20
  #
21
21
  module Elasticsearch
@@ -69,7 +69,7 @@ module Elasticsearch
69
69
  # @option arguments [Hash] :headers Custom HTTP headers
70
70
  # @option arguments [Hash] :body The search definition using the Query DSL
71
71
  #
72
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/current/async-search.html
72
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/8.5/async-search.html
73
73
  #
74
74
  def submit(arguments = {})
75
75
  arguments = arguments.clone
@@ -15,7 +15,7 @@
15
15
  # specific language governing permissions and limitations
16
16
  # under the License.
17
17
  #
18
- # Auto generated from build hash f284cc16f4d4b4289bc679aa1529bb504190fe80
18
+ # Auto generated from build hash c462e504756a92dcafba3fbf944152babda8999f
19
19
  # @see https://github.com/elastic/elasticsearch/tree/main/rest-api-spec
20
20
  #
21
21
  module Elasticsearch
@@ -27,7 +27,7 @@ module Elasticsearch
27
27
  # @option arguments [String] :name the name of the autoscaling policy
28
28
  # @option arguments [Hash] :headers Custom HTTP headers
29
29
  #
30
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/current/autoscaling-delete-autoscaling-policy.html
30
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/8.5/autoscaling-delete-autoscaling-policy.html
31
31
  #
32
32
  def delete_autoscaling_policy(arguments = {})
33
33
  raise ArgumentError, "Required argument 'name' missing" unless arguments[:name]
@@ -15,7 +15,7 @@
15
15
  # specific language governing permissions and limitations
16
16
  # under the License.
17
17
  #
18
- # Auto generated from build hash f284cc16f4d4b4289bc679aa1529bb504190fe80
18
+ # Auto generated from build hash c462e504756a92dcafba3fbf944152babda8999f
19
19
  # @see https://github.com/elastic/elasticsearch/tree/main/rest-api-spec
20
20
  #
21
21
  module Elasticsearch
@@ -26,7 +26,7 @@ module Elasticsearch
26
26
  #
27
27
  # @option arguments [Hash] :headers Custom HTTP headers
28
28
  #
29
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/current/autoscaling-get-autoscaling-capacity.html
29
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/8.5/autoscaling-get-autoscaling-capacity.html
30
30
  #
31
31
  def get_autoscaling_capacity(arguments = {})
32
32
  arguments = arguments.clone
@@ -15,7 +15,7 @@
15
15
  # specific language governing permissions and limitations
16
16
  # under the License.
17
17
  #
18
- # Auto generated from build hash f284cc16f4d4b4289bc679aa1529bb504190fe80
18
+ # Auto generated from build hash c462e504756a92dcafba3fbf944152babda8999f
19
19
  # @see https://github.com/elastic/elasticsearch/tree/main/rest-api-spec
20
20
  #
21
21
  module Elasticsearch
@@ -27,7 +27,7 @@ module Elasticsearch
27
27
  # @option arguments [String] :name the name of the autoscaling policy
28
28
  # @option arguments [Hash] :headers Custom HTTP headers
29
29
  #
30
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/current/autoscaling-get-autoscaling-policy.html
30
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/8.5/autoscaling-get-autoscaling-policy.html
31
31
  #
32
32
  def get_autoscaling_policy(arguments = {})
33
33
  raise ArgumentError, "Required argument 'name' missing" unless arguments[:name]
@@ -15,7 +15,7 @@
15
15
  # specific language governing permissions and limitations
16
16
  # under the License.
17
17
  #
18
- # Auto generated from build hash f284cc16f4d4b4289bc679aa1529bb504190fe80
18
+ # Auto generated from build hash c462e504756a92dcafba3fbf944152babda8999f
19
19
  # @see https://github.com/elastic/elasticsearch/tree/main/rest-api-spec
20
20
  #
21
21
  module Elasticsearch
@@ -28,7 +28,7 @@ module Elasticsearch
28
28
  # @option arguments [Hash] :headers Custom HTTP headers
29
29
  # @option arguments [Hash] :body the specification of the autoscaling policy (*Required*)
30
30
  #
31
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/current/autoscaling-put-autoscaling-policy.html
31
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/8.5/autoscaling-put-autoscaling-policy.html
32
32
  #
33
33
  def put_autoscaling_policy(arguments = {})
34
34
  raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
@@ -15,7 +15,7 @@
15
15
  # specific language governing permissions and limitations
16
16
  # under the License.
17
17
  #
18
- # Auto generated from build hash f284cc16f4d4b4289bc679aa1529bb504190fe80
18
+ # Auto generated from build hash c462e504756a92dcafba3fbf944152babda8999f
19
19
  # @see https://github.com/elastic/elasticsearch/tree/main/rest-api-spec
20
20
  #
21
21
  module Elasticsearch
@@ -38,7 +38,7 @@ module Elasticsearch
38
38
  # @option arguments [String|Array] :body The operation definition and data (action-data pairs), separated by newlines. Array of Strings, Header/Data pairs,
39
39
  # or the conveniency "combined" format can be passed, refer to Elasticsearch::API::Utils.__bulkify documentation.
40
40
  #
41
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-bulk.html
41
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/8.5/docs-bulk.html
42
42
  #
43
43
  def bulk(arguments = {})
44
44
  raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
@@ -15,7 +15,7 @@
15
15
  # specific language governing permissions and limitations
16
16
  # under the License.
17
17
  #
18
- # Auto generated from build hash f284cc16f4d4b4289bc679aa1529bb504190fe80
18
+ # Auto generated from build hash c462e504756a92dcafba3fbf944152babda8999f
19
19
  # @see https://github.com/elastic/elasticsearch/tree/main/rest-api-spec
20
20
  #
21
21
  module Elasticsearch
@@ -34,7 +34,7 @@ module Elasticsearch
34
34
  # @option arguments [String] :expand_wildcards Whether to expand wildcard expression to concrete indices that are open, closed or both. (options: open, closed, hidden, none, all)
35
35
  # @option arguments [Hash] :headers Custom HTTP headers
36
36
  #
37
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/current/cat-alias.html
37
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/8.5/cat-alias.html
38
38
  #
39
39
  def aliases(arguments = {})
40
40
  arguments = arguments.clone
@@ -15,7 +15,7 @@
15
15
  # specific language governing permissions and limitations
16
16
  # under the License.
17
17
  #
18
- # Auto generated from build hash f284cc16f4d4b4289bc679aa1529bb504190fe80
18
+ # Auto generated from build hash c462e504756a92dcafba3fbf944152babda8999f
19
19
  # @see https://github.com/elastic/elasticsearch/tree/main/rest-api-spec
20
20
  #
21
21
  module Elasticsearch
@@ -35,7 +35,7 @@ module Elasticsearch
35
35
  # @option arguments [Boolean] :v Verbose mode. Display column headers
36
36
  # @option arguments [Hash] :headers Custom HTTP headers
37
37
  #
38
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/current/cat-allocation.html
38
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/8.5/cat-allocation.html
39
39
  #
40
40
  def allocation(arguments = {})
41
41
  arguments = arguments.clone
@@ -15,7 +15,7 @@
15
15
  # specific language governing permissions and limitations
16
16
  # under the License.
17
17
  #
18
- # Auto generated from build hash f284cc16f4d4b4289bc679aa1529bb504190fe80
18
+ # Auto generated from build hash c462e504756a92dcafba3fbf944152babda8999f
19
19
  # @see https://github.com/elastic/elasticsearch/tree/main/rest-api-spec
20
20
  #
21
21
  module Elasticsearch
@@ -34,7 +34,7 @@ module Elasticsearch
34
34
  # @option arguments [Boolean] :v Verbose mode. Display column headers
35
35
  # @option arguments [Hash] :headers Custom HTTP headers
36
36
  #
37
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/current/cat-compoentn-templates.html
37
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/8.5/cat-compoentn-templates.html
38
38
  #
39
39
  def component_templates(arguments = {})
40
40
  arguments = arguments.clone
@@ -15,7 +15,7 @@
15
15
  # specific language governing permissions and limitations
16
16
  # under the License.
17
17
  #
18
- # Auto generated from build hash f284cc16f4d4b4289bc679aa1529bb504190fe80
18
+ # Auto generated from build hash c462e504756a92dcafba3fbf944152babda8999f
19
19
  # @see https://github.com/elastic/elasticsearch/tree/main/rest-api-spec
20
20
  #
21
21
  module Elasticsearch
@@ -32,7 +32,7 @@ module Elasticsearch
32
32
  # @option arguments [Boolean] :v Verbose mode. Display column headers
33
33
  # @option arguments [Hash] :headers Custom HTTP headers
34
34
  #
35
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/current/cat-count.html
35
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/8.5/cat-count.html
36
36
  #
37
37
  def count(arguments = {})
38
38
  arguments = arguments.clone
@@ -15,7 +15,7 @@
15
15
  # specific language governing permissions and limitations
16
16
  # under the License.
17
17
  #
18
- # Auto generated from build hash f284cc16f4d4b4289bc679aa1529bb504190fe80
18
+ # Auto generated from build hash c462e504756a92dcafba3fbf944152babda8999f
19
19
  # @see https://github.com/elastic/elasticsearch/tree/main/rest-api-spec
20
20
  #
21
21
  module Elasticsearch
@@ -33,7 +33,7 @@ module Elasticsearch
33
33
  # @option arguments [Boolean] :v Verbose mode. Display column headers
34
34
  # @option arguments [Hash] :headers Custom HTTP headers
35
35
  #
36
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/current/cat-fielddata.html
36
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/8.5/cat-fielddata.html
37
37
  #
38
38
  def fielddata(arguments = {})
39
39
  arguments = arguments.clone
@@ -15,7 +15,7 @@
15
15
  # specific language governing permissions and limitations
16
16
  # under the License.
17
17
  #
18
- # Auto generated from build hash f284cc16f4d4b4289bc679aa1529bb504190fe80
18
+ # Auto generated from build hash c462e504756a92dcafba3fbf944152babda8999f
19
19
  # @see https://github.com/elastic/elasticsearch/tree/main/rest-api-spec
20
20
  #
21
21
  module Elasticsearch
@@ -33,7 +33,7 @@ module Elasticsearch
33
33
  # @option arguments [Boolean] :v Verbose mode. Display column headers
34
34
  # @option arguments [Hash] :headers Custom HTTP headers
35
35
  #
36
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/current/cat-health.html
36
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/8.5/cat-health.html
37
37
  #
38
38
  def health(arguments = {})
39
39
  arguments = arguments.clone
@@ -15,7 +15,7 @@
15
15
  # specific language governing permissions and limitations
16
16
  # under the License.
17
17
  #
18
- # Auto generated from build hash f284cc16f4d4b4289bc679aa1529bb504190fe80
18
+ # Auto generated from build hash c462e504756a92dcafba3fbf944152babda8999f
19
19
  # @see https://github.com/elastic/elasticsearch/tree/main/rest-api-spec
20
20
  #
21
21
  module Elasticsearch
@@ -28,7 +28,7 @@ module Elasticsearch
28
28
  # @option arguments [List] :s Comma-separated list of column names or column aliases to sort by
29
29
  # @option arguments [Hash] :headers Custom HTTP headers
30
30
  #
31
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/current/cat.html
31
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/8.5/cat.html
32
32
  #
33
33
  def help(arguments = {})
34
34
  arguments = arguments.clone
@@ -15,7 +15,7 @@
15
15
  # specific language governing permissions and limitations
16
16
  # under the License.
17
17
  #
18
- # Auto generated from build hash f284cc16f4d4b4289bc679aa1529bb504190fe80
18
+ # Auto generated from build hash c462e504756a92dcafba3fbf944152babda8999f
19
19
  # @see https://github.com/elastic/elasticsearch/tree/main/rest-api-spec
20
20
  #
21
21
  module Elasticsearch
@@ -39,7 +39,7 @@ module Elasticsearch
39
39
  # @option arguments [String] :expand_wildcards Whether to expand wildcard expression to concrete indices that are open, closed or both. (options: open, closed, hidden, none, all)
40
40
  # @option arguments [Hash] :headers Custom HTTP headers
41
41
  #
42
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/current/cat-indices.html
42
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/8.5/cat-indices.html
43
43
  #
44
44
  def indices(arguments = {})
45
45
  arguments = arguments.clone
@@ -15,7 +15,7 @@
15
15
  # specific language governing permissions and limitations
16
16
  # under the License.
17
17
  #
18
- # Auto generated from build hash f284cc16f4d4b4289bc679aa1529bb504190fe80
18
+ # Auto generated from build hash c462e504756a92dcafba3fbf944152babda8999f
19
19
  # @see https://github.com/elastic/elasticsearch/tree/main/rest-api-spec
20
20
  #
21
21
  module Elasticsearch
@@ -33,7 +33,7 @@ module Elasticsearch
33
33
  # @option arguments [Boolean] :v Verbose mode. Display column headers
34
34
  # @option arguments [Hash] :headers Custom HTTP headers
35
35
  #
36
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/current/cat-master.html
36
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/8.5/cat-master.html
37
37
  #
38
38
  def master(arguments = {})
39
39
  arguments = arguments.clone