fog-proxmox 0.16.0 → 0.16.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b33a2102b821bebd66374bedbb231a6a909c693f41a3553c6b7f05d98dfe7179
4
- data.tar.gz: 0314f4aab1ace6580c4867d53eee4bb44f403d2fbef68b35bf1e8cf8baa7d026
3
+ metadata.gz: ad33a128d685d2b883ab581ae64e5766f0b48698e643082ebbf0d3f2c522a729
4
+ data.tar.gz: 675b1f4d88fa372b2a979192611e5897eebd0d639011c24552299ea1a1f39706
5
5
  SHA512:
6
- metadata.gz: 9e085dd41d09bea2d21097daab0b6f3ac72c4a1454e1d25253dabd90c1f25f87f44923372c0f5a1330ad52c0ba29c9a0fa1f9b615eee897c4b44c591c7eab938
7
- data.tar.gz: 0e669f3993464ab99c57ac7abb9681d78f11a6109aea8a38c74e1d18fc0e2960ac03d7ec4e34ff22045e4e89bda842a0e00d267f8549d3891d2aa7bc7c88af16
6
+ metadata.gz: 8831d1198f45f6e7ba9629ebfdc4371c54db7c177a1b619452f8a17b3a12c0904095347d22bc9bdbaa96268436e16674ea3e7295b1eb7f1d4f96e34937276b7f
7
+ data.tar.gz: 809613bcc6041d59bb5c24f3cd0f55a57b79f9210d0468677e6c416a933a5cabffafee27d50c8a28b306a68716a785bd2043f4246673b869e16951104e88da4e
data/CHANGELOG.md CHANGED
@@ -1,5 +1,12 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.16.1](https://github.com/fog/fog-proxmox/compare/v0.16.0...v0.16.1) (2026-08-11)
4
+
5
+
6
+ ### Bug Fixes
7
+
8
+ * Replace deprecated Proxmox pool endpoints to support nested pools ([#135](https://github.com/fog/fog-proxmox/issues/135)) ([e2bc584](https://github.com/fog/fog-proxmox/commit/e2bc584cd2b2156282bb7fe1dd41bc66b6fe9c55))
9
+
3
10
  ## [0.16.0](https://github.com/fog/fog-proxmox/compare/v0.15.4...v0.16.0) (2026-02-18)
4
11
 
5
12
 
@@ -26,7 +26,8 @@ module Fog
26
26
  request(
27
27
  expects: [200],
28
28
  method: 'DELETE',
29
- path: "pools/#{poolid}"
29
+ path: 'pools/',
30
+ query: URI.encode_www_form(poolid: poolid)
30
31
  )
31
32
  end
32
33
  end
@@ -24,11 +24,13 @@ module Fog
24
24
  # class Real get_pool collection
25
25
  class Real
26
26
  def get_pool(poolid)
27
- request(
27
+ pools = request(
28
28
  expects: [200],
29
29
  method: 'GET',
30
- path: "pools/#{poolid}"
30
+ path: 'pools/',
31
+ query: URI.encode_www_form(poolid: poolid)
31
32
  )
33
+ pools.first
32
34
  end
33
35
  end
34
36
 
@@ -27,7 +27,8 @@ module Fog
27
27
  request(
28
28
  expects: [200],
29
29
  method: 'PUT',
30
- path: "pools/#{poolid}",
30
+ path: 'pools/',
31
+ query: URI.encode_www_form(poolid: poolid),
31
32
  body: URI.encode_www_form(attributes)
32
33
  )
33
34
  end
@@ -19,6 +19,6 @@
19
19
 
20
20
  module Fog
21
21
  module Proxmox
22
- VERSION = '0.16.0'
22
+ VERSION = '0.16.1'
23
23
  end
24
24
  end
@@ -78,7 +78,7 @@ http_interactions:
78
78
  recorded_at: Wed, 25 Nov 2020 13:31:12 GMT
79
79
  - request:
80
80
  method: get
81
- uri: https://192.168.56.101:8006/api2/json/pools/pool1
81
+ uri: https://192.168.56.101:8006/api2/json/pools/?poolid=pool1
82
82
  body:
83
83
  encoding: US-ASCII
84
84
  string: ''
@@ -110,7 +110,7 @@ http_interactions:
110
110
  - Wed, 25 Nov 2020 13:31:10 GMT
111
111
  body:
112
112
  encoding: ASCII-8BIT
113
- string: '{"data":{"members":[]}}'
113
+ string: '{"data":[{"members":[]}]}'
114
114
  http_version:
115
115
  recorded_at: Wed, 25 Nov 2020 13:31:12 GMT
116
116
  - request:
@@ -152,7 +152,7 @@ http_interactions:
152
152
  recorded_at: Wed, 25 Nov 2020 13:31:12 GMT
153
153
  - request:
154
154
  method: get
155
- uri: https://192.168.56.101:8006/api2/json/pools/pool1
155
+ uri: https://192.168.56.101:8006/api2/json/pools/?poolid=pool1
156
156
  body:
157
157
  encoding: US-ASCII
158
158
  string: ''
@@ -184,7 +184,28 @@ http_interactions:
184
184
  - Wed, 25 Nov 2020 13:31:10 GMT
185
185
  body:
186
186
  encoding: ASCII-8BIT
187
- string: '{"data":{"members":[]}}'
187
+ string: '{"data":[{"comment":"Parent pool","members":[]},{"comment":"Nested pool","members":[],"poolid":"pool1/nested"}]}'
188
+ http_version:
189
+ recorded_at: Wed, 25 Nov 2020 13:31:12 GMT
190
+ - request:
191
+ method: get
192
+ uri: https://192.168.56.101:8006/api2/json/pools/?poolid=pool1%2Fnested
193
+ body:
194
+ encoding: US-ASCII
195
+ string: ''
196
+ headers:
197
+ User-Agent:
198
+ - fog-core/2.2.3
199
+ response:
200
+ status:
201
+ code: 200
202
+ message: OK
203
+ headers:
204
+ Content-Type:
205
+ - application/json;charset=UTF-8
206
+ body:
207
+ encoding: ASCII-8BIT
208
+ string: '{"data":[{"comment":"Nested pool","members":[],"poolid":"pool1/nested"}]}'
188
209
  http_version:
189
210
  recorded_at: Wed, 25 Nov 2020 13:31:12 GMT
190
211
  - request:
@@ -229,7 +250,7 @@ http_interactions:
229
250
  recorded_at: Wed, 25 Nov 2020 13:31:12 GMT
230
251
  - request:
231
252
  method: put
232
- uri: https://192.168.56.101:8006/api2/json/pools/pool1
253
+ uri: https://192.168.56.101:8006/api2/json/pools/?poolid=pool1
233
254
  body:
234
255
  encoding: US-ASCII
235
256
  string: comment=Pool+1
@@ -305,7 +326,7 @@ http_interactions:
305
326
  recorded_at: Wed, 25 Nov 2020 13:31:12 GMT
306
327
  - request:
307
328
  method: get
308
- uri: https://192.168.56.101:8006/api2/json/pools/pool1
329
+ uri: https://192.168.56.101:8006/api2/json/pools/?poolid=pool1
309
330
  body:
310
331
  encoding: US-ASCII
311
332
  string: ''
@@ -337,12 +358,12 @@ http_interactions:
337
358
  - Wed, 25 Nov 2020 13:31:10 GMT
338
359
  body:
339
360
  encoding: ASCII-8BIT
340
- string: '{"data":{"comment":"Pool 1","members":[]}}'
361
+ string: '{"data":[{"comment":"Pool 1","members":[]}]}'
341
362
  http_version:
342
363
  recorded_at: Wed, 25 Nov 2020 13:31:12 GMT
343
364
  - request:
344
365
  method: put
345
- uri: https://192.168.56.101:8006/api2/json/pools/pool1
366
+ uri: https://192.168.56.101:8006/api2/json/pools/?poolid=pool1
346
367
  body:
347
368
  encoding: US-ASCII
348
369
  string: comment=Pool+1&vms=100
@@ -418,7 +439,7 @@ http_interactions:
418
439
  recorded_at: Wed, 25 Nov 2020 13:31:12 GMT
419
440
  - request:
420
441
  method: get
421
- uri: https://192.168.56.101:8006/api2/json/pools/pool1
442
+ uri: https://192.168.56.101:8006/api2/json/pools/?poolid=pool1
422
443
  body:
423
444
  encoding: US-ASCII
424
445
  string: ''
@@ -450,12 +471,12 @@ http_interactions:
450
471
  - Wed, 25 Nov 2020 13:31:10 GMT
451
472
  body:
452
473
  encoding: ASCII-8BIT
453
- string: '{"data":{"members":[],"comment":"Pool 1"}}'
474
+ string: '{"data":[{"members":[],"comment":"Pool 1"}]}'
454
475
  http_version:
455
476
  recorded_at: Wed, 25 Nov 2020 13:31:12 GMT
456
477
  - request:
457
478
  method: put
458
- uri: https://192.168.56.101:8006/api2/json/pools/pool1
479
+ uri: https://192.168.56.101:8006/api2/json/pools/?poolid=pool1
459
480
  body:
460
481
  encoding: US-ASCII
461
482
  string: comment=Pool+1&storage=local-lvm
@@ -531,7 +552,7 @@ http_interactions:
531
552
  recorded_at: Wed, 25 Nov 2020 13:31:12 GMT
532
553
  - request:
533
554
  method: get
534
- uri: https://192.168.56.101:8006/api2/json/pools/pool1
555
+ uri: https://192.168.56.101:8006/api2/json/pools/?poolid=pool1
535
556
  body:
536
557
  encoding: US-ASCII
537
558
  string: ''
@@ -563,8 +584,8 @@ http_interactions:
563
584
  - Wed, 25 Nov 2020 13:31:10 GMT
564
585
  body:
565
586
  encoding: ASCII-8BIT
566
- string: '{"data":{"members":[{"status":"available","disk":0,"storage":"local-lvm","shared":0,"maxdisk":4290772992,"id":"storage/pve/local-lvm","type":"storage","node":"pve"}],"comment":"Pool
567
- 1"}}'
587
+ string: '{"data":[{"members":[{"status":"available","disk":0,"storage":"local-lvm","shared":0,"maxdisk":4290772992,"id":"storage/pve/local-lvm","type":"storage","node":"pve"}],"comment":"Pool
588
+ 1"}]}'
568
589
  http_version:
569
590
  recorded_at: Wed, 25 Nov 2020 13:31:12 GMT
570
591
  - request:
@@ -606,7 +627,7 @@ http_interactions:
606
627
  recorded_at: Wed, 25 Nov 2020 13:31:12 GMT
607
628
  - request:
608
629
  method: get
609
- uri: https://192.168.56.101:8006/api2/json/pools/pool1
630
+ uri: https://192.168.56.101:8006/api2/json/pools/?poolid=pool1
610
631
  body:
611
632
  encoding: US-ASCII
612
633
  string: ''
@@ -638,12 +659,12 @@ http_interactions:
638
659
  - Wed, 25 Nov 2020 13:31:10 GMT
639
660
  body:
640
661
  encoding: ASCII-8BIT
641
- string: '{"data":{"comment":"Pool 1","members":[{"disk":0,"status":"available","shared":0,"storage":"local-lvm","id":"storage/pve/local-lvm","maxdisk":4290772992,"type":"storage","node":"pve"}]}}'
662
+ string: '{"data":[{"comment":"Pool 1","members":[{"disk":0,"status":"available","shared":0,"storage":"local-lvm","id":"storage/pve/local-lvm","maxdisk":4290772992,"type":"storage","node":"pve"}]}]}'
642
663
  http_version:
643
664
  recorded_at: Wed, 25 Nov 2020 13:31:12 GMT
644
665
  - request:
645
666
  method: put
646
- uri: https://192.168.56.101:8006/api2/json/pools/pool1
667
+ uri: https://192.168.56.101:8006/api2/json/pools/?poolid=pool1
647
668
  body:
648
669
  encoding: US-ASCII
649
670
  string: comment=Pool+1&vms=100&delete=1
@@ -719,7 +740,7 @@ http_interactions:
719
740
  recorded_at: Wed, 25 Nov 2020 13:31:12 GMT
720
741
  - request:
721
742
  method: get
722
- uri: https://192.168.56.101:8006/api2/json/pools/pool1
743
+ uri: https://192.168.56.101:8006/api2/json/pools/?poolid=pool1
723
744
  body:
724
745
  encoding: US-ASCII
725
746
  string: ''
@@ -751,12 +772,12 @@ http_interactions:
751
772
  - Wed, 25 Nov 2020 13:31:10 GMT
752
773
  body:
753
774
  encoding: ASCII-8BIT
754
- string: '{"data":{"comment":"Pool 1","members":[{"storage":"local-lvm","shared":0,"status":"available","disk":0,"node":"pve","type":"storage","maxdisk":4290772992,"id":"storage/pve/local-lvm"}]}}'
775
+ string: '{"data":[{"comment":"Pool 1","members":[{"storage":"local-lvm","shared":0,"status":"available","disk":0,"node":"pve","type":"storage","maxdisk":4290772992,"id":"storage/pve/local-lvm"}]}]}'
755
776
  http_version:
756
777
  recorded_at: Wed, 25 Nov 2020 13:31:12 GMT
757
778
  - request:
758
779
  method: put
759
- uri: https://192.168.56.101:8006/api2/json/pools/pool1
780
+ uri: https://192.168.56.101:8006/api2/json/pools/?poolid=pool1
760
781
  body:
761
782
  encoding: US-ASCII
762
783
  string: comment=Pool+1&storage=local-lvm&delete=1
@@ -832,7 +853,7 @@ http_interactions:
832
853
  recorded_at: Wed, 25 Nov 2020 13:31:12 GMT
833
854
  - request:
834
855
  method: get
835
- uri: https://192.168.56.101:8006/api2/json/pools/pool1
856
+ uri: https://192.168.56.101:8006/api2/json/pools/?poolid=pool1
836
857
  body:
837
858
  encoding: US-ASCII
838
859
  string: ''
@@ -864,12 +885,12 @@ http_interactions:
864
885
  - Wed, 25 Nov 2020 13:31:10 GMT
865
886
  body:
866
887
  encoding: ASCII-8BIT
867
- string: '{"data":{"comment":"Pool 1","members":[]}}'
888
+ string: '{"data":[{"comment":"Pool 1","members":[]}]}'
868
889
  http_version:
869
890
  recorded_at: Wed, 25 Nov 2020 13:31:12 GMT
870
891
  - request:
871
892
  method: delete
872
- uri: https://192.168.56.101:8006/api2/json/pools/pool1
893
+ uri: https://192.168.56.101:8006/api2/json/pools/?poolid=pool1
873
894
  body:
874
895
  encoding: US-ASCII
875
896
  string: ''
@@ -338,6 +338,11 @@ describe Fog::Proxmox::Identity do
338
338
  # Find by id
339
339
  pool = @service.pools.get pool_hash[:poolid]
340
340
  _(pool).wont_be_nil
341
+ _(pool.comment).must_equal 'Parent pool'
342
+ nested_pool = @service.get_pool 'pool1/nested'
343
+ _(nested_pool).wont_be_nil
344
+ _(nested_pool['poolid']).must_equal 'pool1/nested'
345
+ _(nested_pool['comment']).must_equal 'Nested pool'
341
346
  # Create 2nd time must fails
342
347
  _(proc do
343
348
  @service.pools.create(pool_hash)
metadata CHANGED
@@ -1,27 +1,26 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fog-proxmox
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.16.0
4
+ version: 0.16.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tristan Robert
8
- autorequire:
9
8
  bindir: bin
10
9
  cert_chain: []
11
- date: 2026-02-18 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: bundler
15
14
  requirement: !ruby/object:Gem::Requirement
16
15
  requirements:
17
- - - "~>"
16
+ - - ">="
18
17
  - !ruby/object:Gem::Version
19
18
  version: '2.1'
20
19
  type: :development
21
20
  prerelease: false
22
21
  version_requirements: !ruby/object:Gem::Requirement
23
22
  requirements:
24
- - - "~>"
23
+ - - ">="
25
24
  - !ruby/object:Gem::Version
26
25
  version: '2.1'
27
26
  - !ruby/object:Gem::Dependency
@@ -206,32 +205,46 @@ dependencies:
206
205
  - - "~>"
207
206
  - !ruby/object:Gem::Version
208
207
  version: '3.5'
208
+ - !ruby/object:Gem::Dependency
209
+ name: excon
210
+ requirement: !ruby/object:Gem::Requirement
211
+ requirements:
212
+ - - ">="
213
+ - !ruby/object:Gem::Version
214
+ version: 1.5.0
215
+ type: :runtime
216
+ prerelease: false
217
+ version_requirements: !ruby/object:Gem::Requirement
218
+ requirements:
219
+ - - ">="
220
+ - !ruby/object:Gem::Version
221
+ version: 1.5.0
209
222
  - !ruby/object:Gem::Dependency
210
223
  name: fog-core
211
224
  requirement: !ruby/object:Gem::Requirement
212
225
  requirements:
213
- - - "~>"
226
+ - - ">="
214
227
  - !ruby/object:Gem::Version
215
228
  version: '2.1'
216
229
  type: :runtime
217
230
  prerelease: false
218
231
  version_requirements: !ruby/object:Gem::Requirement
219
232
  requirements:
220
- - - "~>"
233
+ - - ">="
221
234
  - !ruby/object:Gem::Version
222
235
  version: '2.1'
223
236
  - !ruby/object:Gem::Dependency
224
237
  name: fog-json
225
238
  requirement: !ruby/object:Gem::Requirement
226
239
  requirements:
227
- - - "~>"
240
+ - - ">="
228
241
  - !ruby/object:Gem::Version
229
242
  version: '1.2'
230
243
  type: :runtime
231
244
  prerelease: false
232
245
  version_requirements: !ruby/object:Gem::Requirement
233
246
  requirements:
234
- - - "~>"
247
+ - - ">="
235
248
  - !ruby/object:Gem::Version
236
249
  version: '1.2'
237
250
  description: This library can be used as a module for `fog`.
@@ -431,7 +444,6 @@ licenses:
431
444
  - GPL-3.0
432
445
  metadata:
433
446
  rubygems_mfa_required: 'true'
434
- post_install_message:
435
447
  rdoc_options: []
436
448
  require_paths:
437
449
  - lib
@@ -439,15 +451,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
439
451
  requirements:
440
452
  - - ">="
441
453
  - !ruby/object:Gem::Version
442
- version: '2.7'
454
+ version: '3.1'
443
455
  required_rubygems_version: !ruby/object:Gem::Requirement
444
456
  requirements:
445
457
  - - ">="
446
458
  - !ruby/object:Gem::Version
447
459
  version: '0'
448
460
  requirements: []
449
- rubygems_version: 3.1.6
450
- signing_key:
461
+ rubygems_version: 3.7.0.dev
451
462
  specification_version: 4
452
463
  summary: Module for the 'Fog' gem to support Proxmox VE
453
464
  test_files: []