rake-proxmox 0.5.1 → 0.7.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 406ad07021dc69410ea41a0447aa3bf63bf65e29
4
- data.tar.gz: 1ed90541f2ea1faa19477eb237f80c260a7fcc60
2
+ SHA256:
3
+ metadata.gz: 38d1fc514482d516b169e6b0d65dd169c2a272b98c95ab11fd74906f428095fd
4
+ data.tar.gz: b56580a0dbcd1f499643a5ec1ec379ac65df67df8d82a87ab4cdb6a1e47c8261
5
5
  SHA512:
6
- metadata.gz: c30e93e287afaaeec68e285af4a61ba4d2cba5d6a88e821bfcbf8479989a9a7bc76d21f4da6172770cddb6245f433dfba2c7b40e8474ac91e5712960a7d68918
7
- data.tar.gz: 9db96730ceb4f51d56efba80fb40643c386f6eb2fd1e30af299b29913f4ffda0c10b3483817a0098f5cf4b090e4e8c746d133f82c70fbfb3e6b38d488c656c43
6
+ metadata.gz: bdb16c87e9d13238f50ff27738849e853f3b70c44d645e3561cde969ffa2edf45917fe321576ba92a83af7e83646537f36d57fbc104be72c2a19a7bf947d7260
7
+ data.tar.gz: 4f1e8d9edae23d054f7015fdc47adcd61ded2912a42c3c9efacef3d5b5fed340abc8a308b6e6cd5cafa92af9bea935fffe61b7287cb5e2f51959a3b497928710
data/.travis.yml CHANGED
@@ -1,5 +1,5 @@
1
1
  sudo: false
2
2
  language: ruby
3
3
  rvm:
4
- - 2.3.1
5
- before_install: gem install bundler -v 1.13.7
4
+ - 2.5.5
5
+ before_install: gem install bundler -v 1.17.3
@@ -486,6 +486,11 @@ module Rake
486
486
  http_action_get("nodes/#{node}/storage/#{storage}/content")
487
487
  end
488
488
 
489
+ # delete volume from storage
490
+ def storage_volume_delete(volume, node = @node, storage = 'local')
491
+ http_action_delete "nodes/#{node}/storage/#{storage}/content/#{volume}"
492
+ end
493
+
489
494
  # get backup job list
490
495
  def fetch_backup_jobs
491
496
  http_action_get('cluster/backup')
@@ -1,5 +1,5 @@
1
1
  module Rake
2
2
  module Proxmox
3
- VERSION = '0.5.1'.freeze
3
+ VERSION = '0.7.0'.freeze
4
4
  end
5
5
  end
data/lib/rake/proxmox.rb CHANGED
@@ -262,6 +262,16 @@ module Rake
262
262
  end
263
263
  end
264
264
 
265
+ desc 'delete proxmox storage volume'
266
+ task 'storage:delete:volume', %i[volume node storage] do |_t, args|
267
+ args.with_defaults(storage: 'local')
268
+ args.with_defaults(node: ENV['PROXMOX_NODE'])
269
+ taskid = proxmox.storage_volume_delete(args.volume,
270
+ args.node,
271
+ args.storage)
272
+ wait_for_task(taskid, args.node)
273
+ end
274
+
265
275
  desc 'list all backup jobs'
266
276
  task 'cluster:backupjob:list', %i[json] do |_t, args|
267
277
  # handle arguments
@@ -324,19 +334,19 @@ module Rake
324
334
  " to #{args.range_max}: "
325
335
  puts exclude_list.join(',')
326
336
  proxmox.fetch_backup_jobs.each do |c|
327
- bjob_list = c['exclude'].split(',')
337
+ bjob_exclude = c['exclude'].nil? ? '' : c['exclude']
338
+ bjob_list = bjob_exclude.split(',')
328
339
  unless (exclude_list - bjob_list).any?
329
340
  puts 'Nothing to exclude. All VMs in given range are in'\
330
341
  ' current exclude list in backup job '\
331
- "with id #{c['id']} and starttime #{c['starttime']}."
342
+ "with id #{c['id']}."
332
343
  next
333
344
  end
334
345
  puts 'Add following IDs to exclude list in backup job '\
335
- "with id #{c['id']} and starttime #{c['starttime']}:"
346
+ "with id #{c['id']}:"
336
347
  add_to_bjob = exclude_list - bjob_list
337
348
  puts add_to_bjob.join(',')
338
349
  new_settings = {
339
- starttime: c['starttime'],
340
350
  exclude: (exclude_list | bjob_list).join(',')
341
351
  }
342
352
  response = proxmox.update_backup_job(c['id'], new_settings)
@@ -354,7 +364,7 @@ module Rake
354
364
  task 'backup:list', %i[vmid node storage] do |_t, args|
355
365
  args.with_defaults(storage: 'local')
356
366
  args.with_defaults(node: ENV['PROXMOX_NODE'])
357
- $stderr.puts "backup list vmid:#{args.vmid} #{args.storage}@"\
367
+ warn "backup list vmid:#{args.vmid} #{args.storage}@"\
358
368
  "#{args.node}:"
359
369
  proxmox.list_storage(args.node, args.storage).each do |c|
360
370
  # print " content:#{c['content']} volid:#{c['volid']}\n"
data/rake-proxmox.gemspec CHANGED
@@ -1,6 +1,4 @@
1
- # coding: utf-8
2
-
3
- lib = File.expand_path('../lib', __FILE__)
1
+ lib = File.expand_path('lib', __dir__)
4
2
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
5
3
  require 'rake/proxmox/version'
6
4
 
@@ -29,13 +27,13 @@ Gem::Specification.new do |spec|
29
27
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
30
28
  spec.require_paths = ['lib']
31
29
 
32
- spec.add_development_dependency 'bundler', '~> 1.11'
33
- spec.add_development_dependency 'rake', '~> 10.0'
30
+ spec.add_development_dependency 'bundler', '~> 1.17.2'
31
+ spec.add_development_dependency 'rake', '~> 13.0'
34
32
  spec.add_development_dependency 'rspec', '~> 3.0'
35
33
  spec.add_development_dependency 'webmock', '~> 3.0'
36
34
 
37
- spec.add_runtime_dependency 'faraday', '~> 0.14.0'
38
- spec.add_runtime_dependency 'faraday_middleware', '~> 0.12.2'
35
+ spec.add_runtime_dependency 'faraday', '~> 1.10.3'
36
+ spec.add_runtime_dependency 'faraday_middleware', '~> 1.2.0'
39
37
  spec.add_runtime_dependency 'httpclient', '~> 2.8.3'
40
38
  spec.add_runtime_dependency 'json', '~> 2.1'
41
39
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rake-proxmox
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.1
4
+ version: 0.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sebastian Lehn
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-04-23 00:00:00.000000000 Z
11
+ date: 2024-04-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -16,28 +16,28 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '1.11'
19
+ version: 1.17.2
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '1.11'
26
+ version: 1.17.2
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rake
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '10.0'
33
+ version: '13.0'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '10.0'
40
+ version: '13.0'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rspec
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -72,28 +72,28 @@ dependencies:
72
72
  requirements:
73
73
  - - "~>"
74
74
  - !ruby/object:Gem::Version
75
- version: 0.14.0
75
+ version: 1.10.3
76
76
  type: :runtime
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - "~>"
81
81
  - !ruby/object:Gem::Version
82
- version: 0.14.0
82
+ version: 1.10.3
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: faraday_middleware
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
87
  - - "~>"
88
88
  - !ruby/object:Gem::Version
89
- version: 0.12.2
89
+ version: 1.2.0
90
90
  type: :runtime
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
94
  - - "~>"
95
95
  - !ruby/object:Gem::Version
96
- version: 0.12.2
96
+ version: 1.2.0
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: httpclient
99
99
  requirement: !ruby/object:Gem::Requirement
@@ -164,8 +164,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
164
164
  - !ruby/object:Gem::Version
165
165
  version: '0'
166
166
  requirements: []
167
- rubyforge_project:
168
- rubygems_version: 2.5.1
167
+ rubygems_version: 3.0.3
169
168
  signing_key:
170
169
  specification_version: 4
171
170
  summary: Provides rake tasks for proxmox api