knife-ionoscloud 5.1.2 → 6.0.0.alpha.1

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 (402) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/publish.yml +1 -4
  3. data/docs/README.md +0 -19
  4. data/docs/docs_generator.rb +1 -1
  5. data/docs/subcommands/backupunit_create.md +2 -5
  6. data/docs/subcommands/backupunit_delete.md +1 -4
  7. data/docs/subcommands/backupunit_list.md +1 -4
  8. data/docs/subcommands/backupunit_ssourl.md +1 -4
  9. data/docs/subcommands/composite_server_create.md +1 -4
  10. data/docs/subcommands/contract_list.md +1 -4
  11. data/docs/subcommands/datacenter_create.md +1 -4
  12. data/docs/subcommands/datacenter_delete.md +1 -4
  13. data/docs/subcommands/datacenter_list.md +1 -4
  14. data/docs/subcommands/firewall_create.md +2 -5
  15. data/docs/subcommands/firewall_delete.md +0 -3
  16. data/docs/subcommands/firewall_list.md +1 -4
  17. data/docs/subcommands/group_create.md +1 -4
  18. data/docs/subcommands/group_delete.md +1 -4
  19. data/docs/subcommands/group_get.md +1 -4
  20. data/docs/subcommands/group_list.md +1 -4
  21. data/docs/subcommands/group_user_add.md +0 -3
  22. data/docs/subcommands/group_user_remove.md +0 -3
  23. data/docs/subcommands/image_list.md +1 -4
  24. data/docs/subcommands/ipblock_create.md +1 -4
  25. data/docs/subcommands/ipblock_delete.md +1 -4
  26. data/docs/subcommands/ipblock_list.md +1 -4
  27. data/docs/subcommands/ipfailover_add.md +1 -4
  28. data/docs/subcommands/ipfailover_remove.md +1 -4
  29. data/docs/subcommands/k8s_create.md +5 -11
  30. data/docs/subcommands/k8s_delete.md +1 -4
  31. data/docs/subcommands/k8s_list.md +1 -4
  32. data/docs/subcommands/kubeconfig_get.md +1 -4
  33. data/docs/subcommands/label_add.md +1 -4
  34. data/docs/subcommands/label_list.md +1 -4
  35. data/docs/subcommands/label_remove.md +0 -3
  36. data/docs/subcommands/lan_create.md +1 -4
  37. data/docs/subcommands/lan_delete.md +0 -3
  38. data/docs/subcommands/lan_list.md +1 -4
  39. data/docs/subcommands/loadbalancer_create.md +2 -5
  40. data/docs/subcommands/loadbalancer_delete.md +0 -3
  41. data/docs/subcommands/loadbalancer_get.md +1 -4
  42. data/docs/subcommands/loadbalancer_list.md +1 -4
  43. data/docs/subcommands/loadbalancer_nic_add.md +0 -3
  44. data/docs/subcommands/loadbalancer_nic_remove.md +0 -3
  45. data/docs/subcommands/location_list.md +1 -4
  46. data/docs/subcommands/nic_create.md +3 -6
  47. data/docs/subcommands/nic_delete.md +1 -4
  48. data/docs/subcommands/nic_list.md +1 -4
  49. data/docs/subcommands/node_delete.md +0 -3
  50. data/docs/subcommands/node_list.md +1 -4
  51. data/docs/subcommands/node_replace.md +0 -3
  52. data/docs/subcommands/nodepool_create.md +5 -17
  53. data/docs/subcommands/nodepool_delete.md +0 -3
  54. data/docs/subcommands/nodepool_list.md +1 -4
  55. data/docs/subcommands/pcc_create.md +1 -4
  56. data/docs/subcommands/pcc_delete.md +1 -4
  57. data/docs/subcommands/pcc_list.md +1 -4
  58. data/docs/subcommands/request_list.md +1 -4
  59. data/docs/subcommands/request_status.md +1 -4
  60. data/docs/subcommands/request_wait.md +1 -4
  61. data/docs/subcommands/resource_list.md +1 -4
  62. data/docs/subcommands/s3key_create.md +1 -4
  63. data/docs/subcommands/s3key_delete.md +0 -3
  64. data/docs/subcommands/s3key_list.md +1 -4
  65. data/docs/subcommands/server_create.md +1 -4
  66. data/docs/subcommands/server_delete.md +0 -3
  67. data/docs/subcommands/server_list.md +1 -4
  68. data/docs/subcommands/server_reboot.md +0 -3
  69. data/docs/subcommands/server_start.md +0 -3
  70. data/docs/subcommands/server_stop.md +0 -3
  71. data/docs/subcommands/share_create.md +2 -5
  72. data/docs/subcommands/share_delete.md +2 -5
  73. data/docs/subcommands/share_list.md +1 -4
  74. data/docs/subcommands/snapshot_create.md +1 -4
  75. data/docs/subcommands/snapshot_delete.md +1 -4
  76. data/docs/subcommands/snapshot_list.md +1 -4
  77. data/docs/subcommands/snapshot_restore.md +1 -4
  78. data/docs/subcommands/user_create.md +3 -12
  79. data/docs/subcommands/user_delete.md +1 -4
  80. data/docs/subcommands/user_list.md +1 -4
  81. data/docs/subcommands/user_ssourl.md +1 -4
  82. data/docs/subcommands/volume_attach.md +0 -3
  83. data/docs/subcommands/volume_create.md +1 -28
  84. data/docs/subcommands/volume_delete.md +0 -3
  85. data/docs/subcommands/volume_detach.md +0 -3
  86. data/docs/subcommands/volume_list.md +1 -4
  87. data/docs/summary.md +0 -33
  88. data/knife-ionoscloud.gemspec +1 -1
  89. data/lib/chef/knife/ionoscloud_backupunit_create.rb +16 -12
  90. data/lib/chef/knife/ionoscloud_backupunit_delete.rb +5 -3
  91. data/lib/chef/knife/ionoscloud_backupunit_list.rb +1 -2
  92. data/lib/chef/knife/ionoscloud_backupunit_ssourl.rb +1 -2
  93. data/lib/chef/knife/ionoscloud_base.rb +6 -259
  94. data/lib/chef/knife/ionoscloud_composite_server_create.rb +38 -9
  95. data/lib/chef/knife/ionoscloud_contract_list.rb +32 -24
  96. data/lib/chef/knife/ionoscloud_cube_server_create.rb +215 -0
  97. data/lib/chef/knife/ionoscloud_datacenter_create.rb +14 -12
  98. data/lib/chef/knife/ionoscloud_datacenter_delete.rb +8 -3
  99. data/lib/chef/knife/ionoscloud_datacenter_list.rb +3 -4
  100. data/lib/chef/knife/ionoscloud_firewall_create.rb +24 -7
  101. data/lib/chef/knife/ionoscloud_firewall_delete.rb +14 -6
  102. data/lib/chef/knife/ionoscloud_firewall_list.rb +5 -4
  103. data/lib/chef/knife/ionoscloud_flowlog_create.rb +121 -0
  104. data/lib/chef/knife/ionoscloud_flowlog_delete.rb +106 -0
  105. data/lib/chef/knife/ionoscloud_flowlog_list.rb +100 -0
  106. data/lib/chef/knife/ionoscloud_group_create.rb +46 -16
  107. data/lib/chef/knife/ionoscloud_group_delete.rb +18 -2
  108. data/lib/chef/knife/ionoscloud_group_get.rb +17 -2
  109. data/lib/chef/knife/ionoscloud_group_list.rb +7 -2
  110. data/lib/chef/knife/ionoscloud_group_user_add.rb +13 -2
  111. data/lib/chef/knife/ionoscloud_group_user_remove.rb +13 -2
  112. data/lib/chef/knife/ionoscloud_image_list.rb +1 -2
  113. data/lib/chef/knife/ionoscloud_ipblock_create.rb +13 -11
  114. data/lib/chef/knife/ionoscloud_ipblock_delete.rb +4 -3
  115. data/lib/chef/knife/ionoscloud_ipblock_list.rb +1 -2
  116. data/lib/chef/knife/ionoscloud_ipfailover_add.rb +15 -9
  117. data/lib/chef/knife/ionoscloud_ipfailover_remove.rb +9 -3
  118. data/lib/chef/knife/ionoscloud_k8s_create.rb +30 -28
  119. data/lib/chef/knife/ionoscloud_k8s_delete.rb +9 -2
  120. data/lib/chef/knife/ionoscloud_k8s_list.rb +0 -1
  121. data/lib/chef/knife/ionoscloud_kubeconfig_get.rb +0 -1
  122. data/lib/chef/knife/ionoscloud_label_add.rb +1 -2
  123. data/lib/chef/knife/ionoscloud_label_list.rb +1 -2
  124. data/lib/chef/knife/ionoscloud_label_remove.rb +1 -2
  125. data/lib/chef/knife/ionoscloud_lan_create.rb +14 -7
  126. data/lib/chef/knife/ionoscloud_lan_delete.rb +4 -4
  127. data/lib/chef/knife/ionoscloud_lan_list.rb +2 -5
  128. data/lib/chef/knife/ionoscloud_loadbalancer_create.rb +16 -7
  129. data/lib/chef/knife/ionoscloud_loadbalancer_delete.rb +10 -3
  130. data/lib/chef/knife/ionoscloud_loadbalancer_get.rb +13 -4
  131. data/lib/chef/knife/ionoscloud_loadbalancer_list.rb +1 -2
  132. data/lib/chef/knife/ionoscloud_loadbalancer_nic_add.rb +14 -5
  133. data/lib/chef/knife/ionoscloud_loadbalancer_nic_remove.rb +14 -5
  134. data/lib/chef/knife/ionoscloud_location_list.rb +5 -4
  135. data/lib/chef/knife/ionoscloud_natgateway_create.rb +71 -0
  136. data/lib/chef/knife/ionoscloud_natgateway_delete.rb +69 -0
  137. data/lib/chef/knife/ionoscloud_natgateway_lan_add.rb +82 -0
  138. data/lib/chef/knife/ionoscloud_natgateway_lan_remove.rb +58 -0
  139. data/lib/chef/knife/ionoscloud_natgateway_list.rb +49 -0
  140. data/lib/chef/knife/ionoscloud_natgateway_rule_add.rb +124 -0
  141. data/lib/chef/knife/ionoscloud_natgateway_rule_list.rb +63 -0
  142. data/lib/chef/knife/ionoscloud_natgateway_rule_remove.rb +72 -0
  143. data/lib/chef/knife/ionoscloud_networkloadbalancer_create.rb +95 -0
  144. data/lib/chef/knife/ionoscloud_networkloadbalancer_delete.rb +81 -0
  145. data/lib/chef/knife/ionoscloud_networkloadbalancer_list.rb +56 -0
  146. data/lib/chef/knife/ionoscloud_networkloadbalancer_rule_add.rb +150 -0
  147. data/lib/chef/knife/ionoscloud_networkloadbalancer_rule_list.rb +63 -0
  148. data/lib/chef/knife/ionoscloud_networkloadbalancer_rule_remove.rb +78 -0
  149. data/lib/chef/knife/ionoscloud_networkloadbalancer_rule_target_add.rb +141 -0
  150. data/lib/chef/knife/ionoscloud_networkloadbalancer_rule_target_list.rb +68 -0
  151. data/lib/chef/knife/ionoscloud_networkloadbalancer_rule_target_remove.rb +105 -0
  152. data/lib/chef/knife/ionoscloud_nic_create.rb +38 -19
  153. data/lib/chef/knife/ionoscloud_nic_delete.rb +11 -5
  154. data/lib/chef/knife/ionoscloud_nic_list.rb +9 -6
  155. data/lib/chef/knife/ionoscloud_node_delete.rb +6 -2
  156. data/lib/chef/knife/ionoscloud_node_list.rb +0 -2
  157. data/lib/chef/knife/ionoscloud_node_replace.rb +0 -1
  158. data/lib/chef/knife/ionoscloud_nodepool_create.rb +60 -38
  159. data/lib/chef/knife/ionoscloud_nodepool_delete.rb +32 -2
  160. data/lib/chef/knife/ionoscloud_nodepool_lan_add.rb +130 -0
  161. data/lib/chef/knife/ionoscloud_nodepool_lan_remove.rb +96 -0
  162. data/lib/chef/knife/ionoscloud_nodepool_list.rb +3 -2
  163. data/lib/chef/knife/ionoscloud_pcc_create.rb +18 -13
  164. data/lib/chef/knife/ionoscloud_pcc_delete.rb +10 -3
  165. data/lib/chef/knife/ionoscloud_pcc_list.rb +1 -2
  166. data/lib/chef/knife/ionoscloud_request_list.rb +1 -2
  167. data/lib/chef/knife/ionoscloud_request_status.rb +1 -2
  168. data/lib/chef/knife/ionoscloud_request_wait.rb +0 -1
  169. data/lib/chef/knife/ionoscloud_resource_list.rb +0 -1
  170. data/lib/chef/knife/ionoscloud_s3key_create.rb +7 -4
  171. data/lib/chef/knife/ionoscloud_s3key_delete.rb +7 -5
  172. data/lib/chef/knife/ionoscloud_s3key_list.rb +2 -3
  173. data/lib/chef/knife/{ionoscloud_server_get.rb → ionoscloud_server_console.rb} +11 -10
  174. data/lib/chef/knife/ionoscloud_server_create.rb +26 -15
  175. data/lib/chef/knife/ionoscloud_server_delete.rb +10 -3
  176. data/lib/chef/knife/ionoscloud_server_list.rb +16 -6
  177. data/lib/chef/knife/ionoscloud_server_reboot.rb +1 -2
  178. data/lib/chef/knife/ionoscloud_server_resume.rb +43 -0
  179. data/lib/chef/knife/ionoscloud_server_start.rb +1 -2
  180. data/lib/chef/knife/ionoscloud_server_stop.rb +1 -2
  181. data/lib/chef/knife/ionoscloud_server_suspend.rb +44 -0
  182. data/lib/chef/knife/ionoscloud_server_token.rb +42 -0
  183. data/lib/chef/knife/ionoscloud_server_upgrade.rb +44 -0
  184. data/lib/chef/knife/ionoscloud_share_create.rb +12 -8
  185. data/lib/chef/knife/ionoscloud_share_delete.rb +4 -3
  186. data/lib/chef/knife/ionoscloud_share_list.rb +0 -1
  187. data/lib/chef/knife/ionoscloud_snapshot_create.rb +10 -3
  188. data/lib/chef/knife/ionoscloud_snapshot_delete.rb +7 -3
  189. data/lib/chef/knife/ionoscloud_snapshot_list.rb +1 -2
  190. data/lib/chef/knife/ionoscloud_snapshot_restore.rb +2 -3
  191. data/lib/chef/knife/ionoscloud_template_list.rb +46 -0
  192. data/lib/chef/knife/ionoscloud_user_create.rb +20 -25
  193. data/lib/chef/knife/ionoscloud_user_delete.rb +7 -2
  194. data/lib/chef/knife/ionoscloud_user_list.rb +0 -1
  195. data/lib/chef/knife/ionoscloud_user_ssourl.rb +1 -2
  196. data/lib/chef/knife/ionoscloud_volume_attach.rb +1 -2
  197. data/lib/chef/knife/ionoscloud_volume_create.rb +31 -57
  198. data/lib/chef/knife/ionoscloud_volume_delete.rb +9 -3
  199. data/lib/chef/knife/ionoscloud_volume_detach.rb +9 -3
  200. data/lib/chef/knife/ionoscloud_volume_list.rb +2 -3
  201. data/lib/knife-ionoscloud/version.rb +1 -1
  202. data/spec/chef/knife/ionoscloud_backupunit_create_spec.rb +2 -2
  203. data/spec/chef/knife/ionoscloud_backupunit_delete_spec.rb +5 -5
  204. data/spec/chef/knife/ionoscloud_backupunit_list_spec.rb +1 -1
  205. data/spec/chef/knife/ionoscloud_backupunit_ssourl_spec.rb +3 -3
  206. data/spec/chef/knife/ionoscloud_base_spec.rb +4 -4
  207. data/spec/chef/knife/ionoscloud_composite_server_create_spec.rb +11 -8
  208. data/spec/chef/knife/ionoscloud_contract_list_spec.rb +32 -27
  209. data/spec/chef/knife/ionoscloud_cube_server_create_spec.rb +249 -0
  210. data/spec/chef/knife/ionoscloud_datacenter_create_spec.rb +3 -12
  211. data/spec/chef/knife/ionoscloud_datacenter_delete_spec.rb +5 -8
  212. data/spec/chef/knife/ionoscloud_datacenter_list_spec.rb +4 -4
  213. data/spec/chef/knife/ionoscloud_firewall_create_spec.rb +5 -3
  214. data/spec/chef/knife/ionoscloud_firewall_delete_spec.rb +6 -5
  215. data/spec/chef/knife/ionoscloud_firewall_list_spec.rb +5 -3
  216. data/spec/chef/knife/ionoscloud_flowlog_create_spec.rb +254 -0
  217. data/spec/chef/knife/ionoscloud_flowlog_delete_spec.rb +360 -0
  218. data/spec/chef/knife/ionoscloud_flowlog_list_spec.rb +264 -0
  219. data/spec/chef/knife/ionoscloud_group_create_spec.rb +6 -7
  220. data/spec/chef/knife/ionoscloud_group_delete_spec.rb +3 -0
  221. data/spec/chef/knife/ionoscloud_group_get_spec.rb +3 -0
  222. data/spec/chef/knife/ionoscloud_group_list_spec.rb +11 -2
  223. data/spec/chef/knife/ionoscloud_group_user_add_spec.rb +0 -3
  224. data/spec/chef/knife/ionoscloud_group_user_remove_spec.rb +0 -3
  225. data/spec/chef/knife/ionoscloud_image_list_spec.rb +2 -2
  226. data/spec/chef/knife/ionoscloud_ipblock_delete_spec.rb +0 -2
  227. data/spec/chef/knife/ionoscloud_ipblock_list_spec.rb +1 -1
  228. data/spec/chef/knife/ionoscloud_ipfailover_add_spec.rb +4 -5
  229. data/spec/chef/knife/ionoscloud_ipfailover_remove_spec.rb +7 -8
  230. data/spec/chef/knife/ionoscloud_k8s_create_spec.rb +0 -8
  231. data/spec/chef/knife/ionoscloud_k8s_delete_spec.rb +1 -7
  232. data/spec/chef/knife/ionoscloud_kubeconfig_get_spec.rb +2 -2
  233. data/spec/chef/knife/ionoscloud_label_add_spec.rb +10 -10
  234. data/spec/chef/knife/ionoscloud_label_list_spec.rb +14 -14
  235. data/spec/chef/knife/ionoscloud_label_remove_spec.rb +20 -20
  236. data/spec/chef/knife/ionoscloud_lan_create_spec.rb +3 -4
  237. data/spec/chef/knife/ionoscloud_lan_delete_spec.rb +5 -7
  238. data/spec/chef/knife/ionoscloud_lan_list_spec.rb +3 -5
  239. data/spec/chef/knife/ionoscloud_loadbalancer_create_spec.rb +3 -3
  240. data/spec/chef/knife/ionoscloud_loadbalancer_delete_spec.rb +5 -5
  241. data/spec/chef/knife/ionoscloud_loadbalancer_get_spec.rb +2 -2
  242. data/spec/chef/knife/ionoscloud_loadbalancer_list_spec.rb +2 -2
  243. data/spec/chef/knife/ionoscloud_loadbalancer_nic_add_spec.rb +6 -6
  244. data/spec/chef/knife/ionoscloud_loadbalancer_nic_remove_spec.rb +6 -6
  245. data/spec/chef/knife/ionoscloud_location_list_spec.rb +5 -3
  246. data/spec/chef/knife/ionoscloud_natgateway_create_spec.rb +77 -0
  247. data/spec/chef/knife/ionoscloud_natgateway_delete_spec.rb +118 -0
  248. data/spec/chef/knife/ionoscloud_natgateway_lan_add_spec.rb +143 -0
  249. data/spec/chef/knife/ionoscloud_natgateway_lan_remove_spec.rb +194 -0
  250. data/spec/chef/knife/ionoscloud_natgateway_list_spec.rb +79 -0
  251. data/spec/chef/knife/ionoscloud_natgateway_rule_add_spec.rb +98 -0
  252. data/spec/chef/knife/ionoscloud_natgateway_rule_list_spec.rb +92 -0
  253. data/spec/chef/knife/ionoscloud_natgateway_rule_remove_spec.rb +77 -0
  254. data/spec/chef/knife/ionoscloud_networkloadbalancer_create_spec.rb +80 -0
  255. data/spec/chef/knife/ionoscloud_networkloadbalancer_delete_spec.rb +119 -0
  256. data/spec/chef/knife/ionoscloud_networkloadbalancer_list_spec.rb +88 -0
  257. data/spec/chef/knife/ionoscloud_networkloadbalancer_rule_add_spec.rb +104 -0
  258. data/spec/chef/knife/ionoscloud_networkloadbalancer_rule_list_spec.rb +89 -0
  259. data/spec/chef/knife/ionoscloud_networkloadbalancer_rule_remove_spec.rb +124 -0
  260. data/spec/chef/knife/ionoscloud_networkloadbalancer_rule_target_add_spec.rb +109 -0
  261. data/spec/chef/knife/ionoscloud_networkloadbalancer_rule_target_list_spec.rb +85 -0
  262. data/spec/chef/knife/ionoscloud_networkloadbalancer_rule_target_remove_spec.rb +263 -0
  263. data/spec/chef/knife/ionoscloud_nic_create_spec.rb +9 -5
  264. data/spec/chef/knife/ionoscloud_nic_delete_spec.rb +8 -6
  265. data/spec/chef/knife/ionoscloud_nic_list_spec.rb +12 -6
  266. data/spec/chef/knife/ionoscloud_nodepool_create_spec.rb +20 -13
  267. data/spec/chef/knife/ionoscloud_nodepool_delete_spec.rb +13 -27
  268. data/spec/chef/knife/ionoscloud_nodepool_lan_add_spec.rb +226 -0
  269. data/spec/chef/knife/ionoscloud_nodepool_lan_remove.rb +199 -0
  270. data/spec/chef/knife/ionoscloud_nodepool_list_spec.rb +3 -1
  271. data/spec/chef/knife/ionoscloud_pcc_create_spec.rb +8 -11
  272. data/spec/chef/knife/ionoscloud_pcc_delete_spec.rb +6 -6
  273. data/spec/chef/knife/ionoscloud_pcc_list_spec.rb +2 -2
  274. data/spec/chef/knife/ionoscloud_request_list_spec.rb +24 -25
  275. data/spec/chef/knife/ionoscloud_request_status_spec.rb +3 -3
  276. data/spec/chef/knife/ionoscloud_s3key_create_spec.rb +2 -2
  277. data/spec/chef/knife/ionoscloud_s3key_delete_spec.rb +5 -5
  278. data/spec/chef/knife/ionoscloud_s3key_list_spec.rb +2 -2
  279. data/spec/chef/knife/ionoscloud_server_console_spec.rb +97 -0
  280. data/spec/chef/knife/ionoscloud_server_create_spec.rb +3 -3
  281. data/spec/chef/knife/ionoscloud_server_delete_spec.rb +5 -5
  282. data/spec/chef/knife/ionoscloud_server_list_spec.rb +63 -5
  283. data/spec/chef/knife/ionoscloud_server_reboot_spec.rb +3 -5
  284. data/spec/chef/knife/ionoscloud_server_resume_spec.rb +93 -0
  285. data/spec/chef/knife/ionoscloud_server_start_spec.rb +3 -5
  286. data/spec/chef/knife/ionoscloud_server_stop_spec.rb +3 -5
  287. data/spec/chef/knife/ionoscloud_server_suspend_spec.rb +93 -0
  288. data/spec/chef/knife/ionoscloud_server_token_spec.rb +97 -0
  289. data/spec/chef/knife/ionoscloud_server_upgrade_spec.rb +96 -0
  290. data/spec/chef/knife/ionoscloud_snapshot_create_spec.rb +3 -16
  291. data/spec/chef/knife/ionoscloud_snapshot_delete_spec.rb +5 -17
  292. data/spec/chef/knife/ionoscloud_snapshot_list_spec.rb +2 -2
  293. data/spec/chef/knife/ionoscloud_snapshot_restore_spec.rb +3 -3
  294. data/spec/chef/knife/ionoscloud_template_list_spec.rb +78 -0
  295. data/spec/chef/knife/ionoscloud_user_create_spec.rb +1 -3
  296. data/spec/chef/knife/ionoscloud_user_delete_spec.rb +2 -4
  297. data/spec/chef/knife/ionoscloud_user_ssourl_spec.rb +3 -3
  298. data/spec/chef/knife/ionoscloud_volume_attach_spec.rb +4 -4
  299. data/spec/chef/knife/ionoscloud_volume_create_spec.rb +6 -15
  300. data/spec/chef/knife/ionoscloud_volume_delete_spec.rb +5 -14
  301. data/spec/chef/knife/ionoscloud_volume_detach_spec.rb +5 -14
  302. data/spec/chef/knife/ionoscloud_volume_list_spec.rb +4 -4
  303. data/spec/spec_helper.rb +270 -116
  304. metadata +93 -138
  305. data/docs/subcommands/backupunit_get.md +0 -35
  306. data/docs/subcommands/backupunit_update.md +0 -41
  307. data/docs/subcommands/datacenter_get.md +0 -35
  308. data/docs/subcommands/datacenter_update.md +0 -44
  309. data/docs/subcommands/firewall_get.md +0 -47
  310. data/docs/subcommands/firewall_update.md +0 -71
  311. data/docs/subcommands/group_update.md +0 -65
  312. data/docs/subcommands/ipblock_get.md +0 -35
  313. data/docs/subcommands/ipblock_update.md +0 -38
  314. data/docs/subcommands/k8s_get.md +0 -35
  315. data/docs/subcommands/k8s_update.md +0 -53
  316. data/docs/subcommands/lan_get.md +0 -39
  317. data/docs/subcommands/lan_update.md +0 -51
  318. data/docs/subcommands/loadbalancer_update.md +0 -48
  319. data/docs/subcommands/nic_get.md +0 -43
  320. data/docs/subcommands/nic_update.md +0 -58
  321. data/docs/subcommands/node_get.md +0 -43
  322. data/docs/subcommands/nodepool_get.md +0 -39
  323. data/docs/subcommands/nodepool_update.md +0 -69
  324. data/docs/subcommands/pcc_get.md +0 -35
  325. data/docs/subcommands/pcc_update.md +0 -41
  326. data/docs/subcommands/request_get.md +0 -35
  327. data/docs/subcommands/s3key_get.md +0 -39
  328. data/docs/subcommands/server_get.md +0 -39
  329. data/docs/subcommands/server_update.md +0 -60
  330. data/docs/subcommands/share_get.md +0 -39
  331. data/docs/subcommands/share_update.md +0 -45
  332. data/docs/subcommands/snapshot_get.md +0 -35
  333. data/docs/subcommands/snapshot_update.md +0 -77
  334. data/docs/subcommands/user_get.md +0 -35
  335. data/docs/subcommands/user_update.md +0 -56
  336. data/docs/subcommands/volume_get.md +0 -39
  337. data/docs/subcommands/volume_update.md +0 -66
  338. data/lib/chef/knife/ionoscloud_backupunit_get.rb +0 -33
  339. data/lib/chef/knife/ionoscloud_backupunit_update.rb +0 -62
  340. data/lib/chef/knife/ionoscloud_datacenter_get.rb +0 -33
  341. data/lib/chef/knife/ionoscloud_datacenter_update.rb +0 -67
  342. data/lib/chef/knife/ionoscloud_firewall_get.rb +0 -50
  343. data/lib/chef/knife/ionoscloud_firewall_update.rb +0 -131
  344. data/lib/chef/knife/ionoscloud_group_update.rb +0 -114
  345. data/lib/chef/knife/ionoscloud_ipblock_get.rb +0 -33
  346. data/lib/chef/knife/ionoscloud_ipblock_update.rb +0 -57
  347. data/lib/chef/knife/ionoscloud_k8s_get.rb +0 -33
  348. data/lib/chef/knife/ionoscloud_k8s_update.rb +0 -99
  349. data/lib/chef/knife/ionoscloud_lan_get.rb +0 -38
  350. data/lib/chef/knife/ionoscloud_lan_update.rb +0 -87
  351. data/lib/chef/knife/ionoscloud_loadbalancer_update.rb +0 -73
  352. data/lib/chef/knife/ionoscloud_nic_get.rb +0 -47
  353. data/lib/chef/knife/ionoscloud_nic_update.rb +0 -93
  354. data/lib/chef/knife/ionoscloud_node_get.rb +0 -47
  355. data/lib/chef/knife/ionoscloud_nodepool_get.rb +0 -41
  356. data/lib/chef/knife/ionoscloud_nodepool_update.rb +0 -124
  357. data/lib/chef/knife/ionoscloud_pcc_get.rb +0 -33
  358. data/lib/chef/knife/ionoscloud_pcc_update.rb +0 -63
  359. data/lib/chef/knife/ionoscloud_request_get.rb +0 -40
  360. data/lib/chef/knife/ionoscloud_s3key_get.rb +0 -38
  361. data/lib/chef/knife/ionoscloud_server_update.rb +0 -97
  362. data/lib/chef/knife/ionoscloud_share_get.rb +0 -38
  363. data/lib/chef/knife/ionoscloud_share_update.rb +0 -70
  364. data/lib/chef/knife/ionoscloud_snapshot_get.rb +0 -32
  365. data/lib/chef/knife/ionoscloud_snapshot_update.rb +0 -126
  366. data/lib/chef/knife/ionoscloud_user_get.rb +0 -32
  367. data/lib/chef/knife/ionoscloud_user_update.rb +0 -92
  368. data/lib/chef/knife/ionoscloud_volume_get.rb +0 -36
  369. data/lib/chef/knife/ionoscloud_volume_update.rb +0 -106
  370. data/spec/chef/knife/ionoscloud_backupunit_get_spec.rb +0 -65
  371. data/spec/chef/knife/ionoscloud_backupunit_update_spec.rb +0 -78
  372. data/spec/chef/knife/ionoscloud_datacenter_get_spec.rb +0 -69
  373. data/spec/chef/knife/ionoscloud_datacenter_update_spec.rb +0 -82
  374. data/spec/chef/knife/ionoscloud_firewall_get_spec.rb +0 -76
  375. data/spec/chef/knife/ionoscloud_firewall_update_spec.rb +0 -116
  376. data/spec/chef/knife/ionoscloud_group_update_spec.rb +0 -109
  377. data/spec/chef/knife/ionoscloud_ipblock_get_spec.rb +0 -66
  378. data/spec/chef/knife/ionoscloud_ipblock_update_spec.rb +0 -79
  379. data/spec/chef/knife/ionoscloud_k8s_get_spec.rb +0 -73
  380. data/spec/chef/knife/ionoscloud_k8s_update_spec.rb +0 -115
  381. data/spec/chef/knife/ionoscloud_lan_get_spec.rb +0 -68
  382. data/spec/chef/knife/ionoscloud_lan_update_spec.rb +0 -91
  383. data/spec/chef/knife/ionoscloud_loadbalancer_update_spec.rb +0 -89
  384. data/spec/chef/knife/ionoscloud_nic_get_spec.rb +0 -70
  385. data/spec/chef/knife/ionoscloud_nic_update_spec.rb +0 -92
  386. data/spec/chef/knife/ionoscloud_node_get_spec.rb +0 -70
  387. data/spec/chef/knife/ionoscloud_nodepool_get_spec.rb +0 -83
  388. data/spec/chef/knife/ionoscloud_nodepool_update_spec.rb +0 -130
  389. data/spec/chef/knife/ionoscloud_pcc_get_spec.rb +0 -71
  390. data/spec/chef/knife/ionoscloud_pcc_update_spec.rb +0 -83
  391. data/spec/chef/knife/ionoscloud_request_get_spec.rb +0 -69
  392. data/spec/chef/knife/ionoscloud_s3key_get_spec.rb +0 -66
  393. data/spec/chef/knife/ionoscloud_server_get_spec.rb +0 -71
  394. data/spec/chef/knife/ionoscloud_server_update_spec.rb +0 -102
  395. data/spec/chef/knife/ionoscloud_share_get_spec.rb +0 -66
  396. data/spec/chef/knife/ionoscloud_share_update_spec.rb +0 -91
  397. data/spec/chef/knife/ionoscloud_snapshot_get_spec.rb +0 -79
  398. data/spec/chef/knife/ionoscloud_snapshot_update_spec.rb +0 -113
  399. data/spec/chef/knife/ionoscloud_user_get_spec.rb +0 -70
  400. data/spec/chef/knife/ionoscloud_user_update_spec.rb +0 -110
  401. data/spec/chef/knife/ionoscloud_volume_get_spec.rb +0 -80
  402. data/spec/chef/knife/ionoscloud_volume_update_spec.rb +0 -115
@@ -12,7 +12,7 @@ describe Chef::Knife::IonoscloudSnapshotList do
12
12
  end
13
13
 
14
14
  describe '#run' do
15
- it 'should call SnapshotApi.snapshots_get' do
15
+ it 'should call SnapshotsApi.snapshots_get' do
16
16
  snapshots = snapshots_mock
17
17
  subject_config = {
18
18
  ionoscloud_username: 'email',
@@ -42,7 +42,7 @@ describe Chef::Knife::IonoscloudSnapshotList do
42
42
  {
43
43
  method: 'GET',
44
44
  path: '/snapshots',
45
- operation: :'SnapshotApi.snapshots_get',
45
+ operation: :'SnapshotsApi.snapshots_get',
46
46
  return_type: 'Snapshots',
47
47
  result: snapshots,
48
48
  },
@@ -12,7 +12,7 @@ describe Chef::Knife::IonoscloudSnapshotRestore do
12
12
  end
13
13
 
14
14
  describe '#run' do
15
- it 'should call VolumeApi.datacenters_volumes_create_snapshot_post with the expected arguments and output based on what it receives' do
15
+ it 'should call VolumesApi.datacenters_volumes_create_snapshot_post with the expected arguments and output based on what it receives' do
16
16
  snapshot = snapshot_mock
17
17
  volume = volume_mock
18
18
  subject_config = {
@@ -41,13 +41,13 @@ describe Chef::Knife::IonoscloudSnapshotRestore do
41
41
  {
42
42
  method: 'POST',
43
43
  path: "/datacenters/#{subject_config[:datacenter_id]}/volumes/#{volume.id}/restore-snapshot",
44
- operation: :'VolumeApi.datacenters_volumes_restore_snapshot_post',
44
+ operation: :'VolumesApi.datacenters_volumes_restore_snapshot_post',
45
45
  form_params: { 'snapshotId' => snapshot.id },
46
46
  },
47
47
  {
48
48
  method: 'GET',
49
49
  path: "/datacenters/#{subject_config[:datacenter_id]}/volumes/#{volume.id}",
50
- operation: :'VolumeApi.datacenters_volumes_find_by_id',
50
+ operation: :'VolumesApi.datacenters_volumes_find_by_id',
51
51
  return_type: 'Volume',
52
52
  result: volume,
53
53
  },
@@ -0,0 +1,78 @@
1
+ require 'spec_helper'
2
+ require 'ionoscloud_template_list'
3
+
4
+ Chef::Knife::IonoscloudTemplateList.load_deps
5
+
6
+ describe Chef::Knife::IonoscloudTemplateList do
7
+ before :each do
8
+ subject { Chef::Knife::IonoscloudTemplateList.new }
9
+
10
+ allow(subject).to receive(:puts)
11
+ allow(subject).to receive(:print)
12
+ end
13
+
14
+ describe '#run' do
15
+ it 'should call TemplatesApi.templates_get' do
16
+ templates = templates_mock
17
+ subject_config = {
18
+ ionoscloud_username: 'email',
19
+ ionoscloud_password: 'password',
20
+ }
21
+
22
+ subject_config.each { |key, value| subject.config[key] = value }
23
+
24
+ template_list = [
25
+ subject.ui.color('ID', :bold),
26
+ subject.ui.color('Name', :bold),
27
+ subject.ui.color('Cores', :bold),
28
+ subject.ui.color('RAM', :bold),
29
+ subject.ui.color('Storage Size', :bold),
30
+ templates.items[0].id,
31
+ templates.items[0].properties.name,
32
+ Integer(templates.items[0].properties.cores),
33
+ Integer(templates.items[0].properties.ram),
34
+ Integer(templates.items[0].properties.storage_size),
35
+ templates.items[1].id,
36
+ templates.items[1].properties.name,
37
+ Integer(templates.items[1].properties.cores),
38
+ Integer(templates.items[1].properties.ram),
39
+ Integer(templates.items[1].properties.storage_size),
40
+ ]
41
+
42
+ expect(subject.ui).to receive(:list).with(template_list, :uneven_columns_across, 5)
43
+
44
+ mock_call_api(
45
+ subject,
46
+ [
47
+ {
48
+ method: 'GET',
49
+ path: '/templates',
50
+ operation: :'TemplatesApi.templates_get',
51
+ return_type: 'Templates',
52
+ result: templates,
53
+ },
54
+ ],
55
+ )
56
+
57
+ expect { subject.run }.not_to raise_error(Exception)
58
+ end
59
+
60
+ it 'should not make any call if any required option is missing' do
61
+ required_options = subject.instance_variable_get(:@required_options)
62
+
63
+ arrays_without_one_element(required_options).each do |test_case|
64
+
65
+ test_case[:array].each { |value| subject.config[value] = 'test' }
66
+
67
+ expect(subject).to receive(:puts).with("Missing required parameters #{test_case[:removed]}")
68
+ expect(subject.api_client).not_to receive(:call_api)
69
+
70
+ expect { subject.run }.to raise_error(SystemExit) do |error|
71
+ expect(error.status).to eq(1)
72
+ end
73
+
74
+ required_options.each { |value| subject.config[value] = nil }
75
+ end
76
+ end
77
+ end
78
+ end
@@ -32,9 +32,7 @@ describe Chef::Knife::IonoscloudUserCreate do
32
32
  expect(subject).to receive(:puts).with("Lastname: #{user.properties.lastname}")
33
33
  expect(subject).to receive(:puts).with("Email: #{user.properties.email}")
34
34
  expect(subject).to receive(:puts).with("Administrator: #{user.properties.administrator}")
35
- expect(subject).to receive(:puts).with("Force 2-Factor Auth: #{user.properties.force_sec_auth}")
36
- expect(subject).to receive(:puts).with("2-Factor Auth Active: #{user.properties.sec_auth_active}")
37
- expect(subject).to receive(:puts).with("Active: #{user.properties.active}")
35
+ expect(subject).to receive(:puts).with("2-Factor Auth: #{user.properties.force_sec_auth}")
38
36
 
39
37
  mock_wait_for(subject)
40
38
  mock_call_api(
@@ -27,10 +27,8 @@ describe Chef::Knife::IonoscloudUserDelete do
27
27
  expect(subject).to receive(:puts).with("Firstname: #{user.properties.firstname}")
28
28
  expect(subject).to receive(:puts).with("Lastname: #{user.properties.lastname}")
29
29
  expect(subject).to receive(:puts).with("Email: #{user.properties.email}")
30
- expect(subject).to receive(:puts).with("Administrator: #{user.properties.administrator}")
31
- expect(subject).to receive(:puts).with("Force 2-Factor Auth: #{user.properties.force_sec_auth}")
32
- expect(subject).to receive(:puts).with("2-Factor Auth Active: #{user.properties.sec_auth_active}")
33
- expect(subject).to receive(:puts).with("Active: #{user.properties.active}")
30
+ expect(subject).to receive(:puts).with("Administrator: #{user.properties.administrator.to_s}")
31
+ expect(subject).to receive(:puts).with("2-Factor Auth: #{user.properties.force_sec_auth.to_s}")
34
32
  expect(subject.ui).to receive(:warn).with("Deleted User #{user.id}. Request ID: ")
35
33
 
36
34
  expect(subject.api_client).not_to receive(:wait_for)
@@ -7,7 +7,7 @@ describe Chef::Knife::IonoscloudUserSsourl do
7
7
  subject { Chef::Knife::IonoscloudUserSsourl.new }
8
8
 
9
9
  describe '#run' do
10
- it 'should call UserManagementApi.um_users_ssourl_get and output the received url when the user ID is valid' do
10
+ it 'should call UserS3KeysApi.um_users_ssourl_get and output the received url when the user ID is valid' do
11
11
  user = user_mock
12
12
  sso_url = sso_url_mock
13
13
  subject_config = {
@@ -27,7 +27,7 @@ describe Chef::Knife::IonoscloudUserSsourl do
27
27
  {
28
28
  method: 'GET',
29
29
  path: "/um/users/#{user.id}/s3ssourl",
30
- operation: :'UserManagementApi.um_users_s3ssourl_get',
30
+ operation: :'UserS3KeysApi.um_users_s3ssourl_get',
31
31
  return_type: 'S3ObjectStorageSSO',
32
32
  result: sso_url,
33
33
  },
@@ -59,7 +59,7 @@ describe Chef::Knife::IonoscloudUserSsourl do
59
59
  {
60
60
  method: 'GET',
61
61
  path: "/um/users/#{user_id}/s3ssourl",
62
- operation: :'UserManagementApi.um_users_s3ssourl_get',
62
+ operation: :'UserS3KeysApi.um_users_s3ssourl_get',
63
63
  return_type: 'S3ObjectStorageSSO',
64
64
  exception: Ionoscloud::ApiError.new(code: 404),
65
65
  },
@@ -12,7 +12,7 @@ describe Chef::Knife::IonoscloudVolumeAttach do
12
12
  end
13
13
 
14
14
  describe '#run' do
15
- it 'should call ServerApi.datacenters_servers_volumes_post when the ID is valid' do
15
+ it 'should call ServersApi.datacenters_servers_volumes_post when the ID is valid' do
16
16
  volume = volume_mock
17
17
  subject_config = {
18
18
  ionoscloud_username: 'email',
@@ -35,7 +35,7 @@ describe Chef::Knife::IonoscloudVolumeAttach do
35
35
  {
36
36
  method: 'POST',
37
37
  path: "/datacenters/#{subject_config[:datacenter_id]}/servers/#{subject_config[:server_id]}/volumes",
38
- operation: :'ServerApi.datacenters_servers_volumes_post',
38
+ operation: :'ServersApi.datacenters_servers_volumes_post',
39
39
  body: { id: volume.id },
40
40
  return_type: 'Volume',
41
41
  result: volume,
@@ -46,7 +46,7 @@ describe Chef::Knife::IonoscloudVolumeAttach do
46
46
  expect { subject.run }.not_to raise_error(Exception)
47
47
  end
48
48
 
49
- it 'should not call ServerApi.datacenters_servers_volumes_post when the ID is not valid' do
49
+ it 'should not call ServersApi.datacenters_servers_volumes_post when the ID is not valid' do
50
50
  volume_id = 'invalid_id'
51
51
  subject_config = {
52
52
  ionoscloud_username: 'email',
@@ -67,7 +67,7 @@ describe Chef::Knife::IonoscloudVolumeAttach do
67
67
  {
68
68
  method: 'POST',
69
69
  path: "/datacenters/#{subject_config[:datacenter_id]}/servers/#{subject_config[:server_id]}/volumes",
70
- operation: :'ServerApi.datacenters_servers_volumes_post',
70
+ operation: :'ServersApi.datacenters_servers_volumes_post',
71
71
  body: { id: volume_id },
72
72
  return_type: 'Volume',
73
73
  exception: Ionoscloud::ApiError.new(code: 404),
@@ -12,7 +12,7 @@ describe Chef::Knife::IonoscloudVolumeCreate do
12
12
  end
13
13
 
14
14
  describe '#run' do
15
- it 'should call VolumeApi.datacenters_volumes_post with the expected arguments and output based on what it receives' do
15
+ it 'should call VolumesApi.datacenters_volumes_post with the expected arguments and output based on what it receives' do
16
16
  volume = volume_mock
17
17
  subject_config = {
18
18
  ionoscloud_username: 'email',
@@ -23,17 +23,17 @@ describe Chef::Knife::IonoscloudVolumeCreate do
23
23
  type: volume.properties.type,
24
24
  bus: volume.properties.bus,
25
25
  availability_zone: volume.properties.availability_zone,
26
- image_alias: 'debian:latest',
27
26
  image_password: 'K3tTj8G14a3EgKyNeeiY',
27
+ image: volume.properties.image,
28
+ backupunit_id: volume.properties.backupunit_id,
29
+ user_data: volume.properties.user_data,
28
30
  }
29
31
 
30
32
  subject_config.each { |key, value| subject.config[key] = value }
31
33
 
32
34
  expected_body = volume.properties.to_hash
33
- expected_body.delete(:image)
34
35
  expected_body.delete(:licenceType)
35
36
 
36
- expected_body[:imageAlias] = subject_config[:image_alias]
37
37
  expected_body[:imagePassword] = subject_config[:image_password]
38
38
 
39
39
  expect(subject).to receive(:puts).with("ID: #{volume.id}")
@@ -43,16 +43,7 @@ describe Chef::Knife::IonoscloudVolumeCreate do
43
43
  expect(subject).to receive(:puts).with("Image: #{volume.properties.image}")
44
44
  expect(subject).to receive(:puts).with("Type: #{subject_config[:type]}")
45
45
  expect(subject).to receive(:puts).with("Licence Type: #{volume.properties.licence_type}")
46
- expect(subject).to receive(:puts).with("Backupunit ID: #{volume.properties.backupunit_id}")
47
- expect(subject).to receive(:puts).with("User Data: #{volume.properties.user_data}")
48
46
  expect(subject).to receive(:puts).with("Zone: #{subject_config[:availability_zone]}")
49
- expect(subject).to receive(:puts).with("CPU Hot Plug: #{volume.properties.cpu_hot_plug}")
50
- expect(subject).to receive(:puts).with("RAM Hot Plug: #{volume.properties.ram_hot_plug}")
51
- expect(subject).to receive(:puts).with("NIC Hot Plug: #{volume.properties.nic_hot_plug}")
52
- expect(subject).to receive(:puts).with("NIC Hot Unplug: #{volume.properties.nic_hot_unplug}")
53
- expect(subject).to receive(:puts).with("Disc Virtio Hot Plug: #{volume.properties.disc_virtio_hot_plug}")
54
- expect(subject).to receive(:puts).with("Disc Virtio Hot Unplug: #{volume.properties.disc_virtio_hot_unplug}")
55
- expect(subject).to receive(:puts).with("Device number: #{volume.properties.device_number}")
56
47
 
57
48
  mock_wait_for(subject)
58
49
  mock_call_api(
@@ -61,7 +52,7 @@ describe Chef::Knife::IonoscloudVolumeCreate do
61
52
  {
62
53
  method: 'POST',
63
54
  path: "/datacenters/#{subject_config[:datacenter_id]}/volumes",
64
- operation: :'VolumeApi.datacenters_volumes_post',
55
+ operation: :'VolumesApi.datacenters_volumes_post',
65
56
  return_type: 'Volume',
66
57
  body: { properties: expected_body },
67
58
  result: volume,
@@ -69,7 +60,7 @@ describe Chef::Knife::IonoscloudVolumeCreate do
69
60
  {
70
61
  method: 'GET',
71
62
  path: "/datacenters/#{subject_config[:datacenter_id]}/volumes/#{volume.id}",
72
- operation: :'VolumeApi.datacenters_volumes_find_by_id',
63
+ operation: :'VolumesApi.datacenters_volumes_find_by_id',
73
64
  return_type: 'Volume',
74
65
  result: volume,
75
66
  },
@@ -12,7 +12,7 @@ describe Chef::Knife::IonoscloudVolumeDelete do
12
12
  end
13
13
 
14
14
  describe '#run' do
15
- it 'should call VolumeApi.datacenters_volumes_delete when the ID is valid' do
15
+ it 'should call VolumesApi.datacenters_volumes_delete when the ID is valid' do
16
16
  volume = volume_mock
17
17
  subject_config = {
18
18
  ionoscloud_username: 'email',
@@ -31,16 +31,7 @@ describe Chef::Knife::IonoscloudVolumeDelete do
31
31
  expect(subject).to receive(:puts).with("Image: #{volume.properties.image}")
32
32
  expect(subject).to receive(:puts).with("Type: #{volume.properties.type}")
33
33
  expect(subject).to receive(:puts).with("Licence Type: #{volume.properties.licence_type}")
34
- expect(subject).to receive(:puts).with("Backupunit ID: #{volume.properties.backupunit_id}")
35
- expect(subject).to receive(:puts).with("User Data: #{volume.properties.user_data}")
36
34
  expect(subject).to receive(:puts).with("Zone: #{volume.properties.availability_zone}")
37
- expect(subject).to receive(:puts).with("CPU Hot Plug: #{volume.properties.cpu_hot_plug}")
38
- expect(subject).to receive(:puts).with("RAM Hot Plug: #{volume.properties.ram_hot_plug}")
39
- expect(subject).to receive(:puts).with("NIC Hot Plug: #{volume.properties.nic_hot_plug}")
40
- expect(subject).to receive(:puts).with("NIC Hot Unplug: #{volume.properties.nic_hot_unplug}")
41
- expect(subject).to receive(:puts).with("Disc Virtio Hot Plug: #{volume.properties.disc_virtio_hot_plug}")
42
- expect(subject).to receive(:puts).with("Disc Virtio Hot Unplug: #{volume.properties.disc_virtio_hot_unplug}")
43
- expect(subject).to receive(:puts).with("Device number: #{volume.properties.device_number}")
44
35
  expect(subject.ui).to receive(:warn).with("Deleted Volume #{volume.id}. Request ID: ")
45
36
 
46
37
  expect(subject).not_to receive(:wait_for)
@@ -51,14 +42,14 @@ describe Chef::Knife::IonoscloudVolumeDelete do
51
42
  {
52
43
  method: 'GET',
53
44
  path: "/datacenters/#{subject_config[:datacenter_id]}/volumes/#{volume.id}",
54
- operation: :'VolumeApi.datacenters_volumes_find_by_id',
45
+ operation: :'VolumesApi.datacenters_volumes_find_by_id',
55
46
  return_type: 'Volume',
56
47
  result: volume,
57
48
  },
58
49
  {
59
50
  method: 'DELETE',
60
51
  path: "/datacenters/#{subject_config[:datacenter_id]}/volumes/#{volume.id}",
61
- operation: :'VolumeApi.datacenters_volumes_delete',
52
+ operation: :'VolumesApi.datacenters_volumes_delete',
62
53
  },
63
54
  ],
64
55
  )
@@ -66,7 +57,7 @@ describe Chef::Knife::IonoscloudVolumeDelete do
66
57
  expect { subject.run }.not_to raise_error(Exception)
67
58
  end
68
59
 
69
- it 'should not call VolumeApi.datacenters_volumes_delete when the ID is not valid' do
60
+ it 'should not call VolumesApi.datacenters_volumes_delete when the ID is not valid' do
70
61
  volume_id = 'invalid_id'
71
62
  subject_config = {
72
63
  ionoscloud_username: 'email',
@@ -86,7 +77,7 @@ describe Chef::Knife::IonoscloudVolumeDelete do
86
77
  {
87
78
  method: 'GET',
88
79
  path: "/datacenters/#{subject_config[:datacenter_id]}/volumes/#{volume_id}",
89
- operation: :'VolumeApi.datacenters_volumes_find_by_id',
80
+ operation: :'VolumesApi.datacenters_volumes_find_by_id',
90
81
  return_type: 'Volume',
91
82
  exception: Ionoscloud::ApiError.new(code: 404),
92
83
  },
@@ -12,7 +12,7 @@ describe Chef::Knife::IonoscloudVolumeDetach do
12
12
  end
13
13
 
14
14
  describe '#run' do
15
- it 'should call ServerApi.datacenters_servers_volumes_delete when the ID is valid' do
15
+ it 'should call ServersApi.datacenters_servers_volumes_delete when the ID is valid' do
16
16
  volume = volume_mock
17
17
  subject_config = {
18
18
  ionoscloud_username: 'email',
@@ -32,16 +32,7 @@ describe Chef::Knife::IonoscloudVolumeDetach do
32
32
  expect(subject).to receive(:puts).with("Image: #{volume.properties.image}")
33
33
  expect(subject).to receive(:puts).with("Type: #{volume.properties.type}")
34
34
  expect(subject).to receive(:puts).with("Licence Type: #{volume.properties.licence_type}")
35
- expect(subject).to receive(:puts).with("Backupunit ID: #{volume.properties.backupunit_id}")
36
- expect(subject).to receive(:puts).with("User Data: #{volume.properties.user_data}")
37
35
  expect(subject).to receive(:puts).with("Zone: #{volume.properties.availability_zone}")
38
- expect(subject).to receive(:puts).with("CPU Hot Plug: #{volume.properties.cpu_hot_plug}")
39
- expect(subject).to receive(:puts).with("RAM Hot Plug: #{volume.properties.ram_hot_plug}")
40
- expect(subject).to receive(:puts).with("NIC Hot Plug: #{volume.properties.nic_hot_plug}")
41
- expect(subject).to receive(:puts).with("NIC Hot Unplug: #{volume.properties.nic_hot_unplug}")
42
- expect(subject).to receive(:puts).with("Disc Virtio Hot Plug: #{volume.properties.disc_virtio_hot_plug}")
43
- expect(subject).to receive(:puts).with("Disc Virtio Hot Unplug: #{volume.properties.disc_virtio_hot_unplug}")
44
- expect(subject).to receive(:puts).with("Device number: #{volume.properties.device_number}")
45
36
  expect(subject.ui).to receive(:msg).with("Detaching Volume #{volume.id} from server. Request ID: ")
46
37
 
47
38
  expect(subject).not_to receive(:wait_for)
@@ -52,14 +43,14 @@ describe Chef::Knife::IonoscloudVolumeDetach do
52
43
  {
53
44
  method: 'GET',
54
45
  path: "/datacenters/#{subject_config[:datacenter_id]}/servers/#{subject_config[:server_id]}/volumes/#{volume.id}",
55
- operation: :'ServerApi.datacenters_servers_volumes_find_by_id',
46
+ operation: :'ServersApi.datacenters_servers_volumes_find_by_id',
56
47
  return_type: 'Volume',
57
48
  result: volume,
58
49
  },
59
50
  {
60
51
  method: 'DELETE',
61
52
  path: "/datacenters/#{subject_config[:datacenter_id]}/servers/#{subject_config[:server_id]}/volumes/#{volume.id}",
62
- operation: :'ServerApi.datacenters_servers_volumes_delete',
53
+ operation: :'ServersApi.datacenters_servers_volumes_delete',
63
54
  },
64
55
  ],
65
56
  )
@@ -67,7 +58,7 @@ describe Chef::Knife::IonoscloudVolumeDetach do
67
58
  expect { subject.run }.not_to raise_error(Exception)
68
59
  end
69
60
 
70
- it 'should not call ServerApi.datacenters_servers_volumes_delete when the ID is not valid' do
61
+ it 'should not call ServersApi.datacenters_servers_volumes_delete when the ID is not valid' do
71
62
  volume_id = 'invalid_id'
72
63
  subject_config = {
73
64
  ionoscloud_username: 'email',
@@ -88,7 +79,7 @@ describe Chef::Knife::IonoscloudVolumeDetach do
88
79
  {
89
80
  method: 'GET',
90
81
  path: "/datacenters/#{subject_config[:datacenter_id]}/servers/#{subject_config[:server_id]}/volumes/#{volume_id}",
91
- operation: :'ServerApi.datacenters_servers_volumes_find_by_id',
82
+ operation: :'ServersApi.datacenters_servers_volumes_find_by_id',
92
83
  return_type: 'Volume',
93
84
  exception: Ionoscloud::ApiError.new(code: 404),
94
85
  },
@@ -41,7 +41,7 @@ describe Chef::Knife::IonoscloudVolumeList do
41
41
  end
42
42
 
43
43
  describe '#run' do
44
- it 'should call VolumeApi.datacenters_volumes_get when no server_id is set' do
44
+ it 'should call VolumesApi.datacenters_volumes_get when no server_id is set' do
45
45
  subject_config = {
46
46
  ionoscloud_username: 'email',
47
47
  ionoscloud_password: 'password',
@@ -58,7 +58,7 @@ describe Chef::Knife::IonoscloudVolumeList do
58
58
  {
59
59
  method: 'GET',
60
60
  path: "/datacenters/#{subject_config[:datacenter_id]}/volumes",
61
- operation: :'VolumeApi.datacenters_volumes_get',
61
+ operation: :'VolumesApi.datacenters_volumes_get',
62
62
  return_type: 'Volumes',
63
63
  result: @volumes,
64
64
  },
@@ -68,7 +68,7 @@ describe Chef::Knife::IonoscloudVolumeList do
68
68
  expect { subject.run }.not_to raise_error(Exception)
69
69
  end
70
70
 
71
- it 'should call ServerApi.datacenters_servers_volumes_get when server_id is set' do
71
+ it 'should call ServersApi.datacenters_servers_volumes_get when server_id is set' do
72
72
  subject_config = {
73
73
  ionoscloud_username: 'email',
74
74
  ionoscloud_password: 'password',
@@ -87,7 +87,7 @@ describe Chef::Knife::IonoscloudVolumeList do
87
87
  {
88
88
  method: 'GET',
89
89
  path: "/datacenters/#{subject_config[:datacenter_id]}/servers/#{subject_config[:server_id]}/volumes",
90
- operation: :'ServerApi.datacenters_servers_volumes_get',
90
+ operation: :'ServersApi.datacenters_servers_volumes_get',
91
91
  return_type: 'AttachedVolumes',
92
92
  result: @volumes,
93
93
  },