fog-proxmox 0.13.0 → 0.15.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (194) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ci.yml +34 -49
  3. data/.github/workflows/release.yml +38 -0
  4. data/.rubocop.yml +11 -10
  5. data/.rubocop_todo.yml +255 -0
  6. data/CHANGELOG.md +8 -0
  7. data/README.md +35 -4
  8. data/Rakefile +8 -35
  9. data/bin/console +2 -4
  10. data/bin/setup +2 -4
  11. data/docs/compute.md +23 -7
  12. data/docs/identity.md +31 -6
  13. data/examples/compute.rb +11 -11
  14. data/examples/identity.rb +28 -15
  15. data/fog-proxmox.gemspec +8 -6
  16. data/lib/fog/proxmox/attributes.rb +3 -2
  17. data/lib/fog/proxmox/auth/token/access_ticket.rb +96 -0
  18. data/lib/fog/proxmox/auth/token/user_token.rb +107 -0
  19. data/lib/fog/proxmox/auth/token.rb +94 -0
  20. data/lib/fog/{compute/proxmox → proxmox/compute}/models/disk.rb +21 -3
  21. data/lib/fog/{compute/proxmox → proxmox/compute}/models/disks.rb +6 -2
  22. data/lib/fog/{compute/proxmox → proxmox/compute}/models/interface.rb +5 -1
  23. data/lib/fog/{compute/proxmox → proxmox/compute}/models/interfaces.rb +2 -2
  24. data/lib/fog/{compute/proxmox → proxmox/compute}/models/node.rb +3 -5
  25. data/lib/fog/{compute/proxmox → proxmox/compute}/models/nodes.rb +2 -2
  26. data/lib/fog/{compute/proxmox → proxmox/compute}/models/server.rb +29 -18
  27. data/lib/fog/{compute/proxmox → proxmox/compute}/models/server_config.rb +17 -4
  28. data/lib/fog/{compute/proxmox → proxmox/compute}/models/servers.rb +6 -6
  29. data/lib/fog/{compute/proxmox → proxmox/compute}/models/snapshot.rb +0 -0
  30. data/lib/fog/{compute/proxmox → proxmox/compute}/models/snapshots.rb +2 -2
  31. data/lib/fog/{compute/proxmox → proxmox/compute}/models/storage.rb +3 -2
  32. data/lib/fog/{compute/proxmox → proxmox/compute}/models/storages.rb +3 -3
  33. data/lib/fog/{compute/proxmox → proxmox/compute}/models/task.rb +0 -0
  34. data/lib/fog/{compute/proxmox → proxmox/compute}/models/tasks.rb +2 -1
  35. data/lib/fog/{compute/proxmox → proxmox/compute}/models/volume.rb +8 -1
  36. data/lib/fog/{compute/proxmox → proxmox/compute}/models/volumes.rb +3 -3
  37. data/lib/fog/{compute/proxmox → proxmox/compute}/requests/action_server.rb +0 -0
  38. data/lib/fog/{compute/proxmox → proxmox/compute}/requests/clone_server.rb +0 -0
  39. data/lib/fog/{compute/proxmox → proxmox/compute}/requests/create_backup.rb +0 -0
  40. data/lib/fog/{compute/proxmox → proxmox/compute}/requests/create_server.rb +0 -0
  41. data/lib/fog/{compute/proxmox → proxmox/compute}/requests/create_snapshot.rb +0 -0
  42. data/lib/fog/{compute/proxmox → proxmox/compute}/requests/create_spice.rb +0 -0
  43. data/lib/fog/{compute/proxmox → proxmox/compute}/requests/create_term.rb +0 -0
  44. data/lib/fog/{compute/proxmox → proxmox/compute}/requests/create_vnc.rb +0 -0
  45. data/lib/fog/{compute/proxmox → proxmox/compute}/requests/delete_server.rb +0 -0
  46. data/lib/fog/{compute/proxmox → proxmox/compute}/requests/delete_snapshot.rb +0 -0
  47. data/lib/fog/{compute/proxmox → proxmox/compute}/requests/delete_volume.rb +0 -0
  48. data/lib/fog/{compute/proxmox → proxmox/compute}/requests/get_node_statistics.rb +0 -0
  49. data/lib/fog/{compute/proxmox → proxmox/compute}/requests/get_server_config.rb +14 -14
  50. data/lib/fog/{compute/proxmox → proxmox/compute}/requests/get_server_status.rb +17 -17
  51. data/lib/fog/{compute/proxmox → proxmox/compute}/requests/get_snapshot_config.rb +0 -0
  52. data/lib/fog/{compute/proxmox → proxmox/compute}/requests/get_task.rb +0 -0
  53. data/lib/fog/{compute/proxmox → proxmox/compute}/requests/get_vnc.rb +0 -0
  54. data/lib/fog/{compute/proxmox → proxmox/compute}/requests/get_volume.rb +0 -0
  55. data/lib/fog/{compute/proxmox → proxmox/compute}/requests/list_nodes.rb +0 -0
  56. data/lib/fog/{compute/proxmox → proxmox/compute}/requests/list_servers.rb +0 -0
  57. data/lib/fog/{compute/proxmox → proxmox/compute}/requests/list_snapshots.rb +0 -0
  58. data/lib/fog/{compute/proxmox → proxmox/compute}/requests/list_storages.rb +0 -0
  59. data/lib/fog/{compute/proxmox → proxmox/compute}/requests/list_tasks.rb +0 -0
  60. data/lib/fog/{compute/proxmox → proxmox/compute}/requests/list_volumes.rb +0 -0
  61. data/lib/fog/{compute/proxmox → proxmox/compute}/requests/log_task.rb +1 -1
  62. data/lib/fog/{compute/proxmox → proxmox/compute}/requests/migrate_server.rb +0 -0
  63. data/lib/fog/{compute/proxmox → proxmox/compute}/requests/move_disk.rb +0 -0
  64. data/lib/fog/{compute/proxmox → proxmox/compute}/requests/move_volume.rb +0 -0
  65. data/lib/fog/{compute/proxmox → proxmox/compute}/requests/next_vmid.rb +0 -0
  66. data/lib/fog/{compute/proxmox → proxmox/compute}/requests/resize_container.rb +0 -0
  67. data/lib/fog/{compute/proxmox → proxmox/compute}/requests/resize_server.rb +0 -0
  68. data/lib/fog/{compute/proxmox → proxmox/compute}/requests/rollback_snapshot.rb +0 -0
  69. data/lib/fog/{compute/proxmox → proxmox/compute}/requests/status_task.rb +0 -0
  70. data/lib/fog/{compute/proxmox → proxmox/compute}/requests/stop_task.rb +0 -0
  71. data/lib/fog/{compute/proxmox → proxmox/compute}/requests/template_server.rb +0 -0
  72. data/lib/fog/{compute/proxmox → proxmox/compute}/requests/update_server.rb +0 -0
  73. data/lib/fog/{compute/proxmox → proxmox/compute}/requests/update_snapshot.rb +0 -0
  74. data/lib/fog/{compute/proxmox.rb → proxmox/compute.rb} +31 -16
  75. data/lib/fog/proxmox/core.rb +76 -64
  76. data/lib/fog/proxmox/errors.rb +2 -1
  77. data/lib/fog/proxmox/hash.rb +2 -4
  78. data/lib/fog/proxmox/helpers/controller_helper.rb +3 -4
  79. data/lib/fog/proxmox/helpers/cpu_helper.rb +55 -9
  80. data/lib/fog/proxmox/helpers/disk_helper.rb +51 -25
  81. data/lib/fog/proxmox/helpers/ip_helper.rb +21 -20
  82. data/lib/fog/proxmox/helpers/nic_helper.rb +37 -27
  83. data/lib/fog/{identity/proxmox → proxmox/identity}/models/domain.rb +7 -3
  84. data/lib/fog/{identity/proxmox → proxmox/identity}/models/domain_type.rb +0 -1
  85. data/lib/fog/{identity/proxmox → proxmox/identity}/models/domains.rb +2 -3
  86. data/lib/fog/{identity/proxmox → proxmox/identity}/models/group.rb +6 -2
  87. data/lib/fog/{identity/proxmox → proxmox/identity}/models/groups.rb +2 -2
  88. data/lib/fog/{identity/proxmox → proxmox/identity}/models/permission.rb +5 -4
  89. data/lib/fog/{identity/proxmox → proxmox/identity}/models/permissions.rb +4 -2
  90. data/lib/fog/{identity/proxmox → proxmox/identity}/models/pool.rb +4 -4
  91. data/lib/fog/{identity/proxmox → proxmox/identity}/models/pools.rb +5 -5
  92. data/lib/fog/{identity/proxmox → proxmox/identity}/models/principal.rb +0 -0
  93. data/lib/fog/{identity/proxmox → proxmox/identity}/models/role.rb +1 -1
  94. data/lib/fog/{identity/proxmox → proxmox/identity}/models/roles.rb +2 -2
  95. data/lib/fog/proxmox/identity/models/token.rb +72 -0
  96. data/lib/fog/proxmox/identity/models/token_info.rb +41 -0
  97. data/lib/fog/proxmox/identity/models/tokens.rb +54 -0
  98. data/lib/fog/{identity/proxmox → proxmox/identity}/models/user.rb +24 -2
  99. data/lib/fog/{identity/proxmox → proxmox/identity}/models/users.rb +2 -2
  100. data/lib/fog/{identity/proxmox → proxmox/identity}/requests/change_password.rb +0 -0
  101. data/lib/fog/{identity/proxmox → proxmox/identity}/requests/check_permissions.rb +0 -0
  102. data/lib/fog/{identity/proxmox → proxmox/identity}/requests/create_domain.rb +0 -0
  103. data/lib/fog/{identity/proxmox → proxmox/identity}/requests/create_group.rb +0 -0
  104. data/lib/fog/{identity/proxmox → proxmox/identity}/requests/create_pool.rb +0 -0
  105. data/lib/fog/{identity/proxmox → proxmox/identity}/requests/create_role.rb +0 -0
  106. data/lib/fog/proxmox/identity/requests/create_token.rb +40 -0
  107. data/lib/fog/{identity/proxmox → proxmox/identity}/requests/create_user.rb +0 -0
  108. data/lib/fog/{identity/proxmox → proxmox/identity}/requests/delete_domain.rb +0 -0
  109. data/lib/fog/{identity/proxmox → proxmox/identity}/requests/delete_group.rb +0 -0
  110. data/lib/fog/{identity/proxmox → proxmox/identity}/requests/delete_pool.rb +0 -0
  111. data/lib/fog/{identity/proxmox → proxmox/identity}/requests/delete_role.rb +0 -0
  112. data/lib/fog/proxmox/identity/requests/delete_token.rb +40 -0
  113. data/lib/fog/{identity/proxmox → proxmox/identity}/requests/delete_user.rb +0 -0
  114. data/lib/fog/{identity/proxmox → proxmox/identity}/requests/get_domain.rb +0 -0
  115. data/lib/fog/{identity/proxmox → proxmox/identity}/requests/get_group.rb +0 -0
  116. data/lib/fog/{identity/proxmox → proxmox/identity}/requests/get_pool.rb +0 -0
  117. data/lib/fog/{identity/proxmox → proxmox/identity}/requests/get_role.rb +0 -0
  118. data/lib/fog/proxmox/identity/requests/get_token_info.rb +41 -0
  119. data/lib/fog/{identity/proxmox → proxmox/identity}/requests/get_user.rb +1 -0
  120. data/lib/fog/{identity/proxmox → proxmox/identity}/requests/list_domains.rb +0 -0
  121. data/lib/fog/{identity/proxmox → proxmox/identity}/requests/list_groups.rb +0 -0
  122. data/lib/fog/{identity/proxmox → proxmox/identity}/requests/list_permissions.rb +0 -0
  123. data/lib/fog/{identity/proxmox → proxmox/identity}/requests/list_pools.rb +0 -0
  124. data/lib/fog/{identity/proxmox → proxmox/identity}/requests/list_roles.rb +0 -0
  125. data/lib/fog/proxmox/identity/requests/list_tokens.rb +41 -0
  126. data/lib/fog/proxmox/identity/requests/list_user_permissions.rb +44 -0
  127. data/lib/fog/{identity/proxmox → proxmox/identity}/requests/list_users.rb +0 -0
  128. data/lib/fog/{identity/proxmox → proxmox/identity}/requests/read_version.rb +0 -0
  129. data/lib/fog/{identity/proxmox → proxmox/identity}/requests/update_domain.rb +0 -0
  130. data/lib/fog/{identity/proxmox → proxmox/identity}/requests/update_group.rb +0 -0
  131. data/lib/fog/{identity/proxmox → proxmox/identity}/requests/update_permissions.rb +0 -0
  132. data/lib/fog/{identity/proxmox → proxmox/identity}/requests/update_pool.rb +0 -0
  133. data/lib/fog/{identity/proxmox → proxmox/identity}/requests/update_role.rb +0 -0
  134. data/lib/fog/proxmox/identity/requests/update_token.rb +41 -0
  135. data/lib/fog/{identity/proxmox → proxmox/identity}/requests/update_user.rb +0 -0
  136. data/lib/fog/{identity/proxmox.rb → proxmox/identity.rb} +31 -17
  137. data/lib/fog/{network/proxmox → proxmox/network}/models/network.rb +0 -0
  138. data/lib/fog/{network/proxmox → proxmox/network}/models/networks.rb +2 -2
  139. data/lib/fog/{network/proxmox → proxmox/network}/models/node.rb +2 -1
  140. data/lib/fog/{network/proxmox → proxmox/network}/models/nodes.rb +2 -2
  141. data/lib/fog/{network/proxmox → proxmox/network}/requests/create_network.rb +0 -0
  142. data/lib/fog/{network/proxmox → proxmox/network}/requests/delete_network.rb +0 -0
  143. data/lib/fog/{network/proxmox → proxmox/network}/requests/get_network.rb +0 -0
  144. data/lib/fog/{network/proxmox → proxmox/network}/requests/get_node.rb +0 -0
  145. data/lib/fog/{network/proxmox → proxmox/network}/requests/list_networks.rb +0 -0
  146. data/lib/fog/{network/proxmox → proxmox/network}/requests/list_nodes.rb +0 -0
  147. data/lib/fog/{network/proxmox → proxmox/network}/requests/power_node.rb +0 -0
  148. data/lib/fog/{network/proxmox → proxmox/network}/requests/update_network.rb +0 -0
  149. data/lib/fog/{network/proxmox.rb → proxmox/network.rb} +21 -14
  150. data/lib/fog/{storage/proxmox.rb → proxmox/storage.rb} +1 -1
  151. data/lib/fog/proxmox/string.rb +4 -3
  152. data/lib/fog/proxmox/version.rb +1 -1
  153. data/lib/fog/proxmox.rb +14 -76
  154. data/spec/compute_spec.rb +4 -4
  155. data/spec/fixtures/proxmox/compute/common_auth.yml +40 -0
  156. data/spec/fixtures/proxmox/compute/containers.yml +1752 -7568
  157. data/spec/fixtures/proxmox/compute/nodes.yml +24 -30
  158. data/spec/fixtures/proxmox/compute/servers.yml +5015 -10683
  159. data/spec/fixtures/proxmox/compute/snapshots.yml +479 -1719
  160. data/spec/fixtures/proxmox/compute/storages.yml +32 -40
  161. data/spec/fixtures/proxmox/compute/tasks.yml +118 -338
  162. data/spec/fixtures/proxmox/identity/auth.yml +10 -12
  163. data/spec/fixtures/proxmox/identity/auth_access_ticket.yml +77 -0
  164. data/spec/fixtures/proxmox/identity/auth_user_token.yml +77 -0
  165. data/spec/fixtures/proxmox/identity/common_auth.yml +40 -0
  166. data/spec/fixtures/proxmox/identity/domains.yml +145 -181
  167. data/spec/fixtures/proxmox/identity/groups.yml +72 -90
  168. data/spec/fixtures/proxmox/identity/permissions.yml +297 -189
  169. data/spec/fixtures/proxmox/identity/pools.yml +176 -421
  170. data/spec/fixtures/proxmox/identity/read_version.yml +7 -9
  171. data/spec/fixtures/proxmox/identity/roles.yml +69 -87
  172. data/spec/fixtures/proxmox/identity/tokens.yml +494 -0
  173. data/spec/fixtures/proxmox/identity/users.yml +149 -187
  174. data/spec/fixtures/proxmox/network/common_auth.yml +40 -0
  175. data/spec/fixtures/proxmox/network/networks.yml +99 -96
  176. data/spec/hash_spec.rb +2 -1
  177. data/spec/helpers/controller_helper_spec.rb +135 -123
  178. data/spec/helpers/cpu_helper_spec.rb +57 -45
  179. data/spec/helpers/disk_helper_spec.rb +281 -187
  180. data/spec/helpers/ip_helper_spec.rb +155 -138
  181. data/spec/helpers/nic_helper_spec.rb +122 -114
  182. data/spec/identity_spec.rb +123 -29
  183. data/spec/network_spec.rb +3 -3
  184. data/spec/proxmox_vcr.rb +24 -22
  185. data/spec/spec_helper.rb +4 -3
  186. data/tasks/audit.rake +25 -0
  187. data/tasks/lint.rake +22 -0
  188. data/tasks/test.rake +65 -0
  189. metadata +205 -174
  190. data/.codeclimate.yml +0 -14
  191. data/spec/fixtures/proxmox/compute/identity_ticket.yml +0 -40
  192. data/spec/fixtures/proxmox/identity/identity_ticket.yml +0 -40
  193. data/spec/fixtures/proxmox/identity/renew.yml +0 -40
  194. data/spec/fixtures/proxmox/network/identity_ticket.yml +0 -40
@@ -0,0 +1,494 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://192.168.56.101:8006/api2/json/access/users
6
+ body:
7
+ encoding: US-ASCII
8
+ string: userid=bobsinclar%40pve&password=bobsinclar1&firstname=Bob&lastname=Sinclar&email=bobsinclar%40proxmox.com
9
+ headers:
10
+ User-Agent:
11
+ - fog-core/2.2.3
12
+ Cookie:
13
+ - PVEAuthCookie=PVE:root@pam:5FBE5C9A::lMeg+B18NQFzF46l2eN3U+UQYN1ktkO/WsXaKUenNmSRmos/bHiNDv+CcnQzGBQgQBvLVtY7XgOUL/Rd7owQfMf4/y9t6QKlAaeQtjYhRHW4yAzjIxz0ya8ZvOb9BPyY8/IHwiUgi+zivEP/tbEd8ZKrDTtDdnrNpTN9xG8QAW6VaCFoAi1S0RpVEonXz5vB/nrvWw/5HBvCJt5Ctgx1iBRz+CxMAG2Bh/jlZlfxIZzcJWm3iVd5fq0iNbm5twRrnzcUQD54TJCQSrwIVdN7bOxFlWNgix3TgJYYOuVN5FU1bEZDUao5EhkhKPBA1K5xVvwKDdEMfzM/qXxtHmMxZg==
14
+ Csrfpreventiontoken:
15
+ - 5FBE5C9A:z+KToa302E5JhHPWrHLN7/hvF3XKOo9y934hStmyeHU
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Cache-Control:
22
+ - max-age=0
23
+ Connection:
24
+ - close, Keep-Alive
25
+ Date:
26
+ - Wed, 25 Nov 2020 13:31:06 GMT
27
+ Pragma:
28
+ - no-cache
29
+ Server:
30
+ - pve-api-daemon/3.0
31
+ Content-Length:
32
+ - '13'
33
+ Content-Type:
34
+ - application/json;charset=UTF-8
35
+ Expires:
36
+ - Wed, 25 Nov 2020 13:31:06 GMT
37
+ body:
38
+ encoding: ASCII-8BIT
39
+ string: '{"data":null}'
40
+ http_version:
41
+ recorded_at: Wed, 25 Nov 2020 13:31:08 GMT
42
+ - request:
43
+ method: get
44
+ uri: https://192.168.56.101:8006/api2/json/access/users
45
+ body:
46
+ encoding: US-ASCII
47
+ string: ''
48
+ headers:
49
+ User-Agent:
50
+ - fog-core/2.2.3
51
+ Cookie:
52
+ - PVEAuthCookie=PVE:root@pam:5FBE5C9A::lMeg+B18NQFzF46l2eN3U+UQYN1ktkO/WsXaKUenNmSRmos/bHiNDv+CcnQzGBQgQBvLVtY7XgOUL/Rd7owQfMf4/y9t6QKlAaeQtjYhRHW4yAzjIxz0ya8ZvOb9BPyY8/IHwiUgi+zivEP/tbEd8ZKrDTtDdnrNpTN9xG8QAW6VaCFoAi1S0RpVEonXz5vB/nrvWw/5HBvCJt5Ctgx1iBRz+CxMAG2Bh/jlZlfxIZzcJWm3iVd5fq0iNbm5twRrnzcUQD54TJCQSrwIVdN7bOxFlWNgix3TgJYYOuVN5FU1bEZDUao5EhkhKPBA1K5xVvwKDdEMfzM/qXxtHmMxZg==
53
+ response:
54
+ status:
55
+ code: 200
56
+ message: OK
57
+ headers:
58
+ Cache-Control:
59
+ - max-age=0
60
+ Connection:
61
+ - Keep-Alive
62
+ Date:
63
+ - Wed, 25 Nov 2020 13:31:06 GMT
64
+ Pragma:
65
+ - no-cache
66
+ Server:
67
+ - pve-api-daemon/3.0
68
+ Content-Length:
69
+ - '206'
70
+ Content-Type:
71
+ - application/json;charset=UTF-8
72
+ Expires:
73
+ - Wed, 25 Nov 2020 13:31:06 GMT
74
+ body:
75
+ encoding: ASCII-8BIT
76
+ string: '{"data":[{"email":"proxmox@proxmox.com","enable":1,"expire":0,"userid":"root@pam"},{"expire":0,"enable":1,"email":"bobsinclar@proxmox.com","userid":"bobsinclar@pve","firstname":"Bob","lastname":"Sinclar"}]}'
77
+ http_version:
78
+ recorded_at: Wed, 25 Nov 2020 13:31:08 GMT
79
+ - request:
80
+ method: get
81
+ uri: https://192.168.56.101:8006/api2/json/access/users
82
+ body:
83
+ encoding: US-ASCII
84
+ string: ''
85
+ headers:
86
+ User-Agent:
87
+ - fog-core/2.2.3
88
+ Cookie:
89
+ - PVEAuthCookie=PVE:root@pam:5FBE5C9A::lMeg+B18NQFzF46l2eN3U+UQYN1ktkO/WsXaKUenNmSRmos/bHiNDv+CcnQzGBQgQBvLVtY7XgOUL/Rd7owQfMf4/y9t6QKlAaeQtjYhRHW4yAzjIxz0ya8ZvOb9BPyY8/IHwiUgi+zivEP/tbEd8ZKrDTtDdnrNpTN9xG8QAW6VaCFoAi1S0RpVEonXz5vB/nrvWw/5HBvCJt5Ctgx1iBRz+CxMAG2Bh/jlZlfxIZzcJWm3iVd5fq0iNbm5twRrnzcUQD54TJCQSrwIVdN7bOxFlWNgix3TgJYYOuVN5FU1bEZDUao5EhkhKPBA1K5xVvwKDdEMfzM/qXxtHmMxZg==
90
+ response:
91
+ status:
92
+ code: 200
93
+ message: OK
94
+ headers:
95
+ Cache-Control:
96
+ - max-age=0
97
+ Connection:
98
+ - Keep-Alive
99
+ Date:
100
+ - Wed, 25 Nov 2020 13:31:06 GMT
101
+ Pragma:
102
+ - no-cache
103
+ Server:
104
+ - pve-api-daemon/3.0
105
+ Content-Length:
106
+ - '206'
107
+ Content-Type:
108
+ - application/json;charset=UTF-8
109
+ Expires:
110
+ - Wed, 25 Nov 2020 13:31:06 GMT
111
+ body:
112
+ encoding: ASCII-8BIT
113
+ string: '{"data":[{"email":"proxmox@proxmox.com","enable":1,"expire":0,"userid":"root@pam"},{"email":"bobsinclar@proxmox.com","enable":1,"expire":0,"firstname":"Bob","lastname":"Sinclar","userid":"bobsinclar@pve"}]}'
114
+ http_version:
115
+ recorded_at: Wed, 25 Nov 2020 13:31:08 GMT
116
+ - request:
117
+ method: post
118
+ uri: https://192.168.56.101:8006/api2/json/access/users/bobsinclar@pve/token/bobsinclar1
119
+ body:
120
+ encoding: US-ASCII
121
+ string: ''
122
+ headers:
123
+ User-Agent:
124
+ - fog-core/2.2.3
125
+ Cookie:
126
+ - PVEAuthCookie=PVE:root@pam:5FBE5C9A::lMeg+B18NQFzF46l2eN3U+UQYN1ktkO/WsXaKUenNmSRmos/bHiNDv+CcnQzGBQgQBvLVtY7XgOUL/Rd7owQfMf4/y9t6QKlAaeQtjYhRHW4yAzjIxz0ya8ZvOb9BPyY8/IHwiUgi+zivEP/tbEd8ZKrDTtDdnrNpTN9xG8QAW6VaCFoAi1S0RpVEonXz5vB/nrvWw/5HBvCJt5Ctgx1iBRz+CxMAG2Bh/jlZlfxIZzcJWm3iVd5fq0iNbm5twRrnzcUQD54TJCQSrwIVdN7bOxFlWNgix3TgJYYOuVN5FU1bEZDUao5EhkhKPBA1K5xVvwKDdEMfzM/qXxtHmMxZg==
127
+ Csrfpreventiontoken:
128
+ - 5FBE5C9A:z+KToa302E5JhHPWrHLN7/hvF3XKOo9y934hStmyeHU
129
+ response:
130
+ status:
131
+ code: 200
132
+ message: OK
133
+ headers:
134
+ Cache-Control:
135
+ - max-age=0
136
+ Connection:
137
+ - close, Keep-Alive
138
+ Date:
139
+ - Wed, 25 Nov 2020 13:31:06 GMT
140
+ Pragma:
141
+ - no-cache
142
+ Server:
143
+ - pve-api-daemon/3.0
144
+ Content-Length:
145
+ - '122'
146
+ Content-Type:
147
+ - application/json;charset=UTF-8
148
+ Expires:
149
+ - Wed, 25 Nov 2020 13:31:06 GMT
150
+ body:
151
+ encoding: ASCII-8BIT
152
+ string: '{"data":{"value":"bb012ce5-eadd-4c47-a7cd-2413c6dd2c76","info":{"privsep":1},"full-tokenid":"bobsinclar@pve!bobsinclar1"}}'
153
+ http_version:
154
+ recorded_at: Wed, 25 Nov 2020 13:31:08 GMT
155
+ - request:
156
+ method: get
157
+ uri: https://192.168.56.101:8006/api2/json/access/users/bobsinclar@pve/token
158
+ body:
159
+ encoding: US-ASCII
160
+ string: ''
161
+ headers:
162
+ User-Agent:
163
+ - fog-core/2.2.3
164
+ Cookie:
165
+ - PVEAuthCookie=PVE:root@pam:5FBE5C9A::lMeg+B18NQFzF46l2eN3U+UQYN1ktkO/WsXaKUenNmSRmos/bHiNDv+CcnQzGBQgQBvLVtY7XgOUL/Rd7owQfMf4/y9t6QKlAaeQtjYhRHW4yAzjIxz0ya8ZvOb9BPyY8/IHwiUgi+zivEP/tbEd8ZKrDTtDdnrNpTN9xG8QAW6VaCFoAi1S0RpVEonXz5vB/nrvWw/5HBvCJt5Ctgx1iBRz+CxMAG2Bh/jlZlfxIZzcJWm3iVd5fq0iNbm5twRrnzcUQD54TJCQSrwIVdN7bOxFlWNgix3TgJYYOuVN5FU1bEZDUao5EhkhKPBA1K5xVvwKDdEMfzM/qXxtHmMxZg==
166
+ response:
167
+ status:
168
+ code: 200
169
+ message: OK
170
+ headers:
171
+ Cache-Control:
172
+ - max-age=0
173
+ Connection:
174
+ - Keep-Alive
175
+ Date:
176
+ - Wed, 25 Nov 2020 13:31:06 GMT
177
+ Pragma:
178
+ - no-cache
179
+ Server:
180
+ - pve-api-daemon/3.0
181
+ Content-Length:
182
+ - '59'
183
+ Content-Type:
184
+ - application/json;charset=UTF-8
185
+ Expires:
186
+ - Wed, 25 Nov 2020 13:31:06 GMT
187
+ body:
188
+ encoding: ASCII-8BIT
189
+ string: '{"data":[{"tokenid":"bobsinclar1","privsep":1,"expire":0}]}'
190
+ http_version:
191
+ recorded_at: Wed, 25 Nov 2020 13:31:08 GMT
192
+ - request:
193
+ method: get
194
+ uri: https://192.168.56.101:8006/api2/json/access/users/bobsinclar@pve/token
195
+ body:
196
+ encoding: US-ASCII
197
+ string: ''
198
+ headers:
199
+ User-Agent:
200
+ - fog-core/2.2.3
201
+ Cookie:
202
+ - PVEAuthCookie=PVE:root@pam:5FBE5C9A::lMeg+B18NQFzF46l2eN3U+UQYN1ktkO/WsXaKUenNmSRmos/bHiNDv+CcnQzGBQgQBvLVtY7XgOUL/Rd7owQfMf4/y9t6QKlAaeQtjYhRHW4yAzjIxz0ya8ZvOb9BPyY8/IHwiUgi+zivEP/tbEd8ZKrDTtDdnrNpTN9xG8QAW6VaCFoAi1S0RpVEonXz5vB/nrvWw/5HBvCJt5Ctgx1iBRz+CxMAG2Bh/jlZlfxIZzcJWm3iVd5fq0iNbm5twRrnzcUQD54TJCQSrwIVdN7bOxFlWNgix3TgJYYOuVN5FU1bEZDUao5EhkhKPBA1K5xVvwKDdEMfzM/qXxtHmMxZg==
203
+ response:
204
+ status:
205
+ code: 200
206
+ message: OK
207
+ headers:
208
+ Cache-Control:
209
+ - max-age=0
210
+ Connection:
211
+ - Keep-Alive
212
+ Date:
213
+ - Wed, 25 Nov 2020 13:31:06 GMT
214
+ Pragma:
215
+ - no-cache
216
+ Server:
217
+ - pve-api-daemon/3.0
218
+ Content-Length:
219
+ - '59'
220
+ Content-Type:
221
+ - application/json;charset=UTF-8
222
+ Expires:
223
+ - Wed, 25 Nov 2020 13:31:06 GMT
224
+ body:
225
+ encoding: ASCII-8BIT
226
+ string: '{"data":[{"expire":0,"privsep":1,"tokenid":"bobsinclar1"}]}'
227
+ http_version:
228
+ recorded_at: Wed, 25 Nov 2020 13:31:08 GMT
229
+ - request:
230
+ method: get
231
+ uri: https://192.168.56.101:8006/api2/json/access/users/bobsinclar@pve/token
232
+ body:
233
+ encoding: US-ASCII
234
+ string: ''
235
+ headers:
236
+ User-Agent:
237
+ - fog-core/2.2.3
238
+ Cookie:
239
+ - PVEAuthCookie=PVE:root@pam:5FBE5C9A::lMeg+B18NQFzF46l2eN3U+UQYN1ktkO/WsXaKUenNmSRmos/bHiNDv+CcnQzGBQgQBvLVtY7XgOUL/Rd7owQfMf4/y9t6QKlAaeQtjYhRHW4yAzjIxz0ya8ZvOb9BPyY8/IHwiUgi+zivEP/tbEd8ZKrDTtDdnrNpTN9xG8QAW6VaCFoAi1S0RpVEonXz5vB/nrvWw/5HBvCJt5Ctgx1iBRz+CxMAG2Bh/jlZlfxIZzcJWm3iVd5fq0iNbm5twRrnzcUQD54TJCQSrwIVdN7bOxFlWNgix3TgJYYOuVN5FU1bEZDUao5EhkhKPBA1K5xVvwKDdEMfzM/qXxtHmMxZg==
240
+ response:
241
+ status:
242
+ code: 200
243
+ message: OK
244
+ headers:
245
+ Cache-Control:
246
+ - max-age=0
247
+ Connection:
248
+ - Keep-Alive
249
+ Date:
250
+ - Wed, 25 Nov 2020 13:31:06 GMT
251
+ Pragma:
252
+ - no-cache
253
+ Server:
254
+ - pve-api-daemon/3.0
255
+ Content-Length:
256
+ - '59'
257
+ Content-Type:
258
+ - application/json;charset=UTF-8
259
+ Expires:
260
+ - Wed, 25 Nov 2020 13:31:06 GMT
261
+ body:
262
+ encoding: ASCII-8BIT
263
+ string: '{"data":[{"expire":0,"privsep":1,"tokenid":"bobsinclar1"}]}'
264
+ http_version:
265
+ recorded_at: Wed, 25 Nov 2020 13:31:08 GMT
266
+ - request:
267
+ method: put
268
+ uri: https://192.168.56.101:8006/api2/json/access/users/bobsinclar@pve/token/bobsinclar1
269
+ body:
270
+ encoding: US-ASCII
271
+ string: comment=test&expire=0&privsep=0
272
+ headers:
273
+ User-Agent:
274
+ - fog-core/2.2.3
275
+ Cookie:
276
+ - PVEAuthCookie=PVE:root@pam:5FBE5C9A::lMeg+B18NQFzF46l2eN3U+UQYN1ktkO/WsXaKUenNmSRmos/bHiNDv+CcnQzGBQgQBvLVtY7XgOUL/Rd7owQfMf4/y9t6QKlAaeQtjYhRHW4yAzjIxz0ya8ZvOb9BPyY8/IHwiUgi+zivEP/tbEd8ZKrDTtDdnrNpTN9xG8QAW6VaCFoAi1S0RpVEonXz5vB/nrvWw/5HBvCJt5Ctgx1iBRz+CxMAG2Bh/jlZlfxIZzcJWm3iVd5fq0iNbm5twRrnzcUQD54TJCQSrwIVdN7bOxFlWNgix3TgJYYOuVN5FU1bEZDUao5EhkhKPBA1K5xVvwKDdEMfzM/qXxtHmMxZg==
277
+ Csrfpreventiontoken:
278
+ - 5FBE5C9A:z+KToa302E5JhHPWrHLN7/hvF3XKOo9y934hStmyeHU
279
+ response:
280
+ status:
281
+ code: 200
282
+ message: OK
283
+ headers:
284
+ Cache-Control:
285
+ - max-age=0
286
+ Connection:
287
+ - Keep-Alive, Keep-Alive
288
+ Date:
289
+ - Wed, 25 Nov 2020 13:31:06 GMT
290
+ Pragma:
291
+ - no-cache
292
+ Server:
293
+ - pve-api-daemon/3.0
294
+ Content-Length:
295
+ - '54'
296
+ Content-Type:
297
+ - application/json;charset=UTF-8
298
+ Expires:
299
+ - Wed, 25 Nov 2020 13:31:06 GMT
300
+ body:
301
+ encoding: ASCII-8BIT
302
+ string: '{"data":{"comment":"test","expire":"0","privsep":"0"}}'
303
+ http_version:
304
+ recorded_at: Wed, 25 Nov 2020 13:31:08 GMT
305
+ - request:
306
+ method: get
307
+ uri: https://192.168.56.101:8006/api2/json/access/users/bobsinclar@pve/token
308
+ body:
309
+ encoding: US-ASCII
310
+ string: ''
311
+ headers:
312
+ User-Agent:
313
+ - fog-core/2.2.3
314
+ Cookie:
315
+ - PVEAuthCookie=PVE:root@pam:5FBE5C9A::lMeg+B18NQFzF46l2eN3U+UQYN1ktkO/WsXaKUenNmSRmos/bHiNDv+CcnQzGBQgQBvLVtY7XgOUL/Rd7owQfMf4/y9t6QKlAaeQtjYhRHW4yAzjIxz0ya8ZvOb9BPyY8/IHwiUgi+zivEP/tbEd8ZKrDTtDdnrNpTN9xG8QAW6VaCFoAi1S0RpVEonXz5vB/nrvWw/5HBvCJt5Ctgx1iBRz+CxMAG2Bh/jlZlfxIZzcJWm3iVd5fq0iNbm5twRrnzcUQD54TJCQSrwIVdN7bOxFlWNgix3TgJYYOuVN5FU1bEZDUao5EhkhKPBA1K5xVvwKDdEMfzM/qXxtHmMxZg==
316
+ response:
317
+ status:
318
+ code: 200
319
+ message: OK
320
+ headers:
321
+ Cache-Control:
322
+ - max-age=0
323
+ Connection:
324
+ - Keep-Alive
325
+ Date:
326
+ - Wed, 25 Nov 2020 13:31:06 GMT
327
+ Pragma:
328
+ - no-cache
329
+ Server:
330
+ - pve-api-daemon/3.0
331
+ Content-Length:
332
+ - '76'
333
+ Content-Type:
334
+ - application/json;charset=UTF-8
335
+ Expires:
336
+ - Wed, 25 Nov 2020 13:31:06 GMT
337
+ body:
338
+ encoding: ASCII-8BIT
339
+ string: '{"data":[{"tokenid":"bobsinclar1","comment":"test","expire":0,"privsep":0}]}'
340
+ http_version:
341
+ recorded_at: Wed, 25 Nov 2020 13:31:08 GMT
342
+ - request:
343
+ method: delete
344
+ uri: https://192.168.56.101:8006/api2/json/access/users/bobsinclar@pve/token/bobsinclar1
345
+ body:
346
+ encoding: US-ASCII
347
+ string: ''
348
+ headers:
349
+ User-Agent:
350
+ - fog-core/2.2.3
351
+ Cookie:
352
+ - PVEAuthCookie=PVE:root@pam:5FBE5C9A::lMeg+B18NQFzF46l2eN3U+UQYN1ktkO/WsXaKUenNmSRmos/bHiNDv+CcnQzGBQgQBvLVtY7XgOUL/Rd7owQfMf4/y9t6QKlAaeQtjYhRHW4yAzjIxz0ya8ZvOb9BPyY8/IHwiUgi+zivEP/tbEd8ZKrDTtDdnrNpTN9xG8QAW6VaCFoAi1S0RpVEonXz5vB/nrvWw/5HBvCJt5Ctgx1iBRz+CxMAG2Bh/jlZlfxIZzcJWm3iVd5fq0iNbm5twRrnzcUQD54TJCQSrwIVdN7bOxFlWNgix3TgJYYOuVN5FU1bEZDUao5EhkhKPBA1K5xVvwKDdEMfzM/qXxtHmMxZg==
353
+ Csrfpreventiontoken:
354
+ - 5FBE5C9A:z+KToa302E5JhHPWrHLN7/hvF3XKOo9y934hStmyeHU
355
+ response:
356
+ status:
357
+ code: 200
358
+ message: OK
359
+ headers:
360
+ Cache-Control:
361
+ - max-age=0
362
+ Connection:
363
+ - Keep-Alive, Keep-Alive
364
+ Date:
365
+ - Wed, 25 Nov 2020 13:31:06 GMT
366
+ Pragma:
367
+ - no-cache
368
+ Server:
369
+ - pve-api-daemon/3.0
370
+ Content-Length:
371
+ - '13'
372
+ Content-Type:
373
+ - application/json;charset=UTF-8
374
+ Expires:
375
+ - Wed, 25 Nov 2020 13:31:06 GMT
376
+ body:
377
+ encoding: ASCII-8BIT
378
+ string: '{"data":null}'
379
+ http_version:
380
+ recorded_at: Wed, 25 Nov 2020 13:31:08 GMT
381
+ - request:
382
+ method: get
383
+ uri: https://192.168.56.101:8006/api2/json/access/users/bobsinclar@pve/token
384
+ body:
385
+ encoding: US-ASCII
386
+ string: ''
387
+ headers:
388
+ User-Agent:
389
+ - fog-core/2.2.3
390
+ Cookie:
391
+ - PVEAuthCookie=PVE:root@pam:5FBE5C9A::lMeg+B18NQFzF46l2eN3U+UQYN1ktkO/WsXaKUenNmSRmos/bHiNDv+CcnQzGBQgQBvLVtY7XgOUL/Rd7owQfMf4/y9t6QKlAaeQtjYhRHW4yAzjIxz0ya8ZvOb9BPyY8/IHwiUgi+zivEP/tbEd8ZKrDTtDdnrNpTN9xG8QAW6VaCFoAi1S0RpVEonXz5vB/nrvWw/5HBvCJt5Ctgx1iBRz+CxMAG2Bh/jlZlfxIZzcJWm3iVd5fq0iNbm5twRrnzcUQD54TJCQSrwIVdN7bOxFlWNgix3TgJYYOuVN5FU1bEZDUao5EhkhKPBA1K5xVvwKDdEMfzM/qXxtHmMxZg==
392
+ response:
393
+ status:
394
+ code: 200
395
+ message: OK
396
+ headers:
397
+ Cache-Control:
398
+ - max-age=0
399
+ Connection:
400
+ - Keep-Alive
401
+ Date:
402
+ - Wed, 25 Nov 2020 13:31:06 GMT
403
+ Pragma:
404
+ - no-cache
405
+ Server:
406
+ - pve-api-daemon/3.0
407
+ Content-Length:
408
+ - '11'
409
+ Content-Type:
410
+ - application/json;charset=UTF-8
411
+ Expires:
412
+ - Wed, 25 Nov 2020 13:31:06 GMT
413
+ body:
414
+ encoding: ASCII-8BIT
415
+ string: '{"data":[]}'
416
+ http_version:
417
+ recorded_at: Wed, 25 Nov 2020 13:31:08 GMT
418
+ - request:
419
+ method: delete
420
+ uri: https://192.168.56.101:8006/api2/json/access/users/bobsinclar@pve
421
+ body:
422
+ encoding: US-ASCII
423
+ string: ''
424
+ headers:
425
+ User-Agent:
426
+ - fog-core/2.2.3
427
+ Cookie:
428
+ - PVEAuthCookie=PVE:root@pam:5FBE5C9A::lMeg+B18NQFzF46l2eN3U+UQYN1ktkO/WsXaKUenNmSRmos/bHiNDv+CcnQzGBQgQBvLVtY7XgOUL/Rd7owQfMf4/y9t6QKlAaeQtjYhRHW4yAzjIxz0ya8ZvOb9BPyY8/IHwiUgi+zivEP/tbEd8ZKrDTtDdnrNpTN9xG8QAW6VaCFoAi1S0RpVEonXz5vB/nrvWw/5HBvCJt5Ctgx1iBRz+CxMAG2Bh/jlZlfxIZzcJWm3iVd5fq0iNbm5twRrnzcUQD54TJCQSrwIVdN7bOxFlWNgix3TgJYYOuVN5FU1bEZDUao5EhkhKPBA1K5xVvwKDdEMfzM/qXxtHmMxZg==
429
+ Csrfpreventiontoken:
430
+ - 5FBE5C9A:z+KToa302E5JhHPWrHLN7/hvF3XKOo9y934hStmyeHU
431
+ response:
432
+ status:
433
+ code: 200
434
+ message: OK
435
+ headers:
436
+ Cache-Control:
437
+ - max-age=0
438
+ Connection:
439
+ - Keep-Alive, Keep-Alive
440
+ Date:
441
+ - Wed, 25 Nov 2020 13:31:06 GMT
442
+ Pragma:
443
+ - no-cache
444
+ Server:
445
+ - pve-api-daemon/3.0
446
+ Content-Length:
447
+ - '13'
448
+ Content-Type:
449
+ - application/json;charset=UTF-8
450
+ Expires:
451
+ - Wed, 25 Nov 2020 13:31:06 GMT
452
+ body:
453
+ encoding: ASCII-8BIT
454
+ string: '{"data":null}'
455
+ http_version:
456
+ recorded_at: Wed, 25 Nov 2020 13:31:08 GMT
457
+ - request:
458
+ method: get
459
+ uri: https://192.168.56.101:8006/api2/json/access/users
460
+ body:
461
+ encoding: US-ASCII
462
+ string: ''
463
+ headers:
464
+ User-Agent:
465
+ - fog-core/2.2.3
466
+ Cookie:
467
+ - PVEAuthCookie=PVE:root@pam:5FBE5C9A::lMeg+B18NQFzF46l2eN3U+UQYN1ktkO/WsXaKUenNmSRmos/bHiNDv+CcnQzGBQgQBvLVtY7XgOUL/Rd7owQfMf4/y9t6QKlAaeQtjYhRHW4yAzjIxz0ya8ZvOb9BPyY8/IHwiUgi+zivEP/tbEd8ZKrDTtDdnrNpTN9xG8QAW6VaCFoAi1S0RpVEonXz5vB/nrvWw/5HBvCJt5Ctgx1iBRz+CxMAG2Bh/jlZlfxIZzcJWm3iVd5fq0iNbm5twRrnzcUQD54TJCQSrwIVdN7bOxFlWNgix3TgJYYOuVN5FU1bEZDUao5EhkhKPBA1K5xVvwKDdEMfzM/qXxtHmMxZg==
468
+ response:
469
+ status:
470
+ code: 200
471
+ message: OK
472
+ headers:
473
+ Cache-Control:
474
+ - max-age=0
475
+ Connection:
476
+ - Keep-Alive
477
+ Date:
478
+ - Wed, 25 Nov 2020 13:31:06 GMT
479
+ Pragma:
480
+ - no-cache
481
+ Server:
482
+ - pve-api-daemon/3.0
483
+ Content-Length:
484
+ - '84'
485
+ Content-Type:
486
+ - application/json;charset=UTF-8
487
+ Expires:
488
+ - Wed, 25 Nov 2020 13:31:06 GMT
489
+ body:
490
+ encoding: ASCII-8BIT
491
+ string: '{"data":[{"email":"proxmox@proxmox.com","enable":1,"userid":"root@pam","expire":0}]}'
492
+ http_version:
493
+ recorded_at: Wed, 25 Nov 2020 13:31:08 GMT
494
+ recorded_with: VCR 4.0.0