uricp 0.0.26 → 0.0.29

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
2
  SHA256:
3
- metadata.gz: 937fe351785726ef27786e889bed4d5a1a9f8cb37058916fdb4613c8df528855
4
- data.tar.gz: c895d696bcf2613018934f84907f43806fbbd98fce378bbe8663546e986a6608
3
+ metadata.gz: 9e24fdb3944db682f49ca90b6eb4639885389d689610e76cbcbf5d83e5619208
4
+ data.tar.gz: 99eeabde06d5f28aa9c33b1faa9306bf9fb65cba504c68359968388515061d8b
5
5
  SHA512:
6
- metadata.gz: 84b2b32f85a7eb23833501689a14b3776b605e431ff3c5035df641e9f3dbfea17ce9a26f521cb1815a91abe67083f96115f04a928431a7d196093b3387e67c4e
7
- data.tar.gz: 9ec10d1d48cd8452c32c2d1f25e196207921f282f323c8383e6ab70cb1b5b3d8beb889421bca912e7c15ef3670135d4ccde0da476ddf96a1d0031c4a9d848c4f
6
+ metadata.gz: ef6450ea82fe52174ec0037e4e62711c35da6c2c746ecab02d123ec00df35f5bf3697f3b55b595c509274b9446e7a7446f2167401793d17a1f6c00c88cba6186
7
+ data.tar.gz: 7b9d798e540f9f3e4418e7c7facd08120c1c889320baf8b7d707464aafdd89ad2f492ec7c0233e4537e05027ff6de7eb25fe79444ce753a11600c610cb9a9682
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- uricp (0.0.26)
4
+ uricp (0.0.29)
5
5
  childprocess (~> 1.0)
6
6
  filesize (= 0.0.2)
7
7
  methadone (~> 2.0.2)
@@ -32,7 +32,7 @@ Feature: Manipulate file images in ceph
32
32
  """
33
33
  And the output should contain:
34
34
  """
35
- rbd clone --id libvirt 'servers/freedos.qcow2@base' 'servers/srv-testy'
35
+ rbd clone --id libvirt 'servers/freedos.qcow2@base' 'servers/srv-testy' || { [ $? -eq 22 ] && rbd create --id libvirt -s 0 'servers/srv-testy'; };
36
36
  """
37
37
 
38
38
  Scenario: HTTP URI from file cache via unpopulated rbd cache
@@ -180,15 +180,23 @@ module Uricp::Strategy
180
180
  false
181
181
  end
182
182
 
183
- def in_rbd_cache(target)
183
+ def snap_check(target, name)
184
184
  result = false
185
- if dry_run?
186
- result = options['dry-cache'] == :rbd && options['cache_name'] !~ /srv-...../
187
- else
188
- sh "rbd snap ls --id #{rbd_id} --format json #{target} 2>/dev/null" do |stdout|
189
- result = JSON.parse(stdout).any? { |x| x['name'] == rbd_base_name }
190
- end
185
+ sh "rbd snap ls --id #{rbd_id} --format json #{target} 2>/dev/null" do |stdout|
186
+ result = JSON.parse(stdout).any? { |x| x['name'] == name }
191
187
  end
188
+ result
189
+ rescue Methadone::FailedCommandError
190
+ false
191
+ end
192
+
193
+ def in_rbd_cache(target)
194
+ result =
195
+ if dry_run?
196
+ options['dry-cache'] == :rbd && options['cache_name'] !~ /srv-...../
197
+ else
198
+ snap_check(target, rbd_base_name)
199
+ end
192
200
  result && rbd_clone_snapshot(target)
193
201
  end
194
202
  end
@@ -16,7 +16,9 @@ module Uricp::Strategy
16
16
  end
17
17
 
18
18
  def command
19
- "rbd clone --id #{rbd_id} '#{rbd_image_spec(from)}' '#{rbd_image_spec(to)}';"
19
+ "rbd clone --id #{rbd_id} '#{rbd_image_spec(from)}' "\
20
+ "'#{rbd_image_spec(to)}' || { [ $? -eq 22 ] && "\
21
+ "rbd create --id #{rbd_id} -s 0 '#{rbd_image_spec(to)}'; };"
20
22
  end
21
23
 
22
24
  def proposal
@@ -47,12 +47,7 @@ module Uricp::Strategy
47
47
 
48
48
  def snap_in_progress?
49
49
  return false if dry_run?
50
-
51
- result = false
52
- sh "rbd snap ls --id #{rbd_id} --format json #{rbd_image_spec(from)} 2>/dev/null" do |stdout|
53
- result = JSON.parse(stdout).any? { |x| x['name'] == rbd_snapshot_name }
54
- end
55
- result
50
+ snap_check(rbd_image_spec(from), rbd_snapshot_name)
56
51
  end
57
52
  end
58
53
  end
data/lib/uricp/version.rb CHANGED
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Uricp
4
- VERSION = '0.0.26'
4
+ VERSION = '0.0.29'
5
5
  DEFAULT_SEGMENT_SIZE = '5 GiB'
6
6
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: uricp
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.26
4
+ version: 0.0.29
5
5
  platform: ruby
6
6
  authors:
7
7
  - Neil Wilson
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-02-15 00:00:00.000000000 Z
11
+ date: 2022-03-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aruba