elasticsearch-api 7.7.0 → 7.8.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 (311) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +17 -3
  3. data/Rakefile +16 -3
  4. data/elasticsearch-api.gemspec +16 -3
  5. data/lib/elasticsearch-api.rb +16 -3
  6. data/lib/elasticsearch/api.rb +16 -3
  7. data/lib/elasticsearch/api/actions/abort_benchmark.rb +41 -0
  8. data/lib/elasticsearch/api/actions/benchmark.rb +81 -0
  9. data/lib/elasticsearch/api/actions/bulk.rb +17 -4
  10. data/lib/elasticsearch/api/actions/cat/aliases.rb +17 -4
  11. data/lib/elasticsearch/api/actions/cat/allocation.rb +17 -4
  12. data/lib/elasticsearch/api/actions/cat/count.rb +17 -4
  13. data/lib/elasticsearch/api/actions/cat/fielddata.rb +17 -4
  14. data/lib/elasticsearch/api/actions/cat/health.rb +17 -4
  15. data/lib/elasticsearch/api/actions/cat/help.rb +17 -4
  16. data/lib/elasticsearch/api/actions/cat/indices.rb +17 -4
  17. data/lib/elasticsearch/api/actions/cat/master.rb +17 -4
  18. data/lib/elasticsearch/api/actions/cat/nodeattrs.rb +17 -4
  19. data/lib/elasticsearch/api/actions/cat/nodes.rb +17 -4
  20. data/lib/elasticsearch/api/actions/cat/params_registry.rb +16 -3
  21. data/lib/elasticsearch/api/actions/cat/pending_tasks.rb +17 -4
  22. data/lib/elasticsearch/api/actions/cat/plugins.rb +17 -4
  23. data/lib/elasticsearch/api/actions/cat/recovery.rb +17 -4
  24. data/lib/elasticsearch/api/actions/cat/repositories.rb +17 -4
  25. data/lib/elasticsearch/api/actions/cat/segments.rb +17 -4
  26. data/lib/elasticsearch/api/actions/cat/shards.rb +17 -4
  27. data/lib/elasticsearch/api/actions/cat/snapshots.rb +17 -4
  28. data/lib/elasticsearch/api/actions/cat/tasks.rb +17 -4
  29. data/lib/elasticsearch/api/actions/cat/templates.rb +17 -4
  30. data/lib/elasticsearch/api/actions/cat/thread_pool.rb +18 -5
  31. data/lib/elasticsearch/api/actions/clear_scroll.rb +17 -4
  32. data/lib/elasticsearch/api/actions/cluster/allocation_explain.rb +17 -4
  33. data/lib/elasticsearch/api/actions/cluster/delete_component_template.rb +17 -4
  34. data/lib/elasticsearch/api/actions/cluster/delete_voting_config_exclusions.rb +51 -0
  35. data/lib/elasticsearch/api/actions/cluster/exists_component_template.rb +59 -0
  36. data/lib/elasticsearch/api/actions/cluster/get_component_template.rb +17 -4
  37. data/lib/elasticsearch/api/actions/cluster/get_settings.rb +17 -4
  38. data/lib/elasticsearch/api/actions/cluster/health.rb +17 -4
  39. data/lib/elasticsearch/api/actions/cluster/params_registry.rb +16 -3
  40. data/lib/elasticsearch/api/actions/cluster/pending_tasks.rb +17 -4
  41. data/lib/elasticsearch/api/actions/cluster/post_voting_config_exclusions.rb +55 -0
  42. data/lib/elasticsearch/api/actions/cluster/put_component_template.rb +17 -4
  43. data/lib/elasticsearch/api/actions/cluster/put_settings.rb +17 -4
  44. data/lib/elasticsearch/api/actions/cluster/remote_info.rb +17 -4
  45. data/lib/elasticsearch/api/actions/cluster/reroute.rb +17 -4
  46. data/lib/elasticsearch/api/actions/cluster/state.rb +17 -4
  47. data/lib/elasticsearch/api/actions/cluster/stats.rb +17 -4
  48. data/lib/elasticsearch/api/actions/count.rb +17 -4
  49. data/lib/elasticsearch/api/actions/create.rb +17 -4
  50. data/lib/elasticsearch/api/actions/delete.rb +17 -4
  51. data/lib/elasticsearch/api/actions/delete_by_query.rb +17 -4
  52. data/lib/elasticsearch/api/actions/delete_by_query_rethrottle.rb +17 -4
  53. data/lib/elasticsearch/api/actions/delete_by_rethrottle.rb +47 -0
  54. data/lib/elasticsearch/api/actions/delete_script.rb +17 -4
  55. data/lib/elasticsearch/api/actions/exists.rb +17 -4
  56. data/lib/elasticsearch/api/actions/exists_source.rb +17 -4
  57. data/lib/elasticsearch/api/actions/explain.rb +17 -4
  58. data/lib/elasticsearch/api/actions/field_caps.rb +17 -4
  59. data/lib/elasticsearch/api/actions/get.rb +17 -4
  60. data/lib/elasticsearch/api/actions/get_script.rb +17 -4
  61. data/lib/elasticsearch/api/actions/get_script_context.rb +17 -4
  62. data/lib/elasticsearch/api/actions/get_script_languages.rb +17 -4
  63. data/lib/elasticsearch/api/actions/get_source.rb +17 -4
  64. data/lib/elasticsearch/api/actions/index.rb +17 -4
  65. data/lib/elasticsearch/api/actions/indices/analyze.rb +17 -4
  66. data/lib/elasticsearch/api/actions/indices/clear_cache.rb +17 -4
  67. data/lib/elasticsearch/api/actions/indices/clone.rb +17 -4
  68. data/lib/elasticsearch/api/actions/indices/close.rb +17 -4
  69. data/lib/elasticsearch/api/actions/indices/create.rb +17 -4
  70. data/lib/elasticsearch/api/actions/indices/create_data_stream.rb +17 -4
  71. data/lib/elasticsearch/api/actions/indices/delete.rb +17 -4
  72. data/lib/elasticsearch/api/actions/indices/delete_alias.rb +17 -4
  73. data/lib/elasticsearch/api/actions/indices/delete_data_stream.rb +17 -4
  74. data/lib/elasticsearch/api/actions/indices/delete_index_template.rb +58 -0
  75. data/lib/elasticsearch/api/actions/indices/delete_template.rb +17 -4
  76. data/lib/elasticsearch/api/actions/indices/exists.rb +17 -4
  77. data/lib/elasticsearch/api/actions/indices/exists_alias.rb +17 -4
  78. data/lib/elasticsearch/api/actions/indices/exists_index_template.rb +61 -0
  79. data/lib/elasticsearch/api/actions/indices/exists_template.rb +17 -4
  80. data/lib/elasticsearch/api/actions/indices/exists_type.rb +17 -4
  81. data/lib/elasticsearch/api/actions/indices/flush.rb +17 -4
  82. data/lib/elasticsearch/api/actions/indices/flush_synced.rb +17 -4
  83. data/lib/elasticsearch/api/actions/indices/forcemerge.rb +17 -4
  84. data/lib/elasticsearch/api/actions/indices/freeze.rb +16 -3
  85. data/lib/elasticsearch/api/actions/indices/get.rb +17 -4
  86. data/lib/elasticsearch/api/actions/indices/get_alias.rb +17 -4
  87. data/lib/elasticsearch/api/actions/indices/get_data_streams.rb +18 -5
  88. data/lib/elasticsearch/api/actions/indices/get_field_mapping.rb +17 -4
  89. data/lib/elasticsearch/api/actions/indices/get_index_template.rb +62 -0
  90. data/lib/elasticsearch/api/actions/indices/get_mapping.rb +17 -4
  91. data/lib/elasticsearch/api/actions/indices/get_settings.rb +17 -4
  92. data/lib/elasticsearch/api/actions/indices/get_template.rb +17 -4
  93. data/lib/elasticsearch/api/actions/indices/get_upgrade.rb +17 -4
  94. data/lib/elasticsearch/api/actions/indices/open.rb +17 -4
  95. data/lib/elasticsearch/api/actions/indices/params_registry.rb +16 -3
  96. data/lib/elasticsearch/api/actions/indices/put_alias.rb +17 -4
  97. data/lib/elasticsearch/api/actions/indices/put_index_template.rb +62 -0
  98. data/lib/elasticsearch/api/actions/indices/put_mapping.rb +18 -5
  99. data/lib/elasticsearch/api/actions/indices/put_settings.rb +17 -4
  100. data/lib/elasticsearch/api/actions/indices/put_template.rb +17 -4
  101. data/lib/elasticsearch/api/actions/indices/recovery.rb +17 -4
  102. data/lib/elasticsearch/api/actions/indices/refresh.rb +17 -4
  103. data/lib/elasticsearch/api/actions/indices/rollover.rb +17 -4
  104. data/lib/elasticsearch/api/actions/indices/segments.rb +17 -4
  105. data/lib/elasticsearch/api/actions/indices/shard_stores.rb +17 -4
  106. data/lib/elasticsearch/api/actions/indices/shrink.rb +17 -4
  107. data/lib/elasticsearch/api/actions/indices/simulate_index_template.rb +61 -0
  108. data/lib/elasticsearch/api/actions/indices/split.rb +17 -4
  109. data/lib/elasticsearch/api/actions/indices/stats.rb +17 -4
  110. data/lib/elasticsearch/api/actions/indices/unfreeze.rb +16 -3
  111. data/lib/elasticsearch/api/actions/indices/update_aliases.rb +17 -4
  112. data/lib/elasticsearch/api/actions/indices/upgrade.rb +17 -4
  113. data/lib/elasticsearch/api/actions/indices/validate_query.rb +17 -4
  114. data/lib/elasticsearch/api/actions/info.rb +17 -4
  115. data/lib/elasticsearch/api/actions/ingest/delete_pipeline.rb +17 -4
  116. data/lib/elasticsearch/api/actions/ingest/get_pipeline.rb +17 -4
  117. data/lib/elasticsearch/api/actions/ingest/params_registry.rb +16 -3
  118. data/lib/elasticsearch/api/actions/ingest/processor_grok.rb +17 -4
  119. data/lib/elasticsearch/api/actions/ingest/put_pipeline.rb +17 -4
  120. data/lib/elasticsearch/api/actions/ingest/simulate.rb +17 -4
  121. data/lib/elasticsearch/api/actions/mget.rb +17 -4
  122. data/lib/elasticsearch/api/actions/msearch.rb +17 -4
  123. data/lib/elasticsearch/api/actions/msearch_template.rb +17 -4
  124. data/lib/elasticsearch/api/actions/mtermvectors.rb +17 -4
  125. data/lib/elasticsearch/api/actions/nodes/hot_threads.rb +17 -4
  126. data/lib/elasticsearch/api/actions/nodes/info.rb +17 -4
  127. data/lib/elasticsearch/api/actions/nodes/params_registry.rb +16 -3
  128. data/lib/elasticsearch/api/actions/nodes/reload_secure_settings.rb +17 -4
  129. data/lib/elasticsearch/api/actions/nodes/shutdown.rb +56 -0
  130. data/lib/elasticsearch/api/actions/nodes/stats.rb +17 -4
  131. data/lib/elasticsearch/api/actions/nodes/usage.rb +17 -4
  132. data/lib/elasticsearch/api/actions/params_registry.rb +16 -3
  133. data/lib/elasticsearch/api/actions/ping.rb +17 -4
  134. data/lib/elasticsearch/api/actions/put_script.rb +17 -4
  135. data/lib/elasticsearch/api/actions/rank_eval.rb +17 -4
  136. data/lib/elasticsearch/api/actions/reindex.rb +17 -4
  137. data/lib/elasticsearch/api/actions/reindex_rethrottle.rb +17 -4
  138. data/lib/elasticsearch/api/actions/remote/info.rb +37 -0
  139. data/lib/elasticsearch/api/actions/render_search_template.rb +17 -4
  140. data/lib/elasticsearch/api/actions/scripts_painless_execute.rb +17 -4
  141. data/lib/elasticsearch/api/actions/scroll.rb +17 -4
  142. data/lib/elasticsearch/api/actions/search.rb +17 -4
  143. data/lib/elasticsearch/api/actions/search_shards.rb +17 -4
  144. data/lib/elasticsearch/api/actions/search_template.rb +17 -4
  145. data/lib/elasticsearch/api/actions/snapshot/cleanup_repository.rb +17 -4
  146. data/lib/elasticsearch/api/actions/snapshot/create.rb +17 -4
  147. data/lib/elasticsearch/api/actions/snapshot/create_repository.rb +17 -4
  148. data/lib/elasticsearch/api/actions/snapshot/delete.rb +17 -4
  149. data/lib/elasticsearch/api/actions/snapshot/delete_repository.rb +18 -5
  150. data/lib/elasticsearch/api/actions/snapshot/get.rb +17 -4
  151. data/lib/elasticsearch/api/actions/snapshot/get_repository.rb +17 -4
  152. data/lib/elasticsearch/api/actions/snapshot/params_registry.rb +16 -3
  153. data/lib/elasticsearch/api/actions/snapshot/restore.rb +17 -4
  154. data/lib/elasticsearch/api/actions/snapshot/status.rb +17 -4
  155. data/lib/elasticsearch/api/actions/snapshot/verify_repository.rb +17 -4
  156. data/lib/elasticsearch/api/actions/tasks/cancel.rb +20 -5
  157. data/lib/elasticsearch/api/actions/tasks/get.rb +17 -4
  158. data/lib/elasticsearch/api/actions/tasks/list.rb +17 -4
  159. data/lib/elasticsearch/api/actions/tasks/params_registry.rb +16 -3
  160. data/lib/elasticsearch/api/actions/termvectors.rb +17 -4
  161. data/lib/elasticsearch/api/actions/update.rb +17 -4
  162. data/lib/elasticsearch/api/actions/update_by_query.rb +17 -4
  163. data/lib/elasticsearch/api/actions/update_by_query_rethrottle.rb +17 -4
  164. data/lib/elasticsearch/api/namespace/cat.rb +16 -3
  165. data/lib/elasticsearch/api/namespace/cluster.rb +16 -3
  166. data/lib/elasticsearch/api/namespace/common.rb +16 -3
  167. data/lib/elasticsearch/api/namespace/indices.rb +16 -3
  168. data/lib/elasticsearch/api/namespace/ingest.rb +16 -3
  169. data/lib/elasticsearch/api/namespace/nodes.rb +16 -3
  170. data/lib/elasticsearch/api/namespace/remote.rb +16 -3
  171. data/lib/elasticsearch/api/namespace/snapshot.rb +16 -3
  172. data/lib/elasticsearch/api/namespace/tasks.rb +16 -3
  173. data/lib/elasticsearch/api/utils.rb +16 -3
  174. data/lib/elasticsearch/api/version.rb +17 -4
  175. data/spec/elasticsearch/api/actions/abort_benchmark_spec.rb +34 -0
  176. data/spec/elasticsearch/api/actions/benchmark_spec.rb +34 -0
  177. data/spec/elasticsearch/api/actions/bulk_spec.rb +16 -3
  178. data/spec/elasticsearch/api/actions/cat/aliases_spec.rb +16 -3
  179. data/spec/elasticsearch/api/actions/cat/allocation_spec.rb +16 -3
  180. data/spec/elasticsearch/api/actions/cat/count_spec.rb +16 -3
  181. data/spec/elasticsearch/api/actions/cat/fielddata_spec.rb +16 -3
  182. data/spec/elasticsearch/api/actions/cat/health_spec.rb +16 -3
  183. data/spec/elasticsearch/api/actions/cat/help_spec.rb +16 -3
  184. data/spec/elasticsearch/api/actions/cat/indices_spec.rb +16 -3
  185. data/spec/elasticsearch/api/actions/cat/master_spec.rb +16 -3
  186. data/spec/elasticsearch/api/actions/cat/nodeattrs_spec.rb +16 -3
  187. data/spec/elasticsearch/api/actions/cat/nodes_spec.rb +16 -3
  188. data/spec/elasticsearch/api/actions/cat/pending_tasks_spec.rb +16 -3
  189. data/spec/elasticsearch/api/actions/cat/plugins_spec.rb +16 -3
  190. data/spec/elasticsearch/api/actions/cat/recovery_spec.rb +16 -3
  191. data/spec/elasticsearch/api/actions/cat/repositories_spec.rb +16 -3
  192. data/spec/elasticsearch/api/actions/cat/segments_spec.rb +16 -3
  193. data/spec/elasticsearch/api/actions/cat/shards_spec.rb +16 -3
  194. data/spec/elasticsearch/api/actions/cat/snapshot_spec.rb +16 -3
  195. data/spec/elasticsearch/api/actions/cat/tasks_spec.rb +16 -3
  196. data/spec/elasticsearch/api/actions/cat/templates_spec.rb +16 -3
  197. data/spec/elasticsearch/api/actions/cat/thread_pool_spec.rb +16 -3
  198. data/spec/elasticsearch/api/actions/clear_scroll_spec.rb +16 -3
  199. data/spec/elasticsearch/api/actions/cluster/allocation_explain_spec.rb +16 -3
  200. data/spec/elasticsearch/api/actions/cluster/get_settings_spec.rb +16 -3
  201. data/spec/elasticsearch/api/actions/cluster/health_spec.rb +16 -3
  202. data/spec/elasticsearch/api/actions/cluster/pending_tasks_spec.rb +16 -3
  203. data/spec/elasticsearch/api/actions/cluster/put_settings_spec.rb +16 -3
  204. data/spec/elasticsearch/api/actions/cluster/remote_info_spec.rb +16 -3
  205. data/spec/elasticsearch/api/actions/cluster/reroute_spec.rb +16 -3
  206. data/spec/elasticsearch/api/actions/cluster/state_spec.rb +16 -3
  207. data/spec/elasticsearch/api/actions/cluster/stats_spec.rb +16 -3
  208. data/spec/elasticsearch/api/actions/count_spec.rb +16 -3
  209. data/spec/elasticsearch/api/actions/create_document_spec.rb +16 -3
  210. data/spec/elasticsearch/api/actions/delete_by_query_spec.rb +16 -3
  211. data/spec/elasticsearch/api/actions/delete_document_spec.rb +16 -3
  212. data/spec/elasticsearch/api/actions/delete_script_spec.rb +16 -3
  213. data/spec/elasticsearch/api/actions/exists_document_spec.rb +16 -3
  214. data/spec/elasticsearch/api/actions/explain_document_spec.rb +16 -3
  215. data/spec/elasticsearch/api/actions/field_caps_spec.rb +16 -3
  216. data/spec/elasticsearch/api/actions/get_document_source_spec.rb +16 -3
  217. data/spec/elasticsearch/api/actions/get_document_spec.rb +16 -3
  218. data/spec/elasticsearch/api/actions/get_script_spec.rb +16 -3
  219. data/spec/elasticsearch/api/actions/hashie_spec.rb +16 -3
  220. data/spec/elasticsearch/api/actions/index_document_spec.rb +16 -3
  221. data/spec/elasticsearch/api/actions/indices/analyze_spec.rb +16 -3
  222. data/spec/elasticsearch/api/actions/indices/clone_spec.rb +16 -3
  223. data/spec/elasticsearch/api/actions/indices/close_spec.rb +16 -3
  224. data/spec/elasticsearch/api/actions/indices/create_spec.rb +16 -3
  225. data/spec/elasticsearch/api/actions/indices/delete_alias_spec.rb +16 -3
  226. data/spec/elasticsearch/api/actions/indices/delete_spec.rb +16 -3
  227. data/spec/elasticsearch/api/actions/indices/delete_template_spec.rb +16 -3
  228. data/spec/elasticsearch/api/actions/indices/exists_alias_spec.rb +16 -3
  229. data/spec/elasticsearch/api/actions/indices/exists_spec.rb +16 -3
  230. data/spec/elasticsearch/api/actions/indices/exists_template_spec.rb +16 -3
  231. data/spec/elasticsearch/api/actions/indices/exists_type_spec.rb +16 -3
  232. data/spec/elasticsearch/api/actions/indices/flush_spec.rb +16 -3
  233. data/spec/elasticsearch/api/actions/indices/flush_synced_spec.rb +16 -3
  234. data/spec/elasticsearch/api/actions/indices/forcemerge_spec.rb +16 -3
  235. data/spec/elasticsearch/api/actions/indices/freeze_spec.rb +16 -3
  236. data/spec/elasticsearch/api/actions/indices/get_alias_spec.rb +16 -3
  237. data/spec/elasticsearch/api/actions/indices/get_field_mapping_spec.rb +16 -3
  238. data/spec/elasticsearch/api/actions/indices/get_mapping_spec.rb +16 -3
  239. data/spec/elasticsearch/api/actions/indices/get_settings_spec.rb +16 -3
  240. data/spec/elasticsearch/api/actions/indices/get_spec.rb +16 -3
  241. data/spec/elasticsearch/api/actions/indices/open_spec.rb +16 -3
  242. data/spec/elasticsearch/api/actions/indices/put_alias_spec.rb +16 -3
  243. data/spec/elasticsearch/api/actions/indices/put_mapping_spec.rb +16 -3
  244. data/spec/elasticsearch/api/actions/indices/put_settings_spec.rb +16 -3
  245. data/spec/elasticsearch/api/actions/indices/put_template_spec.rb +16 -3
  246. data/spec/elasticsearch/api/actions/indices/recovery_spec.rb +16 -3
  247. data/spec/elasticsearch/api/actions/indices/refresh_spec.rb +16 -3
  248. data/spec/elasticsearch/api/actions/indices/rollover_spec.rb +16 -3
  249. data/spec/elasticsearch/api/actions/indices/segments_spec.rb +16 -3
  250. data/spec/elasticsearch/api/actions/indices/shard_stores_spec.rb +16 -3
  251. data/spec/elasticsearch/api/actions/indices/shrink_spec.rb +16 -3
  252. data/spec/elasticsearch/api/actions/indices/split_spec.rb +16 -3
  253. data/spec/elasticsearch/api/actions/indices/stats_spec.rb +16 -3
  254. data/spec/elasticsearch/api/actions/indices/unfreeze_spec.rb +16 -3
  255. data/spec/elasticsearch/api/actions/indices/update_aliases_spec.rb +16 -3
  256. data/spec/elasticsearch/api/actions/indices/upgrade_spec.rb +16 -3
  257. data/spec/elasticsearch/api/actions/indices/validate_query_spec.rb +16 -3
  258. data/spec/elasticsearch/api/actions/info_spec.rb +16 -3
  259. data/spec/elasticsearch/api/actions/ingest/delete_pipeline_spec.rb +16 -3
  260. data/spec/elasticsearch/api/actions/ingest/get_pipeline_spec.rb +16 -3
  261. data/spec/elasticsearch/api/actions/ingest/put_pipeline_spec.rb +16 -3
  262. data/spec/elasticsearch/api/actions/ingest/simulate_spec.rb +16 -3
  263. data/spec/elasticsearch/api/actions/json_builders_spec.rb +16 -3
  264. data/spec/elasticsearch/api/actions/mget_spec.rb +16 -3
  265. data/spec/elasticsearch/api/actions/msearch_spec.rb +16 -3
  266. data/spec/elasticsearch/api/actions/msearch_template_spec.rb +16 -3
  267. data/spec/elasticsearch/api/actions/mtermvectors_spec.rb +16 -3
  268. data/spec/elasticsearch/api/actions/nodes/hot_threads_spec.rb +16 -3
  269. data/spec/elasticsearch/api/actions/nodes/info_spec.rb +16 -3
  270. data/spec/elasticsearch/api/actions/nodes/reload_secure_settings_spec.rb +25 -20
  271. data/spec/elasticsearch/api/actions/nodes/shutdown_spec.rb +76 -0
  272. data/spec/elasticsearch/api/actions/nodes/stats_spec.rb +16 -3
  273. data/spec/elasticsearch/api/actions/ping_spec.rb +16 -3
  274. data/spec/elasticsearch/api/actions/put_script_spec.rb +16 -3
  275. data/spec/elasticsearch/api/actions/reindex_spec.rb +16 -3
  276. data/spec/elasticsearch/api/actions/remote/info_spec.rb +35 -0
  277. data/spec/elasticsearch/api/actions/render_search_template_spec.rb +16 -3
  278. data/spec/elasticsearch/api/actions/scroll_spec.rb +16 -3
  279. data/spec/elasticsearch/api/actions/search_shards_spec.rb +16 -3
  280. data/spec/elasticsearch/api/actions/search_spec.rb +16 -3
  281. data/spec/elasticsearch/api/actions/search_template_spec.rb +16 -3
  282. data/spec/elasticsearch/api/actions/snapshot/create_repository_spec.rb +16 -3
  283. data/spec/elasticsearch/api/actions/snapshot/create_spec.rb +16 -3
  284. data/spec/elasticsearch/api/actions/snapshot/delete_repository_spec.rb +16 -3
  285. data/spec/elasticsearch/api/actions/snapshot/delete_spec.rb +16 -3
  286. data/spec/elasticsearch/api/actions/snapshot/get_repository_spec.rb +16 -3
  287. data/spec/elasticsearch/api/actions/snapshot/get_spec.rb +16 -3
  288. data/spec/elasticsearch/api/actions/snapshot/restore_spec.rb +16 -3
  289. data/spec/elasticsearch/api/actions/snapshot/status_spec.rb +16 -3
  290. data/spec/elasticsearch/api/actions/snapshot/verify_repository_spec.rb +16 -3
  291. data/spec/elasticsearch/api/actions/tasks/cancel_spec.rb +16 -3
  292. data/spec/elasticsearch/api/actions/tasks/get_spec.rb +16 -3
  293. data/spec/elasticsearch/api/actions/tasks/list_spec.rb +16 -3
  294. data/spec/elasticsearch/api/actions/termvectors_spec.rb +16 -3
  295. data/spec/elasticsearch/api/actions/update_by_query_spec.rb +16 -3
  296. data/spec/elasticsearch/api/actions/update_document_spec.rb +16 -3
  297. data/spec/elasticsearch/api/api_spec.rb +16 -3
  298. data/spec/elasticsearch/api/client_spec.rb +16 -3
  299. data/spec/elasticsearch/api/utils_spec.rb +16 -3
  300. data/spec/rest_yaml_tests_helper.rb +16 -7
  301. data/spec/spec_helper.rb +22 -8
  302. data/test/integration/yaml_test_runner.rb +16 -3
  303. data/test/test_helper.rb +16 -3
  304. data/utils/Gemfile +16 -3
  305. data/utils/thor/generate_source.rb +16 -3
  306. data/utils/thor/generator/endpoint_specifics.rb +16 -3
  307. data/utils/thor/generator/files_helper.rb +16 -3
  308. data/utils/thor/lister.rb +16 -3
  309. data/utils/thor/templates/method.erb +16 -3
  310. data/utils/thor/templates/test_helper.rb +16 -3
  311. metadata +23 -2
@@ -0,0 +1,62 @@
1
+ # Licensed to Elasticsearch B.V. under one or more contributor
2
+ # license agreements. See the NOTICE file distributed with
3
+ # this work for additional information regarding copyright
4
+ # ownership. Elasticsearch B.V. licenses this file to you under
5
+ # the Apache License, Version 2.0 (the "License"); you may
6
+ # not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
17
+
18
+ module Elasticsearch
19
+ module API
20
+ module Indices
21
+ module Actions
22
+ # Creates or updates an index template.
23
+ #
24
+ # @option arguments [String] :name The name of the template
25
+ # @option arguments [Boolean] :create Whether the index template should only be added if new or can also replace an existing one
26
+ # @option arguments [String] :cause User defined reason for creating/updating the index template
27
+ # @option arguments [Time] :master_timeout Specify timeout for connection to master
28
+ # @option arguments [Hash] :headers Custom HTTP headers
29
+ # @option arguments [Hash] :body The template definition (*Required*)
30
+ #
31
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.8/indices-templates.html
32
+ #
33
+ def put_index_template(arguments = {})
34
+ raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
35
+ raise ArgumentError, "Required argument 'name' missing" unless arguments[:name]
36
+
37
+ headers = arguments.delete(:headers) || {}
38
+
39
+ arguments = arguments.clone
40
+
41
+ _name = arguments.delete(:name)
42
+
43
+ method = Elasticsearch::API::HTTP_PUT
44
+ path = "_index_template/#{Utils.__listify(_name)}"
45
+ params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__)
46
+
47
+ body = arguments[:body]
48
+ perform_request(method, path, params, body, headers).body
49
+ end
50
+
51
+ # Register this action with its valid params when the module is loaded.
52
+ #
53
+ # @since 6.2.0
54
+ ParamsRegistry.register(:put_index_template, [
55
+ :create,
56
+ :cause,
57
+ :master_timeout
58
+ ].freeze)
59
+ end
60
+ end
61
+ end
62
+ end
@@ -1,6 +1,19 @@
1
- # Licensed to Elasticsearch B.V under one or more agreements.
2
- # Elasticsearch B.V licenses this file to you under the Apache 2.0 License.
3
- # See the LICENSE file in the project root for more information
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.
4
17
 
5
18
  module Elasticsearch
6
19
  module API
@@ -26,7 +39,7 @@ module Elasticsearch
26
39
  # Deprecated since version 7.0.0
27
40
  #
28
41
  #
29
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.7/indices-put-mapping.html
42
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.8/indices-put-mapping.html
30
43
  #
31
44
  def put_mapping(arguments = {})
32
45
  raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
@@ -43,7 +56,7 @@ module Elasticsearch
43
56
  path = if _index && _type
44
57
  "#{Utils.__listify(_index)}/#{Utils.__listify(_type)}/_mappings"
45
58
  elsif _index
46
- "#{Utils.__listify(_index)}/_mapping"
59
+ "#{Utils.__listify(_index)}/_mappings"
47
60
  elsif _type
48
61
  "_mappings/#{Utils.__listify(_type)}"
49
62
  end
@@ -1,6 +1,19 @@
1
- # Licensed to Elasticsearch B.V under one or more agreements.
2
- # Elasticsearch B.V licenses this file to you under the Apache 2.0 License.
3
- # See the LICENSE file in the project root for more information
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.
4
17
 
5
18
  module Elasticsearch
6
19
  module API
@@ -21,7 +34,7 @@ module Elasticsearch
21
34
  # @option arguments [Hash] :headers Custom HTTP headers
22
35
  # @option arguments [Hash] :body The index settings to be updated (*Required*)
23
36
  #
24
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.7/indices-update-settings.html
37
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.8/indices-update-settings.html
25
38
  #
26
39
  def put_settings(arguments = {})
27
40
  raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
@@ -1,6 +1,19 @@
1
- # Licensed to Elasticsearch B.V under one or more agreements.
2
- # Elasticsearch B.V licenses this file to you under the Apache 2.0 License.
3
- # See the LICENSE file in the project root for more information
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.
4
17
 
5
18
  module Elasticsearch
6
19
  module API
@@ -16,7 +29,7 @@ module Elasticsearch
16
29
  # @option arguments [Hash] :headers Custom HTTP headers
17
30
  # @option arguments [Hash] :body The template definition (*Required*)
18
31
  #
19
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.7/indices-templates.html
32
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.8/indices-templates.html
20
33
  #
21
34
  def put_template(arguments = {})
22
35
  raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
@@ -1,6 +1,19 @@
1
- # Licensed to Elasticsearch B.V under one or more agreements.
2
- # Elasticsearch B.V licenses this file to you under the Apache 2.0 License.
3
- # See the LICENSE file in the project root for more information
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.
4
17
 
5
18
  module Elasticsearch
6
19
  module API
@@ -13,7 +26,7 @@ module Elasticsearch
13
26
  # @option arguments [Boolean] :active_only Display only those recoveries that are currently on-going
14
27
  # @option arguments [Hash] :headers Custom HTTP headers
15
28
  #
16
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.7/indices-recovery.html
29
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.8/indices-recovery.html
17
30
  #
18
31
  def recovery(arguments = {})
19
32
  headers = arguments.delete(:headers) || {}
@@ -1,6 +1,19 @@
1
- # Licensed to Elasticsearch B.V under one or more agreements.
2
- # Elasticsearch B.V licenses this file to you under the Apache 2.0 License.
3
- # See the LICENSE file in the project root for more information
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.
4
17
 
5
18
  module Elasticsearch
6
19
  module API
@@ -16,7 +29,7 @@ module Elasticsearch
16
29
 
17
30
  # @option arguments [Hash] :headers Custom HTTP headers
18
31
  #
19
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.7/indices-refresh.html
32
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.8/indices-refresh.html
20
33
  #
21
34
  def refresh(arguments = {})
22
35
  headers = arguments.delete(:headers) || {}
@@ -1,6 +1,19 @@
1
- # Licensed to Elasticsearch B.V under one or more agreements.
2
- # Elasticsearch B.V licenses this file to you under the Apache 2.0 License.
3
- # See the LICENSE file in the project root for more information
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.
4
17
 
5
18
  module Elasticsearch
6
19
  module API
@@ -19,7 +32,7 @@ module Elasticsearch
19
32
  # @option arguments [Hash] :headers Custom HTTP headers
20
33
  # @option arguments [Hash] :body The conditions that needs to be met for executing rollover
21
34
  #
22
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.7/indices-rollover-index.html
35
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.8/indices-rollover-index.html
23
36
  #
24
37
  def rollover(arguments = {})
25
38
  raise ArgumentError, "Required argument 'alias' missing" unless arguments[:alias]
@@ -1,6 +1,19 @@
1
- # Licensed to Elasticsearch B.V under one or more agreements.
2
- # Elasticsearch B.V licenses this file to you under the Apache 2.0 License.
3
- # See the LICENSE file in the project root for more information
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.
4
17
 
5
18
  module Elasticsearch
6
19
  module API
@@ -17,7 +30,7 @@ module Elasticsearch
17
30
  # @option arguments [Boolean] :verbose Includes detailed memory usage by Lucene.
18
31
  # @option arguments [Hash] :headers Custom HTTP headers
19
32
  #
20
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.7/indices-segments.html
33
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.8/indices-segments.html
21
34
  #
22
35
  def segments(arguments = {})
23
36
  headers = arguments.delete(:headers) || {}
@@ -1,6 +1,19 @@
1
- # Licensed to Elasticsearch B.V under one or more agreements.
2
- # Elasticsearch B.V licenses this file to you under the Apache 2.0 License.
3
- # See the LICENSE file in the project root for more information
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.
4
17
 
5
18
  module Elasticsearch
6
19
  module API
@@ -19,7 +32,7 @@ module Elasticsearch
19
32
 
20
33
  # @option arguments [Hash] :headers Custom HTTP headers
21
34
  #
22
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.7/indices-shards-stores.html
35
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.8/indices-shards-stores.html
23
36
  #
24
37
  def shard_stores(arguments = {})
25
38
  headers = arguments.delete(:headers) || {}
@@ -1,6 +1,19 @@
1
- # Licensed to Elasticsearch B.V under one or more agreements.
2
- # Elasticsearch B.V licenses this file to you under the Apache 2.0 License.
3
- # See the LICENSE file in the project root for more information
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.
4
17
 
5
18
  module Elasticsearch
6
19
  module API
@@ -17,7 +30,7 @@ module Elasticsearch
17
30
  # @option arguments [Hash] :headers Custom HTTP headers
18
31
  # @option arguments [Hash] :body The configuration for the target index (`settings` and `aliases`)
19
32
  #
20
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.7/indices-shrink-index.html
33
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.8/indices-shrink-index.html
21
34
  #
22
35
  def shrink(arguments = {})
23
36
  raise ArgumentError, "Required argument 'index' missing" unless arguments[:index]
@@ -0,0 +1,61 @@
1
+ # Licensed to Elasticsearch B.V. under one or more contributor
2
+ # license agreements. See the NOTICE file distributed with
3
+ # this work for additional information regarding copyright
4
+ # ownership. Elasticsearch B.V. licenses this file to you under
5
+ # the Apache License, Version 2.0 (the "License"); you may
6
+ # not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
17
+
18
+ module Elasticsearch
19
+ module API
20
+ module Indices
21
+ module Actions
22
+ # Simulate matching the given index name against the index templates in the system
23
+ #
24
+ # @option arguments [String] :name The name of the index (it must be a concrete index name)
25
+ # @option arguments [Boolean] :create Whether the index template we optionally defined in the body should only be dry-run added if new or can also replace an existing one
26
+ # @option arguments [String] :cause User defined reason for dry-run creating the new template for simulation purposes
27
+ # @option arguments [Time] :master_timeout Specify timeout for connection to master
28
+ # @option arguments [Hash] :headers Custom HTTP headers
29
+ # @option arguments [Hash] :body New index template definition, which will be included in the simulation, as if it already exists in the system
30
+ #
31
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.8/indices-templates.html
32
+ #
33
+ def simulate_index_template(arguments = {})
34
+ raise ArgumentError, "Required argument 'name' missing" unless arguments[:name]
35
+
36
+ headers = arguments.delete(:headers) || {}
37
+
38
+ arguments = arguments.clone
39
+
40
+ _name = arguments.delete(:name)
41
+
42
+ method = Elasticsearch::API::HTTP_POST
43
+ path = "_index_template/_simulate_index/#{Utils.__listify(_name)}"
44
+ params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__)
45
+
46
+ body = arguments[:body]
47
+ perform_request(method, path, params, body, headers).body
48
+ end
49
+
50
+ # Register this action with its valid params when the module is loaded.
51
+ #
52
+ # @since 6.2.0
53
+ ParamsRegistry.register(:simulate_index_template, [
54
+ :create,
55
+ :cause,
56
+ :master_timeout
57
+ ].freeze)
58
+ end
59
+ end
60
+ end
61
+ end
@@ -1,6 +1,19 @@
1
- # Licensed to Elasticsearch B.V under one or more agreements.
2
- # Elasticsearch B.V licenses this file to you under the Apache 2.0 License.
3
- # See the LICENSE file in the project root for more information
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.
4
17
 
5
18
  module Elasticsearch
6
19
  module API
@@ -17,7 +30,7 @@ module Elasticsearch
17
30
  # @option arguments [Hash] :headers Custom HTTP headers
18
31
  # @option arguments [Hash] :body The configuration for the target index (`settings` and `aliases`)
19
32
  #
20
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.7/indices-split-index.html
33
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.8/indices-split-index.html
21
34
  #
22
35
  def split(arguments = {})
23
36
  raise ArgumentError, "Required argument 'index' missing" unless arguments[:index]