elasticsearch-api 8.4.0 → 8.5.0

Sign up to get free protection for your applications and to get access to all the features.
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