elasticsearch-api 8.8.0 → 8.9.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 (604) hide show
  1. checksums.yaml +4 -4
  2. data/Rakefile +26 -25
  3. data/api-spec-testing/test_file/test.rb +1 -1
  4. data/api-spec-testing/wipe_cluster.rb +6 -6
  5. data/lib/elasticsearch/api/actions/async_search/delete.rb +1 -1
  6. data/lib/elasticsearch/api/actions/async_search/get.rb +1 -1
  7. data/lib/elasticsearch/api/actions/async_search/status.rb +1 -1
  8. data/lib/elasticsearch/api/actions/async_search/submit.rb +1 -1
  9. data/lib/elasticsearch/api/actions/autoscaling/delete_autoscaling_policy.rb +1 -1
  10. data/lib/elasticsearch/api/actions/autoscaling/get_autoscaling_capacity.rb +1 -1
  11. data/lib/elasticsearch/api/actions/autoscaling/get_autoscaling_policy.rb +1 -1
  12. data/lib/elasticsearch/api/actions/autoscaling/put_autoscaling_policy.rb +1 -1
  13. data/lib/elasticsearch/api/actions/bulk.rb +1 -1
  14. data/lib/elasticsearch/api/actions/cat/aliases.rb +1 -1
  15. data/lib/elasticsearch/api/actions/cat/allocation.rb +1 -1
  16. data/lib/elasticsearch/api/actions/cat/component_templates.rb +1 -1
  17. data/lib/elasticsearch/api/actions/cat/count.rb +1 -1
  18. data/lib/elasticsearch/api/actions/cat/fielddata.rb +1 -1
  19. data/lib/elasticsearch/api/actions/cat/health.rb +1 -1
  20. data/lib/elasticsearch/api/actions/cat/help.rb +1 -1
  21. data/lib/elasticsearch/api/actions/cat/indices.rb +1 -1
  22. data/lib/elasticsearch/api/actions/cat/master.rb +1 -1
  23. data/lib/elasticsearch/api/actions/cat/ml_data_frame_analytics.rb +1 -1
  24. data/lib/elasticsearch/api/actions/cat/ml_datafeeds.rb +1 -1
  25. data/lib/elasticsearch/api/actions/cat/ml_jobs.rb +1 -1
  26. data/lib/elasticsearch/api/actions/cat/ml_trained_models.rb +1 -1
  27. data/lib/elasticsearch/api/actions/cat/nodeattrs.rb +1 -1
  28. data/lib/elasticsearch/api/actions/cat/nodes.rb +1 -1
  29. data/lib/elasticsearch/api/actions/cat/pending_tasks.rb +1 -1
  30. data/lib/elasticsearch/api/actions/cat/plugins.rb +1 -1
  31. data/lib/elasticsearch/api/actions/cat/recovery.rb +1 -1
  32. data/lib/elasticsearch/api/actions/cat/repositories.rb +1 -1
  33. data/lib/elasticsearch/api/actions/cat/segments.rb +1 -1
  34. data/lib/elasticsearch/api/actions/cat/shards.rb +1 -1
  35. data/lib/elasticsearch/api/actions/cat/snapshots.rb +1 -1
  36. data/lib/elasticsearch/api/actions/cat/tasks.rb +1 -1
  37. data/lib/elasticsearch/api/actions/cat/templates.rb +1 -1
  38. data/lib/elasticsearch/api/actions/cat/thread_pool.rb +1 -1
  39. data/lib/elasticsearch/api/actions/cat/transforms.rb +1 -1
  40. data/lib/elasticsearch/api/actions/clear_scroll.rb +1 -1
  41. data/lib/elasticsearch/api/actions/close_point_in_time.rb +1 -1
  42. data/lib/elasticsearch/api/actions/cluster/allocation_explain.rb +1 -1
  43. data/lib/elasticsearch/api/actions/cluster/delete_component_template.rb +1 -1
  44. data/lib/elasticsearch/api/actions/cluster/delete_voting_config_exclusions.rb +1 -1
  45. data/lib/elasticsearch/api/actions/cluster/exists_component_template.rb +1 -1
  46. data/lib/elasticsearch/api/actions/cluster/get_component_template.rb +1 -1
  47. data/lib/elasticsearch/api/actions/cluster/get_settings.rb +1 -1
  48. data/lib/elasticsearch/api/actions/cluster/health.rb +1 -1
  49. data/lib/elasticsearch/api/actions/cluster/info.rb +53 -0
  50. data/lib/elasticsearch/api/actions/cluster/pending_tasks.rb +1 -1
  51. data/lib/elasticsearch/api/actions/cluster/post_voting_config_exclusions.rb +1 -1
  52. data/lib/elasticsearch/api/actions/cluster/put_component_template.rb +1 -1
  53. data/lib/elasticsearch/api/actions/cluster/put_settings.rb +1 -1
  54. data/lib/elasticsearch/api/actions/cluster/remote_info.rb +1 -1
  55. data/lib/elasticsearch/api/actions/cluster/reroute.rb +1 -1
  56. data/lib/elasticsearch/api/actions/cluster/state.rb +1 -1
  57. data/lib/elasticsearch/api/actions/cluster/stats.rb +1 -1
  58. data/lib/elasticsearch/api/actions/count.rb +1 -1
  59. data/lib/elasticsearch/api/actions/create.rb +1 -1
  60. data/lib/elasticsearch/api/actions/cross_cluster_replication/delete_auto_follow_pattern.rb +1 -1
  61. data/lib/elasticsearch/api/actions/cross_cluster_replication/follow.rb +1 -1
  62. data/lib/elasticsearch/api/actions/cross_cluster_replication/follow_info.rb +1 -1
  63. data/lib/elasticsearch/api/actions/cross_cluster_replication/follow_stats.rb +1 -1
  64. data/lib/elasticsearch/api/actions/cross_cluster_replication/forget_follower.rb +1 -1
  65. data/lib/elasticsearch/api/actions/cross_cluster_replication/get_auto_follow_pattern.rb +1 -1
  66. data/lib/elasticsearch/api/actions/cross_cluster_replication/pause_auto_follow_pattern.rb +1 -1
  67. data/lib/elasticsearch/api/actions/cross_cluster_replication/pause_follow.rb +1 -1
  68. data/lib/elasticsearch/api/actions/cross_cluster_replication/put_auto_follow_pattern.rb +1 -1
  69. data/lib/elasticsearch/api/actions/cross_cluster_replication/resume_auto_follow_pattern.rb +1 -1
  70. data/lib/elasticsearch/api/actions/cross_cluster_replication/resume_follow.rb +1 -1
  71. data/lib/elasticsearch/api/actions/cross_cluster_replication/stats.rb +1 -1
  72. data/lib/elasticsearch/api/actions/cross_cluster_replication/unfollow.rb +1 -1
  73. data/lib/elasticsearch/api/actions/dangling_indices/delete_dangling_index.rb +1 -1
  74. data/lib/elasticsearch/api/actions/dangling_indices/import_dangling_index.rb +1 -1
  75. data/lib/elasticsearch/api/actions/dangling_indices/list_dangling_indices.rb +1 -1
  76. data/lib/elasticsearch/api/actions/delete.rb +1 -1
  77. data/lib/elasticsearch/api/actions/delete_by_query.rb +1 -1
  78. data/lib/elasticsearch/api/actions/delete_by_query_rethrottle.rb +1 -1
  79. data/lib/elasticsearch/api/actions/delete_script.rb +1 -1
  80. data/lib/elasticsearch/api/actions/enrich/delete_policy.rb +1 -1
  81. data/lib/elasticsearch/api/actions/enrich/execute_policy.rb +1 -1
  82. data/lib/elasticsearch/api/actions/enrich/get_policy.rb +1 -1
  83. data/lib/elasticsearch/api/actions/enrich/put_policy.rb +1 -1
  84. data/lib/elasticsearch/api/actions/enrich/stats.rb +1 -1
  85. data/lib/elasticsearch/api/actions/eql/delete.rb +1 -1
  86. data/lib/elasticsearch/api/actions/eql/get.rb +1 -1
  87. data/lib/elasticsearch/api/actions/eql/get_status.rb +1 -1
  88. data/lib/elasticsearch/api/actions/eql/search.rb +1 -1
  89. data/lib/elasticsearch/api/actions/exists.rb +1 -1
  90. data/lib/elasticsearch/api/actions/exists_source.rb +1 -1
  91. data/lib/elasticsearch/api/actions/explain.rb +1 -1
  92. data/lib/elasticsearch/api/actions/features/get_features.rb +1 -1
  93. data/lib/elasticsearch/api/actions/features/reset_features.rb +1 -1
  94. data/lib/elasticsearch/api/actions/field_caps.rb +1 -1
  95. data/lib/elasticsearch/api/actions/fleet/global_checkpoints.rb +1 -1
  96. data/lib/elasticsearch/api/actions/get.rb +1 -1
  97. data/lib/elasticsearch/api/actions/get_script.rb +1 -1
  98. data/lib/elasticsearch/api/actions/get_script_context.rb +1 -1
  99. data/lib/elasticsearch/api/actions/get_script_languages.rb +1 -1
  100. data/lib/elasticsearch/api/actions/get_source.rb +1 -1
  101. data/lib/elasticsearch/api/actions/graph/explore.rb +1 -1
  102. data/lib/elasticsearch/api/actions/health_report.rb +1 -1
  103. data/lib/elasticsearch/api/actions/index.rb +1 -1
  104. data/lib/elasticsearch/api/actions/index_lifecycle_management/delete_lifecycle.rb +1 -1
  105. data/lib/elasticsearch/api/actions/index_lifecycle_management/explain_lifecycle.rb +1 -1
  106. data/lib/elasticsearch/api/actions/index_lifecycle_management/get_lifecycle.rb +1 -1
  107. data/lib/elasticsearch/api/actions/index_lifecycle_management/get_status.rb +1 -1
  108. data/lib/elasticsearch/api/actions/index_lifecycle_management/migrate_to_data_tiers.rb +1 -1
  109. data/lib/elasticsearch/api/actions/index_lifecycle_management/move_to_step.rb +1 -1
  110. data/lib/elasticsearch/api/actions/index_lifecycle_management/put_lifecycle.rb +1 -1
  111. data/lib/elasticsearch/api/actions/index_lifecycle_management/remove_policy.rb +1 -1
  112. data/lib/elasticsearch/api/actions/index_lifecycle_management/retry.rb +1 -1
  113. data/lib/elasticsearch/api/actions/index_lifecycle_management/start.rb +1 -1
  114. data/lib/elasticsearch/api/actions/index_lifecycle_management/stop.rb +1 -1
  115. data/lib/elasticsearch/api/actions/indices/add_block.rb +1 -1
  116. data/lib/elasticsearch/api/actions/indices/analyze.rb +1 -1
  117. data/lib/elasticsearch/api/actions/indices/clear_cache.rb +1 -1
  118. data/lib/elasticsearch/api/actions/indices/clone.rb +1 -1
  119. data/lib/elasticsearch/api/actions/indices/close.rb +1 -1
  120. data/lib/elasticsearch/api/actions/indices/create.rb +1 -1
  121. data/lib/elasticsearch/api/actions/indices/create_data_stream.rb +1 -1
  122. data/lib/elasticsearch/api/actions/indices/data_streams_stats.rb +1 -1
  123. data/lib/elasticsearch/api/actions/indices/delete.rb +1 -1
  124. data/lib/elasticsearch/api/actions/indices/delete_alias.rb +1 -1
  125. data/lib/elasticsearch/api/actions/indices/delete_data_lifecycle.rb +1 -1
  126. data/lib/elasticsearch/api/actions/indices/delete_data_stream.rb +1 -1
  127. data/lib/elasticsearch/api/actions/indices/delete_index_template.rb +1 -1
  128. data/lib/elasticsearch/api/actions/indices/delete_template.rb +1 -1
  129. data/lib/elasticsearch/api/actions/indices/disk_usage.rb +1 -1
  130. data/lib/elasticsearch/api/actions/indices/downsample.rb +1 -1
  131. data/lib/elasticsearch/api/actions/indices/exists.rb +1 -1
  132. data/lib/elasticsearch/api/actions/indices/exists_alias.rb +1 -1
  133. data/lib/elasticsearch/api/actions/indices/exists_index_template.rb +1 -1
  134. data/lib/elasticsearch/api/actions/indices/exists_template.rb +1 -1
  135. data/lib/elasticsearch/api/actions/indices/explain_data_lifecycle.rb +2 -2
  136. data/lib/elasticsearch/api/actions/indices/field_usage_stats.rb +1 -1
  137. data/lib/elasticsearch/api/actions/indices/flush.rb +1 -1
  138. data/lib/elasticsearch/api/actions/indices/forcemerge.rb +1 -1
  139. data/lib/elasticsearch/api/actions/indices/get.rb +1 -1
  140. data/lib/elasticsearch/api/actions/indices/get_alias.rb +1 -1
  141. data/lib/elasticsearch/api/actions/indices/get_data_lifecycle.rb +1 -1
  142. data/lib/elasticsearch/api/actions/indices/get_data_stream.rb +1 -1
  143. data/lib/elasticsearch/api/actions/indices/get_field_mapping.rb +1 -1
  144. data/lib/elasticsearch/api/actions/indices/get_index_template.rb +1 -1
  145. data/lib/elasticsearch/api/actions/indices/get_mapping.rb +1 -1
  146. data/lib/elasticsearch/api/actions/indices/get_settings.rb +1 -1
  147. data/lib/elasticsearch/api/actions/indices/get_template.rb +1 -1
  148. data/lib/elasticsearch/api/actions/indices/migrate_to_data_stream.rb +1 -1
  149. data/lib/elasticsearch/api/actions/indices/modify_data_stream.rb +1 -1
  150. data/lib/elasticsearch/api/actions/indices/open.rb +1 -1
  151. data/lib/elasticsearch/api/actions/indices/promote_data_stream.rb +1 -1
  152. data/lib/elasticsearch/api/actions/indices/put_alias.rb +1 -1
  153. data/lib/elasticsearch/api/actions/indices/put_data_lifecycle.rb +1 -1
  154. data/lib/elasticsearch/api/actions/indices/put_index_template.rb +1 -1
  155. data/lib/elasticsearch/api/actions/indices/put_mapping.rb +1 -1
  156. data/lib/elasticsearch/api/actions/indices/put_settings.rb +1 -1
  157. data/lib/elasticsearch/api/actions/indices/put_template.rb +1 -1
  158. data/lib/elasticsearch/api/actions/indices/recovery.rb +1 -1
  159. data/lib/elasticsearch/api/actions/indices/refresh.rb +1 -1
  160. data/lib/elasticsearch/api/actions/indices/reload_search_analyzers.rb +1 -1
  161. data/lib/elasticsearch/api/actions/indices/resolve_index.rb +1 -1
  162. data/lib/elasticsearch/api/actions/indices/rollover.rb +1 -1
  163. data/lib/elasticsearch/api/actions/indices/segments.rb +1 -1
  164. data/lib/elasticsearch/api/actions/indices/shard_stores.rb +1 -1
  165. data/lib/elasticsearch/api/actions/indices/shrink.rb +1 -1
  166. data/lib/elasticsearch/api/actions/indices/simulate_index_template.rb +1 -1
  167. data/lib/elasticsearch/api/actions/indices/simulate_template.rb +1 -1
  168. data/lib/elasticsearch/api/actions/indices/split.rb +1 -1
  169. data/lib/elasticsearch/api/actions/indices/stats.rb +1 -1
  170. data/lib/elasticsearch/api/actions/indices/unfreeze.rb +1 -1
  171. data/lib/elasticsearch/api/actions/indices/update_aliases.rb +1 -1
  172. data/lib/elasticsearch/api/actions/indices/validate_query.rb +1 -1
  173. data/lib/elasticsearch/api/actions/info.rb +1 -1
  174. data/lib/elasticsearch/api/actions/ingest/delete_pipeline.rb +1 -1
  175. data/lib/elasticsearch/api/actions/ingest/geo_ip_stats.rb +1 -1
  176. data/lib/elasticsearch/api/actions/ingest/get_pipeline.rb +1 -1
  177. data/lib/elasticsearch/api/actions/ingest/processor_grok.rb +1 -1
  178. data/lib/elasticsearch/api/actions/ingest/put_pipeline.rb +1 -1
  179. data/lib/elasticsearch/api/actions/ingest/simulate.rb +1 -1
  180. data/lib/elasticsearch/api/actions/knn_search.rb +1 -1
  181. data/lib/elasticsearch/api/actions/license/delete.rb +1 -1
  182. data/lib/elasticsearch/api/actions/license/get.rb +1 -1
  183. data/lib/elasticsearch/api/actions/license/get_basic_status.rb +1 -1
  184. data/lib/elasticsearch/api/actions/license/get_trial_status.rb +1 -1
  185. data/lib/elasticsearch/api/actions/license/post.rb +1 -1
  186. data/lib/elasticsearch/api/actions/license/post_start_basic.rb +1 -1
  187. data/lib/elasticsearch/api/actions/license/post_start_trial.rb +1 -1
  188. data/lib/elasticsearch/api/actions/logstash/delete_pipeline.rb +1 -1
  189. data/lib/elasticsearch/api/actions/logstash/get_pipeline.rb +1 -1
  190. data/lib/elasticsearch/api/actions/logstash/put_pipeline.rb +1 -1
  191. data/lib/elasticsearch/api/actions/machine_learning/clear_trained_model_deployment_cache.rb +1 -1
  192. data/lib/elasticsearch/api/actions/machine_learning/close_job.rb +1 -1
  193. data/lib/elasticsearch/api/actions/machine_learning/delete_calendar.rb +1 -1
  194. data/lib/elasticsearch/api/actions/machine_learning/delete_calendar_event.rb +1 -1
  195. data/lib/elasticsearch/api/actions/machine_learning/delete_calendar_job.rb +1 -1
  196. data/lib/elasticsearch/api/actions/machine_learning/delete_data_frame_analytics.rb +1 -1
  197. data/lib/elasticsearch/api/actions/machine_learning/delete_datafeed.rb +1 -1
  198. data/lib/elasticsearch/api/actions/machine_learning/delete_expired_data.rb +1 -1
  199. data/lib/elasticsearch/api/actions/machine_learning/delete_filter.rb +1 -1
  200. data/lib/elasticsearch/api/actions/machine_learning/delete_forecast.rb +1 -1
  201. data/lib/elasticsearch/api/actions/machine_learning/delete_job.rb +1 -1
  202. data/lib/elasticsearch/api/actions/machine_learning/delete_model_snapshot.rb +1 -1
  203. data/lib/elasticsearch/api/actions/machine_learning/delete_trained_model.rb +1 -1
  204. data/lib/elasticsearch/api/actions/machine_learning/delete_trained_model_alias.rb +1 -1
  205. data/lib/elasticsearch/api/actions/machine_learning/estimate_model_memory.rb +1 -1
  206. data/lib/elasticsearch/api/actions/machine_learning/evaluate_data_frame.rb +1 -1
  207. data/lib/elasticsearch/api/actions/machine_learning/explain_data_frame_analytics.rb +1 -1
  208. data/lib/elasticsearch/api/actions/machine_learning/flush_job.rb +1 -1
  209. data/lib/elasticsearch/api/actions/machine_learning/forecast.rb +1 -1
  210. data/lib/elasticsearch/api/actions/machine_learning/get_buckets.rb +1 -1
  211. data/lib/elasticsearch/api/actions/machine_learning/get_calendar_events.rb +1 -1
  212. data/lib/elasticsearch/api/actions/machine_learning/get_calendars.rb +1 -1
  213. data/lib/elasticsearch/api/actions/machine_learning/get_categories.rb +1 -1
  214. data/lib/elasticsearch/api/actions/machine_learning/get_data_frame_analytics.rb +1 -1
  215. data/lib/elasticsearch/api/actions/machine_learning/get_data_frame_analytics_stats.rb +1 -1
  216. data/lib/elasticsearch/api/actions/machine_learning/get_datafeed_stats.rb +1 -1
  217. data/lib/elasticsearch/api/actions/machine_learning/get_datafeeds.rb +1 -1
  218. data/lib/elasticsearch/api/actions/machine_learning/get_filters.rb +1 -1
  219. data/lib/elasticsearch/api/actions/machine_learning/get_influencers.rb +1 -1
  220. data/lib/elasticsearch/api/actions/machine_learning/get_job_stats.rb +1 -1
  221. data/lib/elasticsearch/api/actions/machine_learning/get_jobs.rb +1 -1
  222. data/lib/elasticsearch/api/actions/machine_learning/get_memory_stats.rb +1 -1
  223. data/lib/elasticsearch/api/actions/machine_learning/get_model_snapshot_upgrade_stats.rb +1 -1
  224. data/lib/elasticsearch/api/actions/machine_learning/get_model_snapshots.rb +1 -1
  225. data/lib/elasticsearch/api/actions/machine_learning/get_overall_buckets.rb +1 -1
  226. data/lib/elasticsearch/api/actions/machine_learning/get_records.rb +1 -1
  227. data/lib/elasticsearch/api/actions/machine_learning/get_trained_models.rb +1 -1
  228. data/lib/elasticsearch/api/actions/machine_learning/get_trained_models_stats.rb +1 -1
  229. data/lib/elasticsearch/api/actions/machine_learning/infer_trained_model.rb +1 -1
  230. data/lib/elasticsearch/api/actions/machine_learning/info.rb +1 -1
  231. data/lib/elasticsearch/api/actions/machine_learning/open_job.rb +1 -1
  232. data/lib/elasticsearch/api/actions/machine_learning/post_calendar_events.rb +1 -1
  233. data/lib/elasticsearch/api/actions/machine_learning/post_data.rb +1 -1
  234. data/lib/elasticsearch/api/actions/machine_learning/preview_data_frame_analytics.rb +1 -1
  235. data/lib/elasticsearch/api/actions/machine_learning/preview_datafeed.rb +1 -1
  236. data/lib/elasticsearch/api/actions/machine_learning/put_calendar.rb +1 -1
  237. data/lib/elasticsearch/api/actions/machine_learning/put_calendar_job.rb +1 -1
  238. data/lib/elasticsearch/api/actions/machine_learning/put_data_frame_analytics.rb +1 -1
  239. data/lib/elasticsearch/api/actions/machine_learning/put_datafeed.rb +1 -1
  240. data/lib/elasticsearch/api/actions/machine_learning/put_filter.rb +1 -1
  241. data/lib/elasticsearch/api/actions/machine_learning/put_job.rb +1 -1
  242. data/lib/elasticsearch/api/actions/machine_learning/put_trained_model.rb +1 -1
  243. data/lib/elasticsearch/api/actions/machine_learning/put_trained_model_alias.rb +1 -1
  244. data/lib/elasticsearch/api/actions/machine_learning/put_trained_model_definition_part.rb +1 -1
  245. data/lib/elasticsearch/api/actions/machine_learning/put_trained_model_vocabulary.rb +1 -1
  246. data/lib/elasticsearch/api/actions/machine_learning/reset_job.rb +1 -1
  247. data/lib/elasticsearch/api/actions/machine_learning/revert_model_snapshot.rb +1 -1
  248. data/lib/elasticsearch/api/actions/machine_learning/set_upgrade_mode.rb +1 -1
  249. data/lib/elasticsearch/api/actions/machine_learning/start_data_frame_analytics.rb +1 -1
  250. data/lib/elasticsearch/api/actions/machine_learning/start_datafeed.rb +1 -1
  251. data/lib/elasticsearch/api/actions/machine_learning/start_trained_model_deployment.rb +1 -1
  252. data/lib/elasticsearch/api/actions/machine_learning/stop_data_frame_analytics.rb +1 -1
  253. data/lib/elasticsearch/api/actions/machine_learning/stop_datafeed.rb +1 -1
  254. data/lib/elasticsearch/api/actions/machine_learning/stop_trained_model_deployment.rb +1 -1
  255. data/lib/elasticsearch/api/actions/machine_learning/update_data_frame_analytics.rb +1 -1
  256. data/lib/elasticsearch/api/actions/machine_learning/update_datafeed.rb +1 -1
  257. data/lib/elasticsearch/api/actions/machine_learning/update_filter.rb +1 -1
  258. data/lib/elasticsearch/api/actions/machine_learning/update_job.rb +1 -1
  259. data/lib/elasticsearch/api/actions/machine_learning/update_model_snapshot.rb +1 -1
  260. data/lib/elasticsearch/api/actions/machine_learning/update_trained_model_deployment.rb +1 -1
  261. data/lib/elasticsearch/api/actions/machine_learning/upgrade_job_snapshot.rb +1 -1
  262. data/lib/elasticsearch/api/actions/machine_learning/validate.rb +1 -1
  263. data/lib/elasticsearch/api/actions/machine_learning/validate_detector.rb +1 -1
  264. data/lib/elasticsearch/api/actions/mget.rb +1 -1
  265. data/lib/elasticsearch/api/actions/migration/deprecations.rb +1 -1
  266. data/lib/elasticsearch/api/actions/migration/get_feature_upgrade_status.rb +1 -1
  267. data/lib/elasticsearch/api/actions/migration/post_feature_upgrade.rb +1 -1
  268. data/lib/elasticsearch/api/actions/monitoring/bulk.rb +1 -1
  269. data/lib/elasticsearch/api/actions/msearch.rb +1 -1
  270. data/lib/elasticsearch/api/actions/msearch_template.rb +1 -1
  271. data/lib/elasticsearch/api/actions/mtermvectors.rb +1 -1
  272. data/lib/elasticsearch/api/actions/nodes/clear_repositories_metering_archive.rb +1 -1
  273. data/lib/elasticsearch/api/actions/nodes/get_repositories_metering_info.rb +1 -1
  274. data/lib/elasticsearch/api/actions/nodes/hot_threads.rb +1 -1
  275. data/lib/elasticsearch/api/actions/nodes/info.rb +1 -1
  276. data/lib/elasticsearch/api/actions/nodes/reload_secure_settings.rb +1 -1
  277. data/lib/elasticsearch/api/actions/nodes/stats.rb +1 -1
  278. data/lib/elasticsearch/api/actions/nodes/usage.rb +1 -1
  279. data/lib/elasticsearch/api/actions/open_point_in_time.rb +1 -1
  280. data/lib/elasticsearch/api/actions/ping.rb +1 -1
  281. data/lib/elasticsearch/api/actions/put_script.rb +1 -1
  282. data/lib/elasticsearch/api/actions/query_ruleset/delete.rb +57 -0
  283. data/lib/elasticsearch/api/actions/query_ruleset/get.rb +57 -0
  284. data/lib/elasticsearch/api/actions/query_ruleset/put.rb +59 -0
  285. data/lib/elasticsearch/api/actions/rank_eval.rb +1 -1
  286. data/lib/elasticsearch/api/actions/reindex.rb +1 -1
  287. data/lib/elasticsearch/api/actions/reindex_rethrottle.rb +1 -1
  288. data/lib/elasticsearch/api/actions/render_search_template.rb +1 -1
  289. data/lib/elasticsearch/api/actions/rollup/delete_job.rb +1 -1
  290. data/lib/elasticsearch/api/actions/rollup/get_jobs.rb +1 -1
  291. data/lib/elasticsearch/api/actions/rollup/get_rollup_caps.rb +1 -1
  292. data/lib/elasticsearch/api/actions/rollup/get_rollup_index_caps.rb +1 -1
  293. data/lib/elasticsearch/api/actions/rollup/put_job.rb +1 -1
  294. data/lib/elasticsearch/api/actions/rollup/rollup_search.rb +1 -1
  295. data/lib/elasticsearch/api/actions/rollup/start_job.rb +1 -1
  296. data/lib/elasticsearch/api/actions/rollup/stop_job.rb +1 -1
  297. data/lib/elasticsearch/api/actions/scripts_painless_execute.rb +1 -1
  298. data/lib/elasticsearch/api/actions/scroll.rb +1 -1
  299. data/lib/elasticsearch/api/actions/search.rb +1 -1
  300. data/lib/elasticsearch/api/actions/search_application/delete.rb +1 -1
  301. data/lib/elasticsearch/api/actions/search_application/delete_behavioral_analytics.rb +1 -1
  302. data/lib/elasticsearch/api/actions/search_application/get.rb +1 -1
  303. data/lib/elasticsearch/api/actions/search_application/get_behavioral_analytics.rb +1 -1
  304. data/lib/elasticsearch/api/actions/search_application/list.rb +1 -1
  305. data/lib/elasticsearch/api/actions/search_application/put.rb +1 -1
  306. data/lib/elasticsearch/api/actions/search_application/put_behavioral_analytics.rb +1 -1
  307. data/lib/elasticsearch/api/actions/search_application/render_query.rb +58 -0
  308. data/lib/elasticsearch/api/actions/search_application/search.rb +1 -1
  309. data/lib/elasticsearch/api/actions/search_mvt.rb +1 -1
  310. data/lib/elasticsearch/api/actions/search_shards.rb +1 -1
  311. data/lib/elasticsearch/api/actions/search_template.rb +1 -1
  312. data/lib/elasticsearch/api/actions/searchable_snapshots/cache_stats.rb +1 -1
  313. data/lib/elasticsearch/api/actions/searchable_snapshots/clear_cache.rb +1 -1
  314. data/lib/elasticsearch/api/actions/searchable_snapshots/mount.rb +1 -1
  315. data/lib/elasticsearch/api/actions/searchable_snapshots/stats.rb +1 -1
  316. data/lib/elasticsearch/api/actions/security/activate_user_profile.rb +1 -1
  317. data/lib/elasticsearch/api/actions/security/authenticate.rb +1 -1
  318. data/lib/elasticsearch/api/actions/security/bulk_update_api_keys.rb +1 -1
  319. data/lib/elasticsearch/api/actions/security/change_password.rb +1 -1
  320. data/lib/elasticsearch/api/actions/security/clear_api_key_cache.rb +1 -1
  321. data/lib/elasticsearch/api/actions/security/clear_cached_privileges.rb +1 -1
  322. data/lib/elasticsearch/api/actions/security/clear_cached_realms.rb +1 -1
  323. data/lib/elasticsearch/api/actions/security/clear_cached_roles.rb +1 -1
  324. data/lib/elasticsearch/api/actions/security/clear_cached_service_tokens.rb +1 -1
  325. data/lib/elasticsearch/api/actions/security/create_api_key.rb +1 -1
  326. data/lib/elasticsearch/api/actions/security/create_cross_cluster_api_key.rb +55 -0
  327. data/lib/elasticsearch/api/actions/security/create_service_token.rb +1 -1
  328. data/lib/elasticsearch/api/actions/security/delete_privileges.rb +1 -1
  329. data/lib/elasticsearch/api/actions/security/delete_role.rb +1 -1
  330. data/lib/elasticsearch/api/actions/security/delete_role_mapping.rb +1 -1
  331. data/lib/elasticsearch/api/actions/security/delete_service_token.rb +1 -1
  332. data/lib/elasticsearch/api/actions/security/delete_user.rb +1 -1
  333. data/lib/elasticsearch/api/actions/security/disable_user.rb +1 -1
  334. data/lib/elasticsearch/api/actions/security/disable_user_profile.rb +1 -1
  335. data/lib/elasticsearch/api/actions/security/enable_user.rb +1 -1
  336. data/lib/elasticsearch/api/actions/security/enable_user_profile.rb +1 -1
  337. data/lib/elasticsearch/api/actions/security/enroll_kibana.rb +1 -1
  338. data/lib/elasticsearch/api/actions/security/enroll_node.rb +1 -1
  339. data/lib/elasticsearch/api/actions/security/get_api_key.rb +1 -1
  340. data/lib/elasticsearch/api/actions/security/get_builtin_privileges.rb +1 -1
  341. data/lib/elasticsearch/api/actions/security/get_privileges.rb +1 -1
  342. data/lib/elasticsearch/api/actions/security/get_role.rb +1 -1
  343. data/lib/elasticsearch/api/actions/security/get_role_mapping.rb +1 -1
  344. data/lib/elasticsearch/api/actions/security/get_service_accounts.rb +1 -1
  345. data/lib/elasticsearch/api/actions/security/get_service_credentials.rb +1 -1
  346. data/lib/elasticsearch/api/actions/security/get_token.rb +1 -1
  347. data/lib/elasticsearch/api/actions/security/get_user.rb +1 -1
  348. data/lib/elasticsearch/api/actions/security/get_user_privileges.rb +1 -1
  349. data/lib/elasticsearch/api/actions/security/get_user_profile.rb +1 -1
  350. data/lib/elasticsearch/api/actions/security/grant_api_key.rb +1 -1
  351. data/lib/elasticsearch/api/actions/security/has_privileges.rb +1 -1
  352. data/lib/elasticsearch/api/actions/security/has_privileges_user_profile.rb +1 -1
  353. data/lib/elasticsearch/api/actions/security/invalidate_api_key.rb +1 -1
  354. data/lib/elasticsearch/api/actions/security/invalidate_token.rb +1 -1
  355. data/lib/elasticsearch/api/actions/security/oidc_authenticate.rb +1 -1
  356. data/lib/elasticsearch/api/actions/security/oidc_logout.rb +1 -1
  357. data/lib/elasticsearch/api/actions/security/oidc_prepare_authentication.rb +1 -1
  358. data/lib/elasticsearch/api/actions/security/put_privileges.rb +1 -1
  359. data/lib/elasticsearch/api/actions/security/put_role.rb +1 -1
  360. data/lib/elasticsearch/api/actions/security/put_role_mapping.rb +1 -1
  361. data/lib/elasticsearch/api/actions/security/put_user.rb +1 -1
  362. data/lib/elasticsearch/api/actions/security/query_api_keys.rb +1 -1
  363. data/lib/elasticsearch/api/actions/security/saml_authenticate.rb +1 -1
  364. data/lib/elasticsearch/api/actions/security/saml_complete_logout.rb +1 -1
  365. data/lib/elasticsearch/api/actions/security/saml_invalidate.rb +1 -1
  366. data/lib/elasticsearch/api/actions/security/saml_logout.rb +1 -1
  367. data/lib/elasticsearch/api/actions/security/saml_prepare_authentication.rb +1 -1
  368. data/lib/elasticsearch/api/actions/security/saml_service_provider_metadata.rb +1 -1
  369. data/lib/elasticsearch/api/actions/security/suggest_user_profiles.rb +1 -1
  370. data/lib/elasticsearch/api/actions/security/update_api_key.rb +1 -1
  371. data/lib/elasticsearch/api/actions/security/update_cross_cluster_api_key.rb +59 -0
  372. data/lib/elasticsearch/api/actions/security/update_user_profile_data.rb +1 -1
  373. data/lib/elasticsearch/api/actions/snapshot/cleanup_repository.rb +1 -1
  374. data/lib/elasticsearch/api/actions/snapshot/clone.rb +1 -1
  375. data/lib/elasticsearch/api/actions/snapshot/create.rb +1 -1
  376. data/lib/elasticsearch/api/actions/snapshot/create_repository.rb +1 -1
  377. data/lib/elasticsearch/api/actions/snapshot/delete.rb +1 -1
  378. data/lib/elasticsearch/api/actions/snapshot/delete_repository.rb +1 -1
  379. data/lib/elasticsearch/api/actions/snapshot/get.rb +1 -1
  380. data/lib/elasticsearch/api/actions/snapshot/get_repository.rb +1 -1
  381. data/lib/elasticsearch/api/actions/snapshot/repository_analyze.rb +1 -1
  382. data/lib/elasticsearch/api/actions/snapshot/restore.rb +1 -1
  383. data/lib/elasticsearch/api/actions/snapshot/status.rb +1 -1
  384. data/lib/elasticsearch/api/actions/snapshot/verify_repository.rb +1 -1
  385. data/lib/elasticsearch/api/actions/snapshot_lifecycle_management/delete_lifecycle.rb +1 -1
  386. data/lib/elasticsearch/api/actions/snapshot_lifecycle_management/execute_lifecycle.rb +1 -1
  387. data/lib/elasticsearch/api/actions/snapshot_lifecycle_management/execute_retention.rb +1 -1
  388. data/lib/elasticsearch/api/actions/snapshot_lifecycle_management/get_lifecycle.rb +1 -1
  389. data/lib/elasticsearch/api/actions/snapshot_lifecycle_management/get_stats.rb +1 -1
  390. data/lib/elasticsearch/api/actions/snapshot_lifecycle_management/get_status.rb +1 -1
  391. data/lib/elasticsearch/api/actions/snapshot_lifecycle_management/put_lifecycle.rb +1 -1
  392. data/lib/elasticsearch/api/actions/snapshot_lifecycle_management/start.rb +1 -1
  393. data/lib/elasticsearch/api/actions/snapshot_lifecycle_management/stop.rb +1 -1
  394. data/lib/elasticsearch/api/actions/sql/clear_cursor.rb +1 -1
  395. data/lib/elasticsearch/api/actions/sql/delete_async.rb +1 -1
  396. data/lib/elasticsearch/api/actions/sql/get_async.rb +1 -1
  397. data/lib/elasticsearch/api/actions/sql/get_async_status.rb +1 -1
  398. data/lib/elasticsearch/api/actions/sql/query.rb +1 -1
  399. data/lib/elasticsearch/api/actions/sql/translate.rb +1 -1
  400. data/lib/elasticsearch/api/actions/ssl/certificates.rb +1 -1
  401. data/lib/elasticsearch/api/actions/synonym_rule/put.rb +63 -0
  402. data/lib/elasticsearch/api/actions/synonyms/delete.rb +57 -0
  403. data/lib/elasticsearch/api/actions/synonyms/get.rb +59 -0
  404. data/lib/elasticsearch/api/actions/synonyms/put.rb +59 -0
  405. data/lib/elasticsearch/api/actions/synonyms_sets/get.rb +54 -0
  406. data/lib/elasticsearch/api/actions/tasks/cancel.rb +1 -1
  407. data/lib/elasticsearch/api/actions/tasks/get.rb +1 -1
  408. data/lib/elasticsearch/api/actions/tasks/list.rb +1 -1
  409. data/lib/elasticsearch/api/actions/terms_enum.rb +1 -1
  410. data/lib/elasticsearch/api/actions/termvectors.rb +1 -1
  411. data/lib/elasticsearch/api/actions/text_structure/find_structure.rb +1 -1
  412. data/lib/elasticsearch/api/actions/transform/delete_transform.rb +1 -1
  413. data/lib/elasticsearch/api/actions/transform/get_transform.rb +1 -1
  414. data/lib/elasticsearch/api/actions/transform/get_transform_stats.rb +1 -1
  415. data/lib/elasticsearch/api/actions/transform/preview_transform.rb +1 -1
  416. data/lib/elasticsearch/api/actions/transform/put_transform.rb +1 -1
  417. data/lib/elasticsearch/api/actions/transform/reset_transform.rb +1 -1
  418. data/lib/elasticsearch/api/actions/transform/schedule_now_transform.rb +1 -1
  419. data/lib/elasticsearch/api/actions/transform/start_transform.rb +1 -1
  420. data/lib/elasticsearch/api/actions/transform/stop_transform.rb +1 -1
  421. data/lib/elasticsearch/api/actions/transform/update_transform.rb +1 -1
  422. data/lib/elasticsearch/api/actions/transform/upgrade_transforms.rb +1 -1
  423. data/lib/elasticsearch/api/actions/update.rb +1 -1
  424. data/lib/elasticsearch/api/actions/update_by_query.rb +1 -1
  425. data/lib/elasticsearch/api/actions/update_by_query_rethrottle.rb +1 -1
  426. data/lib/elasticsearch/api/actions/watcher/ack_watch.rb +1 -1
  427. data/lib/elasticsearch/api/actions/watcher/activate_watch.rb +1 -1
  428. data/lib/elasticsearch/api/actions/watcher/deactivate_watch.rb +1 -1
  429. data/lib/elasticsearch/api/actions/watcher/delete_watch.rb +1 -1
  430. data/lib/elasticsearch/api/actions/watcher/execute_watch.rb +1 -1
  431. data/lib/elasticsearch/api/actions/watcher/get_settings.rb +1 -1
  432. data/lib/elasticsearch/api/actions/watcher/get_watch.rb +1 -1
  433. data/lib/elasticsearch/api/actions/watcher/put_watch.rb +1 -1
  434. data/lib/elasticsearch/api/actions/watcher/query_watches.rb +1 -1
  435. data/lib/elasticsearch/api/actions/watcher/start.rb +1 -1
  436. data/lib/elasticsearch/api/actions/watcher/stats.rb +1 -1
  437. data/lib/elasticsearch/api/actions/watcher/stop.rb +1 -1
  438. data/lib/elasticsearch/api/actions/watcher/update_settings.rb +1 -1
  439. data/lib/elasticsearch/api/actions/xpack/info.rb +1 -1
  440. data/lib/elasticsearch/api/actions/xpack/usage.rb +1 -1
  441. data/lib/elasticsearch/api/namespace/query_ruleset.rb +36 -0
  442. data/lib/elasticsearch/api/namespace/synonym_rule.rb +36 -0
  443. data/lib/elasticsearch/api/namespace/synonyms.rb +36 -0
  444. data/lib/elasticsearch/api/namespace/synonyms_sets.rb +36 -0
  445. data/lib/elasticsearch/api/version.rb +1 -1
  446. data/lib/elasticsearch/api.rb +5 -1
  447. data/spec/elasticsearch/api/actions/cluster/info_spec.rb +35 -0
  448. data/spec/elasticsearch/api/actions/query_ruleset/delete_spec.rb +35 -0
  449. data/spec/elasticsearch/api/actions/query_ruleset/get_spec.rb +35 -0
  450. data/spec/elasticsearch/api/actions/query_ruleset/put_spec.rb +35 -0
  451. data/spec/elasticsearch/api/actions/search_application/render_query_spec.rb +34 -0
  452. data/spec/elasticsearch/api/actions/security/create_cross_cluster_api_key_spec.rb +35 -0
  453. data/spec/elasticsearch/api/actions/security/update_cross_cluster_api_key_spec.rb +35 -0
  454. data/spec/elasticsearch/api/actions/synonym_rule/put_spec.rb +34 -0
  455. data/spec/elasticsearch/api/actions/synonyms/update_spec.rb +34 -0
  456. data/spec/elasticsearch/api/actions/synonyms_sets/get_spec.rb +34 -0
  457. data/spec/platinum/integration/api_key/api_key_cross_cluster_spec.rb +129 -0
  458. data/spec/platinum/integration/api_key/api_key_invalidation_spec.rb +107 -0
  459. data/spec/platinum/integration/api_key/api_key_query_spec.rb +149 -0
  460. data/spec/platinum/integration/api_key/api_key_spec.rb +157 -0
  461. data/spec/platinum/integration/api_key/api_key_update_spec.rb +134 -0
  462. data/spec/platinum/integration/health/health_spec.rb +49 -0
  463. data/spec/platinum/integration/ml/get_memory_stats_spec.rb +47 -0
  464. data/spec/platinum/integration/platinum_helper.rb +36 -0
  465. data/spec/platinum/integration/service_accounts/service_accounts_spec.rb +65 -0
  466. data/spec/platinum/integration/snapshots/snapshots_spec.rb +84 -0
  467. data/spec/platinum/integration/token/token_spec.rb +94 -0
  468. data/spec/{rest_api_tests_helper.rb → rest_api/rest_api_tests_helper.rb} +15 -8
  469. data/spec/{elasticsearch/api → rest_api}/rest_api_yaml_spec.rb +1 -1
  470. data/spec/rest_api/skipped_tests_platinum.yml +95 -0
  471. metadata +330 -272
  472. data/spec/skipped_tests_platinum.yml +0 -54
  473. /data/spec/{unit_tests_platinum → platinum}/unit/async_search/delete_test.rb +0 -0
  474. /data/spec/{unit_tests_platinum → platinum}/unit/async_search/get_test.rb +0 -0
  475. /data/spec/{unit_tests_platinum → platinum}/unit/async_search/status_test.rb +0 -0
  476. /data/spec/{unit_tests_platinum → platinum}/unit/async_search/submit_test.rb +0 -0
  477. /data/spec/{unit_tests_platinum → platinum}/unit/autoscaling/delete_autoscaling_policy_test.rb +0 -0
  478. /data/spec/{unit_tests_platinum → platinum}/unit/autoscaling/get_autoscaling_capacity_test.rb +0 -0
  479. /data/spec/{unit_tests_platinum → platinum}/unit/autoscaling/get_autoscaling_policy_test.rb +0 -0
  480. /data/spec/{unit_tests_platinum → platinum}/unit/autoscaling/put_autoscaling_policy_test.rb +0 -0
  481. /data/spec/{unit_tests_platinum → platinum}/unit/enrich/delete_policy_test.rb +0 -0
  482. /data/spec/{unit_tests_platinum → platinum}/unit/eql/delete_test.rb +0 -0
  483. /data/spec/{unit_tests_platinum → platinum}/unit/eql/get_status_test.rb +0 -0
  484. /data/spec/{unit_tests_platinum → platinum}/unit/eql/get_test.rb +0 -0
  485. /data/spec/{unit_tests_platinum → platinum}/unit/eql/search_test.rb +0 -0
  486. /data/spec/{unit_tests_platinum → platinum}/unit/graph/explore_test.rb +0 -0
  487. /data/spec/{unit_tests_platinum → platinum}/unit/index_lifecycle_management/explain_test.rb +0 -0
  488. /data/spec/{unit_tests_platinum → platinum}/unit/index_lifecycle_management/get_status_test.rb +0 -0
  489. /data/spec/{unit_tests_platinum → platinum}/unit/index_lifecycle_management/move_to_step.rb +0 -0
  490. /data/spec/{unit_tests_platinum → platinum}/unit/index_lifecycle_management/remove_policy_test.rb +0 -0
  491. /data/spec/{unit_tests_platinum → platinum}/unit/index_lifecycle_management/retry_policy_test.rb +0 -0
  492. /data/spec/{unit_tests_platinum → platinum}/unit/index_lifecycle_management/start_test.rb +0 -0
  493. /data/spec/{unit_tests_platinum → platinum}/unit/index_lifecycle_management/stop_test.rb +0 -0
  494. /data/spec/{unit_tests_platinum → platinum}/unit/indices/create_data_stream_test.rb +0 -0
  495. /data/spec/{unit_tests_platinum → platinum}/unit/indices/data_stream_stats_test.rb +0 -0
  496. /data/spec/{unit_tests_platinum → platinum}/unit/indices/delete_data_stream_test.rb +0 -0
  497. /data/spec/{unit_tests_platinum → platinum}/unit/indices/downsample_test.rb +0 -0
  498. /data/spec/{unit_tests_platinum → platinum}/unit/indices/get_data_stream_test.rb +0 -0
  499. /data/spec/{unit_tests_platinum → platinum}/unit/indices/migrate_to_data_stream_test.rb +0 -0
  500. /data/spec/{unit_tests_platinum → platinum}/unit/indices/modify_data_stream_test.rb +0 -0
  501. /data/spec/{unit_tests_platinum → platinum}/unit/indices/promote_data_stream_test.rb +0 -0
  502. /data/spec/{unit_tests_platinum → platinum}/unit/info_test.rb +0 -0
  503. /data/spec/{unit_tests_platinum → platinum}/unit/knn_search_test.rb +0 -0
  504. /data/spec/{unit_tests_platinum → platinum}/unit/license/delete_test.rb +0 -0
  505. /data/spec/{unit_tests_platinum → platinum}/unit/license/get_test.rb +0 -0
  506. /data/spec/{unit_tests_platinum → platinum}/unit/license/post_test.rb +0 -0
  507. /data/spec/{unit_tests_platinum → platinum}/unit/logstash/delete_pipeline_test.rb +0 -0
  508. /data/spec/{unit_tests_platinum → platinum}/unit/logstash/get_pipeline_test.rb +0 -0
  509. /data/spec/{unit_tests_platinum → platinum}/unit/logstash/put_pipeline_test.rb +0 -0
  510. /data/spec/{unit_tests_platinum → platinum}/unit/machine_learning/clear_trained_model_deployment_cache_test.rb +0 -0
  511. /data/spec/{unit_tests_platinum → platinum}/unit/machine_learning/close_job_test.rb +0 -0
  512. /data/spec/{unit_tests_platinum → platinum}/unit/machine_learning/delete_datafeed_test.rb +0 -0
  513. /data/spec/{unit_tests_platinum → platinum}/unit/machine_learning/delete_expired_data_test.rb +0 -0
  514. /data/spec/{unit_tests_platinum → platinum}/unit/machine_learning/delete_filter_test.rb +0 -0
  515. /data/spec/{unit_tests_platinum → platinum}/unit/machine_learning/delete_forecast_test.rb +0 -0
  516. /data/spec/{unit_tests_platinum → platinum}/unit/machine_learning/delete_job_test.rb +0 -0
  517. /data/spec/{unit_tests_platinum → platinum}/unit/machine_learning/delete_model_alias_test.rb +0 -0
  518. /data/spec/{unit_tests_platinum → platinum}/unit/machine_learning/delete_model_snapshot_test.rb +0 -0
  519. /data/spec/{unit_tests_platinum → platinum}/unit/machine_learning/flush_job_test.rb +0 -0
  520. /data/spec/{unit_tests_platinum → platinum}/unit/machine_learning/forecast_test.rb +0 -0
  521. /data/spec/{unit_tests_platinum → platinum}/unit/machine_learning/get_buckets_test.rb +0 -0
  522. /data/spec/{unit_tests_platinum → platinum}/unit/machine_learning/get_categories_test.rb +0 -0
  523. /data/spec/{unit_tests_platinum → platinum}/unit/machine_learning/get_datafeed_stats_test.rb +0 -0
  524. /data/spec/{unit_tests_platinum → platinum}/unit/machine_learning/get_datafeeds_test.rb +0 -0
  525. /data/spec/{unit_tests_platinum → platinum}/unit/machine_learning/get_filters_test.rb +0 -0
  526. /data/spec/{unit_tests_platinum → platinum}/unit/machine_learning/get_influencers_test.rb +0 -0
  527. /data/spec/{unit_tests_platinum → platinum}/unit/machine_learning/get_job_stats_test.rb +0 -0
  528. /data/spec/{unit_tests_platinum → platinum}/unit/machine_learning/get_jobs_test.rb +0 -0
  529. /data/spec/{unit_tests_platinum → platinum}/unit/machine_learning/get_model_snapshots_test.rb +0 -0
  530. /data/spec/{unit_tests_platinum → platinum}/unit/machine_learning/get_overall_buckets_test.rb +0 -0
  531. /data/spec/{unit_tests_platinum → platinum}/unit/machine_learning/get_records_test.rb +0 -0
  532. /data/spec/{unit_tests_platinum → platinum}/unit/machine_learning/open_job_test.rb +0 -0
  533. /data/spec/{unit_tests_platinum → platinum}/unit/machine_learning/post_data_test.rb +0 -0
  534. /data/spec/{unit_tests_platinum → platinum}/unit/machine_learning/preview_data_frame_analytics_test.rb +0 -0
  535. /data/spec/{unit_tests_platinum → platinum}/unit/machine_learning/preview_datafeed_test.rb +0 -0
  536. /data/spec/{unit_tests_platinum → platinum}/unit/machine_learning/put_datafeed_test.rb +0 -0
  537. /data/spec/{unit_tests_platinum → platinum}/unit/machine_learning/put_filter_test.rb +0 -0
  538. /data/spec/{unit_tests_platinum → platinum}/unit/machine_learning/put_job_test.rb +0 -0
  539. /data/spec/{unit_tests_platinum → platinum}/unit/machine_learning/put_trained_model_alias_test.rb +0 -0
  540. /data/spec/{unit_tests_platinum → platinum}/unit/machine_learning/revert_model_snapshot_test.rb +0 -0
  541. /data/spec/{unit_tests_platinum → platinum}/unit/machine_learning/start_datafeed_test.rb +0 -0
  542. /data/spec/{unit_tests_platinum → platinum}/unit/machine_learning/stop_datafeed_test.rb +0 -0
  543. /data/spec/{unit_tests_platinum → platinum}/unit/machine_learning/update_data_frame_analytics_test.rb +0 -0
  544. /data/spec/{unit_tests_platinum → platinum}/unit/machine_learning/update_datafeed_test.rb +0 -0
  545. /data/spec/{unit_tests_platinum → platinum}/unit/machine_learning/update_filter_test.rb +0 -0
  546. /data/spec/{unit_tests_platinum → platinum}/unit/machine_learning/update_job_test.rb +0 -0
  547. /data/spec/{unit_tests_platinum → platinum}/unit/machine_learning/update_model_snapshot_test.rb +0 -0
  548. /data/spec/{unit_tests_platinum → platinum}/unit/machine_learning/upgrade_job_snapshot_test.rb +0 -0
  549. /data/spec/{unit_tests_platinum → platinum}/unit/machine_learning/validate_detector_test.rb +0 -0
  550. /data/spec/{unit_tests_platinum → platinum}/unit/machine_learning/validate_test.rb +0 -0
  551. /data/spec/{unit_tests_platinum → platinum}/unit/migration/deprecations_test.rb +0 -0
  552. /data/spec/{unit_tests_platinum → platinum}/unit/monitoring/bulk_test.rb +0 -0
  553. /data/spec/{unit_tests_platinum → platinum}/unit/rollup/get_rollup_index_caps_test.rb +0 -0
  554. /data/spec/{unit_tests_platinum → platinum}/unit/security/activate_user_profile_test.rb +0 -0
  555. /data/spec/{unit_tests_platinum → platinum}/unit/security/authenticate_test.rb +0 -0
  556. /data/spec/{unit_tests_platinum → platinum}/unit/security/bulk_update_api_key_test.rb +0 -0
  557. /data/spec/{unit_tests_platinum → platinum}/unit/security/change_password_test.rb +0 -0
  558. /data/spec/{unit_tests_platinum → platinum}/unit/security/clear_api_key_cache_test.rb +0 -0
  559. /data/spec/{unit_tests_platinum → platinum}/unit/security/clear_cached_privileges_test.rb +0 -0
  560. /data/spec/{unit_tests_platinum → platinum}/unit/security/clear_cached_realms_test.rb +0 -0
  561. /data/spec/{unit_tests_platinum → platinum}/unit/security/clear_cached_roles_test.rb +0 -0
  562. /data/spec/{unit_tests_platinum → platinum}/unit/security/delete_privileges_test.rb +0 -0
  563. /data/spec/{unit_tests_platinum → platinum}/unit/security/delete_role_mapping_test.rb +0 -0
  564. /data/spec/{unit_tests_platinum → platinum}/unit/security/delete_role_test.rb +0 -0
  565. /data/spec/{unit_tests_platinum → platinum}/unit/security/delete_user_test.rb +0 -0
  566. /data/spec/{unit_tests_platinum → platinum}/unit/security/disable_user_test.rb +0 -0
  567. /data/spec/{unit_tests_platinum → platinum}/unit/security/enable_user_test.rb +0 -0
  568. /data/spec/{unit_tests_platinum → platinum}/unit/security/get_privileges_test.rb +0 -0
  569. /data/spec/{unit_tests_platinum → platinum}/unit/security/get_role_mapping_test.rb +0 -0
  570. /data/spec/{unit_tests_platinum → platinum}/unit/security/get_role_test.rb +0 -0
  571. /data/spec/{unit_tests_platinum → platinum}/unit/security/get_token_test.rb +0 -0
  572. /data/spec/{unit_tests_platinum → platinum}/unit/security/get_user_privileges_test.rb +0 -0
  573. /data/spec/{unit_tests_platinum → platinum}/unit/security/get_user_profile_test.rb +0 -0
  574. /data/spec/{unit_tests_platinum → platinum}/unit/security/get_user_test.rb +0 -0
  575. /data/spec/{unit_tests_platinum → platinum}/unit/security/grant_api_key_test.rb +0 -0
  576. /data/spec/{unit_tests_platinum → platinum}/unit/security/has_privileges_test.rb +0 -0
  577. /data/spec/{unit_tests_platinum → platinum}/unit/security/invalidate_token_test.rb +0 -0
  578. /data/spec/{unit_tests_platinum → platinum}/unit/security/oidc_authenticate_test.rb +0 -0
  579. /data/spec/{unit_tests_platinum → platinum}/unit/security/oidc_logout_test.rb +0 -0
  580. /data/spec/{unit_tests_platinum → platinum}/unit/security/oidc_prepare_authentication_test.rb +0 -0
  581. /data/spec/{unit_tests_platinum → platinum}/unit/security/put_privileges_test.rb +0 -0
  582. /data/spec/{unit_tests_platinum → platinum}/unit/security/put_role_mapping_test.rb +0 -0
  583. /data/spec/{unit_tests_platinum → platinum}/unit/security/put_role_test.rb +0 -0
  584. /data/spec/{unit_tests_platinum → platinum}/unit/security/put_user_test.rb +0 -0
  585. /data/spec/{unit_tests_platinum → platinum}/unit/security/update_user_profile_data_test.rb +0 -0
  586. /data/spec/{unit_tests_platinum → platinum}/unit/ssl/certificates_test.rb +0 -0
  587. /data/spec/{unit_tests_platinum → platinum/unit}/test_helper.rb +0 -0
  588. /data/spec/{unit_tests_platinum → platinum}/unit/text_structure/find_structure_test.rb +0 -0
  589. /data/spec/{unit_tests_platinum → platinum}/unit/transform/reset_transform_spec.rb +0 -0
  590. /data/spec/{unit_tests_platinum → platinum}/unit/transform/upgrade_transforms_spec.rb +0 -0
  591. /data/spec/{unit_tests_platinum → platinum}/unit/usage_test.rb +0 -0
  592. /data/spec/{unit_tests_platinum → platinum}/unit/watcher/ack_watch_test.rb +0 -0
  593. /data/spec/{unit_tests_platinum → platinum}/unit/watcher/activate_watch_test.rb +0 -0
  594. /data/spec/{unit_tests_platinum → platinum}/unit/watcher/deactivate_watch_test.rb +0 -0
  595. /data/spec/{unit_tests_platinum → platinum}/unit/watcher/delete_watch_test.rb +0 -0
  596. /data/spec/{unit_tests_platinum → platinum}/unit/watcher/execute_watch_test.rb +0 -0
  597. /data/spec/{unit_tests_platinum → platinum}/unit/watcher/get_watch_test.rb +0 -0
  598. /data/spec/{unit_tests_platinum → platinum}/unit/watcher/put_watch_test.rb +0 -0
  599. /data/spec/{unit_tests_platinum → platinum}/unit/watcher/query_watches_test.rb +0 -0
  600. /data/spec/{unit_tests_platinum → platinum}/unit/watcher/start_test.rb +0 -0
  601. /data/spec/{unit_tests_platinum → platinum}/unit/watcher/stats_test.rb +0 -0
  602. /data/spec/{unit_tests_platinum → platinum}/unit/watcher/stop_test.rb +0 -0
  603. /data/spec/{elasticsearch/api → rest_api}/run_rspec_matchers.rb +0 -0
  604. /data/spec/{skipped_tests_free.yml → rest_api/skipped_tests_free.yml} +0 -0
@@ -0,0 +1,149 @@
1
+ # Licensed to Elasticsearch B.V. under one or more contributor
2
+ # license agreements. See the NOTICE file distributed with
3
+ # this work for additional information regarding copyright
4
+ # ownership. Elasticsearch B.V. licenses this file to you under
5
+ # the Apache License, Version 2.0 (the "License"); you may
6
+ # not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
17
+
18
+ require_relative '../platinum_helper'
19
+
20
+ describe 'API keys' do
21
+ before do
22
+ ADMIN_CLIENT.security.put_role(
23
+ name: 'admin_role',
24
+ body: { cluster: ['manage_api_key'] }
25
+ )
26
+ ADMIN_CLIENT.security.put_role(
27
+ name: 'user_role',
28
+ body: {
29
+ cluster: ['manage_own_api_key'],
30
+ }
31
+ )
32
+ ADMIN_CLIENT.security.put_user(
33
+ username: 'api_key_manager',
34
+ body: {
35
+ password: 'x-pack-test-password',
36
+ roles: [ 'admin_role' ],
37
+ full_name: 'API key manager'
38
+ }
39
+ )
40
+ ADMIN_CLIENT.security.put_user(
41
+ username: 'api_key_user_1',
42
+ body: {
43
+ password: 'x-pack-test-password',
44
+ roles: [ 'user_role' ],
45
+ full_name: 'API key user 1'
46
+ }
47
+ )
48
+ ADMIN_CLIENT.security.put_user(
49
+ username: 'api_key_user_2',
50
+ body: {
51
+ password: 'x-pack-test-password',
52
+ roles: [ 'user_role' ],
53
+ full_name: 'API key user 2'
54
+ }
55
+ )
56
+ end
57
+
58
+ after do
59
+ ADMIN_CLIENT.security.delete_role(name: "admin_role", ignore: 404)
60
+ ADMIN_CLIENT.security.delete_role(name: "user_role", ignore: 404)
61
+ ADMIN_CLIENT.security.delete_user(username: "api_key_user_1", ignore: 404)
62
+ ADMIN_CLIENT.security.delete_user(username: "api_key_user_2", ignore: 404)
63
+ ADMIN_CLIENT.security.delete_user(username: "api_key_manager", ignore: 404)
64
+ end
65
+
66
+ def client(headers)
67
+ Elasticsearch::Client.new(
68
+ host: "https://#{HOST_URI.host}:#{HOST_URI.port}",
69
+ transport_options: TRANSPORT_OPTIONS.merge(headers: headers)
70
+ )
71
+ end
72
+
73
+ let(:manager_auth) do
74
+ { Authorization: "Basic YXBpX2tleV9tYW5hZ2VyOngtcGFjay10ZXN0LXBhc3N3b3Jk" }
75
+ end
76
+ let(:user1_auth) do
77
+ { Authorization: "Basic YXBpX2tleV91c2VyXzE6eC1wYWNrLXRlc3QtcGFzc3dvcmQ=" }
78
+ end
79
+ let(:user2_auth) do
80
+ { Authorization: "Basic YXBpX2tleV91c2VyXzI6eC1wYWNrLXRlc3QtcGFzc3dvcmQ=" }
81
+ end
82
+
83
+ it 'queries api key' do
84
+ # api_key_manager authorization:
85
+ client = client(manager_auth)
86
+ response = client.security.create_api_key(
87
+ body: {
88
+ name: 'manager-api-key',
89
+ expiration: '10d',
90
+ metadata: {
91
+ letter: 'a',
92
+ number: 42
93
+ }
94
+ }
95
+ )
96
+ expect(response.status).to eq 200
97
+ manager_key_id = response['id']
98
+
99
+ # api_key_user1 authorization:
100
+ client = client(user1_auth)
101
+ response = client.security.create_api_key(
102
+ body: {
103
+ name: 'user1-api-key',
104
+ expiration: '1d',
105
+ metadata: {
106
+ letter: 'a',
107
+ number: 1
108
+ }
109
+ }
110
+ )
111
+ expect(response.status).to eq 200
112
+ user1_key_id = response['id']
113
+
114
+ # api_key_user2 authorization
115
+ client = client(user2_auth)
116
+ response = client.security.create_api_key(
117
+ body: {
118
+ name: 'user2-api-key',
119
+ expiration: '1d',
120
+ metadata: {
121
+ letter: 'b',
122
+ number: 42
123
+ }
124
+ }
125
+ )
126
+ expect(response.status).to eq 200
127
+ user1_key_id = response['id']
128
+
129
+ client = client(manager_auth)
130
+ response = client.security.query_api_keys
131
+ expect(response.status).to eq 200
132
+ manager_total = response['total']
133
+ expect(manager_total).to be >= 3
134
+
135
+ client = client(user1_auth)
136
+ response = client.security.query_api_keys
137
+ expect(response.status).to eq 200
138
+ user_1_total = response['total']
139
+ expect(user_1_total).to be >= 1
140
+ expect(user_1_total).to be < manager_total
141
+
142
+ client = client(user2_auth)
143
+ response = client.security.query_api_keys
144
+ expect(response.status).to eq 200
145
+ user_2_total = response['total']
146
+ expect(user_2_total).to be >= 1
147
+ expect(user_2_total).to be < manager_total
148
+ end
149
+ end
@@ -0,0 +1,157 @@
1
+ # Licensed to Elasticsearch B.V. under one or more contributor
2
+ # license agreements. See the NOTICE file distributed with
3
+ # this work for additional information regarding copyright
4
+ # ownership. Elasticsearch B.V. licenses this file to you under
5
+ # the Apache License, Version 2.0 (the "License"); you may
6
+ # not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
17
+
18
+ require 'base64'
19
+ require_relative '../platinum_helper'
20
+
21
+ describe 'API keys' do
22
+ before do
23
+ ADMIN_CLIENT.security.put_role(
24
+ name: 'admin_role',
25
+ body: {
26
+ cluster: ['manage_api_key'],
27
+ indices: [
28
+ {
29
+ names: '*',
30
+ privileges: ['all']
31
+ }
32
+ ],
33
+ applications: [
34
+ {
35
+ application: 'myapp',
36
+ privileges: ['*'],
37
+ resources: ['*']
38
+ }
39
+ ]
40
+ }
41
+ )
42
+ ADMIN_CLIENT.security.put_user(
43
+ username: 'api_key_user',
44
+ body: {
45
+ password: 'x-pack-test-password',
46
+ roles: [ 'admin_role' ],
47
+ full_name: 'API key user'
48
+ }
49
+ )
50
+ ADMIN_CLIENT.security.put_privileges(
51
+ body:
52
+ {
53
+ myapp: {
54
+ read: {
55
+ application: 'myapp',
56
+ name: 'read',
57
+ actions: [ 'data:read/*' ]
58
+ },
59
+ write: {
60
+ application: 'myapp',
61
+ name: 'write',
62
+ actions: [ 'data:write/*' ]
63
+ }
64
+ }
65
+ }
66
+ )
67
+ end
68
+
69
+ after do
70
+ ADMIN_CLIENT.security.delete_role(name: "admin_role", ignore: 404)
71
+ ADMIN_CLIENT.security.delete_user(username: "api_key_user", ignore: 404)
72
+ ADMIN_CLIENT.security.delete_privileges(application: 'myapp', name: "read,write", ignore: 404)
73
+ end
74
+
75
+ let(:client) do
76
+ Elasticsearch::Client.new(
77
+ host: "https://#{HOST_URI.host}:#{HOST_URI.port}",
78
+ user: 'api_key_user',
79
+ password: 'x-pack-test-password',
80
+ transport_options: TRANSPORT_OPTIONS
81
+ )
82
+ end
83
+
84
+ it 'creates api key' do
85
+ response = client.security.create_api_key(
86
+ body: {
87
+ name: "my-api-key",
88
+ expiration: "1d",
89
+ role_descriptors: {
90
+ 'role-a' => {
91
+ cluster: ["all"],
92
+ index: [
93
+ {
94
+ names: ["index-a"],
95
+ privileges: ["read"]
96
+ }
97
+ ]
98
+ },
99
+ 'role-b' => {
100
+ cluster: ["manage"],
101
+ index: [
102
+ {
103
+ names: ["index-b"],
104
+ privileges: ["all"]
105
+ }
106
+ ]
107
+ }
108
+ }
109
+ }
110
+ )
111
+ expect(response['name']).to eq 'my-api-key'
112
+ id = response['id']
113
+ expect(id).not_to be nil
114
+ expect(response['api_key']).not_to be nil
115
+ expect(response['expiration']).not_to be nil
116
+ credentials = Base64.strict_encode64("#{response['id']}:#{response['api_key']}")
117
+ expect(credentials).to eq response['encoded']
118
+ new_client = Elasticsearch::Client.new(
119
+ host: "https://#{HOST_URI.host}:#{HOST_URI.port}",
120
+ transport_options: TRANSPORT_OPTIONS,
121
+ api_key: credentials
122
+ )
123
+ response = new_client.security.authenticate
124
+ expect(response['username']).to eq 'api_key_user'
125
+ expect(response['roles'].length).to eq 0
126
+ expect(response['authentication_realm']['name']).to eq '_es_api_key'
127
+ expect(response['authentication_realm']['type']).to eq '_es_api_key'
128
+ expect(response['api_key']['id']).to eq id
129
+ expect(response['api_key']['name']).to eq 'my-api-key'
130
+ response = ADMIN_CLIENT.security.clear_api_key_cache(ids: id)
131
+ expect(response['_nodes']['failed']).to eq 0
132
+ end
133
+
134
+ context 'Test get api key' do
135
+ let(:name) { 'my-api-key-2'}
136
+
137
+ it 'gets api key' do
138
+ response = ADMIN_CLIENT.security.create_api_key(
139
+ body: { name: name, expiration: '1d' }
140
+ )
141
+ expect(response['name']).to eq name
142
+ id = response['id']
143
+ expect(id).not_to be nil
144
+ expect(response['api_key']).not_to be nil
145
+ expect(response['expiration']).not_to be nil
146
+
147
+ response = ADMIN_CLIENT.security.get_api_key(id: id)
148
+ expect(response['api_keys'].first['id']).to eq id
149
+ expect(response['api_keys'].first['name']).to eq name
150
+ expect(response['api_keys'].first['username']).to eq 'elastic'
151
+ expect(response['api_keys'].first['invalidated']).to eq false
152
+ expect(response['api_keys'].first['creation']).not_to be nil
153
+ response = ADMIN_CLIENT.security.get_api_key(owner: true)
154
+ expect(response['api_keys'].length).to be > 0
155
+ end
156
+ end
157
+ end
@@ -0,0 +1,134 @@
1
+ # Licensed to Elasticsearch B.V. under one or more contributor
2
+ # license agreements. See the NOTICE file distributed with
3
+ # this work for additional information regarding copyright
4
+ # ownership. Elasticsearch B.V. licenses this file to you under
5
+ # the Apache License, Version 2.0 (the "License"); you may
6
+ # not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
17
+
18
+ require 'base64'
19
+ require_relative '../platinum_helper'
20
+
21
+ describe 'API keys API' do
22
+ before do
23
+ ADMIN_CLIENT.security.put_role(
24
+ name: 'user_role',
25
+ body: {
26
+ cluster: ['manage_own_api_key'],
27
+ indices: [
28
+ {
29
+ names: '*',
30
+ privileges: ['all']
31
+ }
32
+ ]
33
+ }
34
+ )
35
+ ADMIN_CLIENT.security.put_user(
36
+ username: 'api_key_user_1',
37
+ body: {
38
+ password: 'x-pack-test-password',
39
+ roles: [ 'user_role' ],
40
+ full_name: 'API key user 1'
41
+ }
42
+ )
43
+ end
44
+
45
+ after do
46
+ ADMIN_CLIENT.security.delete_role(name: "user_role", ignore: 404)
47
+ ADMIN_CLIENT.security.delete_user(username: "api_key_user_1", ignore: 404)
48
+ end
49
+
50
+ let(:client) do
51
+ Elasticsearch::Client.new(
52
+ host: "https://#{HOST_URI.host}:#{HOST_URI.port}",
53
+ transport_options: TRANSPORT_OPTIONS.merge(
54
+ headers: { Authorization: "Basic YXBpX2tleV91c2VyXzE6eC1wYWNrLXRlc3QtcGFzc3dvcmQ=" }
55
+ )
56
+ )
57
+ end
58
+
59
+ it 'updates api key' do
60
+ response = client.security.create_api_key(
61
+ body: {
62
+ name: 'user1-api-key',
63
+ role_descriptors: {
64
+ "role-a" => {
65
+ cluster: ["none"],
66
+ index: [
67
+ {
68
+ names: ["index-a"],
69
+ privileges: ["read"]
70
+ }
71
+ ]
72
+ }
73
+ }
74
+ }
75
+ )
76
+ expect(response.status).to eq 200
77
+ expect(response['name']).to eq 'user1-api-key'
78
+ id = response['id']
79
+ expect(id).not_to be nil
80
+ expect(response['api_key']).not_to be nil
81
+ credentials = Base64.strict_encode64("#{response['id']}:#{response['api_key']}")
82
+ expect(credentials).to eq response['encoded']
83
+
84
+ new_client = Elasticsearch::Client.new(
85
+ host: "https://#{HOST_URI.host}:#{HOST_URI.port}",
86
+ transport_options: TRANSPORT_OPTIONS,
87
+ api_key: credentials
88
+ )
89
+ privileges_body = {
90
+ cluster: ['manage_own_api_key'],
91
+ index: [
92
+ {
93
+ names: ['index-a'],
94
+ privileges: ['write']
95
+ },
96
+ {
97
+ names: ['index-b'],
98
+ privileges: ['read']
99
+ }
100
+ ]
101
+ }
102
+ response = new_client.security.has_privileges(body: privileges_body)
103
+ expect(response['has_all_requested']).to eq false
104
+
105
+ response = client.security.update_api_key(
106
+ id: id,
107
+ body: {
108
+ role_descriptors: {
109
+ "role-a" => {
110
+ cluster: ["all"],
111
+ index: [
112
+ {
113
+ names: ["index-a"],
114
+ privileges: ["write"]
115
+ },
116
+ {
117
+ names: ["index-b"],
118
+ privileges: ["read"]
119
+ }
120
+ ]
121
+ }
122
+ },
123
+ metadata: {
124
+ letter: "a",
125
+ number: 42
126
+ }
127
+ }
128
+ )
129
+ expect(response['updated']).to eq true
130
+
131
+ response = new_client.security.has_privileges(user: nil, body: privileges_body)
132
+ expect(response['has_all_requested']).to eq true
133
+ end
134
+ end
@@ -0,0 +1,49 @@
1
+ # Licensed to Elasticsearch B.V. under one or more contributor
2
+ # license agreements. See the NOTICE file distributed with
3
+ # this work for additional information regarding copyright
4
+ # ownership. Elasticsearch B.V. licenses this file to you under
5
+ # the Apache License, Version 2.0 (the "License"); you may
6
+ # not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
17
+
18
+ require_relative '../platinum_helper'
19
+
20
+ describe 'Health API' do
21
+ context 'Usage stats on the health API' do
22
+ before do
23
+ ADMIN_CLIENT.indices.create(
24
+ index: 'red_index',
25
+ body: {
26
+ settings: {
27
+ number_of_shards: 1,
28
+ number_of_replicas: 0,
29
+ 'index.routing.allocation.enable' => 'none'
30
+ }
31
+ }
32
+ )
33
+ end
34
+
35
+ after do
36
+ ADMIN_CLIENT.indices.delete(index: 'red_index')
37
+ end
38
+
39
+ it 'responds with health report' do
40
+ expect(ADMIN_CLIENT.health_report.status).to eq 200
41
+ expect(ADMIN_CLIENT.health_report(feature: 'disk').status).to eq 200
42
+ response = ADMIN_CLIENT.xpack.usage
43
+ expect(response['health_api']['available']).to eq true
44
+ expect(response['health_api']['enabled']).to eq true
45
+ expect(response['health_api']['invocations']['total']).to be >= 2
46
+ expect(response['health_api']['invocations']['verbose_true']).to be >= 2
47
+ end
48
+ end
49
+ end
@@ -0,0 +1,47 @@
1
+ # Licensed to Elasticsearch B.V. under one or more contributor
2
+ # license agreements. See the NOTICE file distributed with
3
+ # this work for additional information regarding copyright
4
+ # ownership. Elasticsearch B.V. licenses this file to you under
5
+ # the Apache License, Version 2.0 (the "License"); you may
6
+ # not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
17
+
18
+ require_relative '../platinum_helper'
19
+
20
+ describe 'ML/Get Memory Stats API' do
21
+ it 'gets memory for all nodes' do
22
+ response = ADMIN_CLIENT.ml.get_memory_stats
23
+ expect(response.status).to eq 200
24
+ expect(response['cluster_name']).not_to be_nil
25
+ expect(response['_nodes']['total']).to be >= 1
26
+ expect(response['nodes'].first[1]['mem']['total_in_bytes']).to be > 1
27
+ end
28
+
29
+ it 'gets memory for ML nodes' do
30
+ response = ADMIN_CLIENT.ml.get_memory_stats
31
+ expect(response.status).to eq 200
32
+ expect(response['cluster_name']).not_to be_nil
33
+ expect(response['nodes'].first[1]['mem']['total_in_bytes']).to be > 1
34
+ end
35
+
36
+ it 'gets memory for specific node' do
37
+ response = ADMIN_CLIENT.ml.get_memory_stats
38
+ expect(response.status).to eq 200
39
+ node_id = response['nodes'].keys.first
40
+
41
+ response = ADMIN_CLIENT.ml.get_memory_stats(node_id: node_id, timeout: '29s')
42
+ expect(response.status).to eq 200
43
+ expect(response['cluster_name']).not_to be_nil
44
+ expect(response['nodes'].first[1]['mem']['total_in_bytes']).to be > 1
45
+ expect(response['_nodes']['total']).to be 1
46
+ end
47
+ end
@@ -0,0 +1,36 @@
1
+ # Licensed to Elasticsearch B.V. under one or more contributor
2
+ # license agreements. See the NOTICE file distributed with
3
+ # this work for additional information regarding copyright
4
+ # ownership. Elasticsearch B.V. licenses this file to you under
5
+ # the Apache License, Version 2.0 (the "License"); you may
6
+ # not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
17
+
18
+ require 'openssl'
19
+ require 'elasticsearch'
20
+
21
+ CERTS_PATH = File.expand_path('./../.buildkite/certs')
22
+
23
+ host = ENV['TEST_ES_SERVER'] || 'https://localhost:9200'
24
+ raise URI::InvalidURIError unless host =~ /\A#{URI::DEFAULT_PARSER.make_regexp}\z/
25
+
26
+ password = ENV['ELASTIC_PASSWORD'] || 'changeme'
27
+ HOST_URI = URI.parse(host)
28
+ raw_certificate = File.read("#{CERTS_PATH}/testnode.crt")
29
+ certificate = OpenSSL::X509::Certificate.new(raw_certificate)
30
+ raw_key = File.read("#{CERTS_PATH}/testnode.key")
31
+ key = OpenSSL::PKey::RSA.new(raw_key)
32
+ ca_file = File.expand_path("#{CERTS_PATH}/ca.crt")
33
+ TRANSPORT_OPTIONS = { ssl: { verify: false, client_cert: certificate, client_key: key, ca_file: ca_file } }
34
+ HOST = "https://elastic:#{password}@#{HOST_URI.host}:#{HOST_URI.port}".freeze
35
+
36
+ ADMIN_CLIENT = Elasticsearch::Client.new(host: HOST, transport_options: TRANSPORT_OPTIONS)
@@ -0,0 +1,65 @@
1
+ # Licensed to Elasticsearch B.V. under one or more contributor
2
+ # license agreements. See the NOTICE file distributed with
3
+ # this work for additional information regarding copyright
4
+ # ownership. Elasticsearch B.V. licenses this file to you under
5
+ # the Apache License, Version 2.0 (the "License"); you may
6
+ # not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
17
+
18
+ require_relative '../platinum_helper'
19
+
20
+ describe 'Service Accounts API' do
21
+ context 'service account tokens' do
22
+ before do
23
+
24
+ end
25
+
26
+ after do
27
+ ADMIN_CLIENT.security.delete_service_token(
28
+ namespace: 'elastic',
29
+ service: 'fleet-server',
30
+ name: 'api-token-fleet'
31
+ )
32
+ end
33
+
34
+ it 'responds with health report' do
35
+ response = ADMIN_CLIENT.security.create_service_token(
36
+ namespace: 'elastic',
37
+ service: 'fleet-server',
38
+ name: 'api-token-fleet'
39
+ )
40
+ expect(response.status).to eq 200
41
+ expect(response['created']).to eq true
42
+ service_token_fleet = response['token']['value']
43
+ headers = { 'Authorization' => "Bearer #{service_token_fleet}"}
44
+ client = Elasticsearch::Client.new(
45
+ host: HOST,
46
+ transport_options: TRANSPORT_OPTIONS.merge(headers: headers)
47
+ )
48
+ response = client.security.authenticate
49
+
50
+ expect(response.status).to eq 200
51
+ expect(response['username']).to eq 'elastic/fleet-server'
52
+ expect(response['full_name']).to eq 'Service account - elastic/fleet-server'
53
+
54
+
55
+ expect do
56
+ client.security.delete_user(username: 'foo')
57
+ end.to raise_error Elastic::Transport::Transport::Errors::Forbidden
58
+
59
+ response = ADMIN_CLIENT.security.get_service_credentials(
60
+ namespace: 'elastic', service: 'fleet-server'
61
+ )
62
+ expect(response['service_account']).to eq 'elastic/fleet-server'
63
+ end
64
+ end
65
+ end