manageiq-smartstate 0.2.6 → 0.2.7

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
  SHA1:
3
- metadata.gz: ed6cdedaecb944396bb518edae782820b6321ebb
4
- data.tar.gz: 99be3b80679cb30fa0130c25c22b01cd92638601
3
+ metadata.gz: 98576a595a6fc668bca6de56af398d52114fec83
4
+ data.tar.gz: 29fda5c203c4eebf2083449effe8ab4127d0ed17
5
5
  SHA512:
6
- metadata.gz: 7f4f15e0ca102d88489d6966490b22f2ec8c7279b090a8dd3604c23f1b6843739aef1f99f985f17b59e4b2cf3b655af59301db5e27165083eefd1ad301cbbf9c
7
- data.tar.gz: f2880d65ff4a68d41364fbf2c76fa37a3cc27a4ba807e92c8af4e1afe180f7ce1650c16b44e2d853ae762998a123761ec1e2cf5fb9982d9d082847c80105fea1
6
+ metadata.gz: e7e3bdb59eb6e3724ed430315f9451c5dae75f1cd1dfc988e5f20d0a3a36903402f7357e842a08ea7cfe8d3553d7491a4f6f2bd624b590e373b45423ef9c4e42
7
+ data.tar.gz: 3b9ae707377b267a8c803bb3f478eca4ea81736367ff684dfcfbe85012bc487aa411a5e2e009cbb5df473c38dfb05a62b33f090078067013f49b8d1532589680
data/.codeclimate.yml CHANGED
@@ -26,6 +26,7 @@ engines:
26
26
  languages:
27
27
  ruby:
28
28
  mass_threshold: 25
29
+ count_threshold: 5
29
30
  javascript:
30
31
  eslint:
31
32
  enabled: false
@@ -39,6 +40,11 @@ engines:
39
40
  rubocop:
40
41
  enabled: true
41
42
  config: '.rubocop_cc.yml'
43
+ checks:
44
+ method-complexity:
45
+ enabled: true
46
+ config:
47
+ threshold: 8
42
48
  prepare:
43
49
  fetch:
44
50
  - url: "https://raw.githubusercontent.com/ManageIQ/guides/master/.rubocop_base.yml"
@@ -5,59 +5,69 @@ module Lvm2Scanner
5
5
 
6
6
  LVM_ID_LEN = 8
7
7
  LVM_TYPE_LEN = 8
8
- LVM_ID = "LABELONE"
8
+ LVM_ID = "LABELONE".freeze
9
9
 
10
10
  PV_ID_LEN = 32
11
11
  MDA_MAGIC_LEN = 16
12
- FMTT_MAGIC = "\040\114\126\115\062\040\170\133\065\101\045\162\060\116\052\076"
12
+ FMTT_MAGIC = "\040\114\126\115\062\040\170\133\065\101\045\162\060\116\052\076".freeze
13
13
 
14
14
  #
15
15
  # On disk label header.
16
16
  #
17
- LABEL_HEADER = BinaryStruct.new([
18
- "A#{LVM_ID_LEN}", 'lvm_id',
19
- 'Q', 'sector_xl',
20
- 'L', 'crc_xl',
21
- 'L', 'offset_xl',
22
- "A#{LVM_TYPE_LEN}", 'lvm_type'
23
- ])
17
+ LABEL_HEADER = BinaryStruct.new(
18
+ [
19
+ "A#{LVM_ID_LEN}", 'lvm_id',
20
+ 'Q', 'sector_xl',
21
+ 'L', 'crc_xl',
22
+ 'L', 'offset_xl',
23
+ "A#{LVM_TYPE_LEN}", 'lvm_type'
24
+ ]
25
+ )
24
26
 
25
27
  #
26
28
  # On disk physical volume header.
27
29
  #
28
- PV_HEADER = BinaryStruct.new([
29
- "A#{PV_ID_LEN}", 'pv_uuid',
30
- "Q", 'device_size_xl'
31
- ])
30
+ PV_HEADER = BinaryStruct.new(
31
+ [
32
+ "A#{PV_ID_LEN}", 'pv_uuid',
33
+ "Q", 'device_size_xl'
34
+ ]
35
+ )
32
36
 
33
37
  #
34
38
  # On disk disk location structure.
35
39
  #
36
- DISK_LOCN = BinaryStruct.new([
37
- "Q", 'offset',
38
- "Q", 'size'
39
- ])
40
+ DISK_LOCN = BinaryStruct.new(
41
+ [
42
+ "Q", 'offset',
43
+ "Q", 'size'
44
+ ]
45
+ )
40
46
 
41
47
  #
42
48
  # On disk metadata area header.
43
49
  #
44
- MDA_HEADER = BinaryStruct.new([
45
- "L", 'checksum_xl',
46
- "A#{MDA_MAGIC_LEN}", 'magic',
47
- "L", 'version',
48
- "Q", 'start',
49
- "Q", 'size'
50
- ])
50
+ MDA_HEADER = BinaryStruct.new(
51
+ [
52
+ "L", 'checksum_xl',
53
+ "A#{MDA_MAGIC_LEN}", 'magic',
54
+ "L", 'version',
55
+ "Q", 'start',
56
+ "Q", 'size'
57
+ ]
58
+ )
51
59
 
52
60
  #
53
61
  # On disk raw location header, points to metadata.
54
62
  #
55
- RAW_LOCN = BinaryStruct.new([
56
- "Q", 'offset',
57
- "Q", 'size',
58
- "L", 'checksum',
59
- "L", 'filler'
60
- ])
63
+ RAW_LOCN = BinaryStruct.new(
64
+ [
65
+ "Q", 'offset',
66
+ "Q", 'size',
67
+ "L", 'checksum',
68
+ "L", 'filler'
69
+ ]
70
+ )
61
71
 
62
72
  #
63
73
  # Scan the physical volume for LVM headers.
@@ -91,7 +101,7 @@ module Lvm2Scanner
91
101
  def self.readLabel(d, s)
92
102
  d.seek(s * SECTOR_SIZE, IO::SEEK_SET)
93
103
  lh = readStruct(d, LABEL_HEADER)
94
- return lh if lh.lvm_id == LVM_ID
104
+ return lh if lh&.lvm_id == LVM_ID
95
105
  nil
96
106
  end # def self.readLabel
97
107
 
@@ -152,5 +162,8 @@ module Lvm2Scanner
152
162
 
153
163
  def self.readStruct(d, struct)
154
164
  OpenStruct.new(struct.decode(d.read(struct.size)))
165
+ rescue StandardError => err
166
+ $log&.debug err.to_s
167
+ nil
155
168
  end # def self.readStruct
156
169
  end # module Lvm2Scanner
@@ -43,6 +43,7 @@ module AzureDiskCommon
43
43
  end
44
44
 
45
45
  def d_close_common
46
+ @managed_disk&.close
46
47
  return nil unless $log.debug?
47
48
  t1 = Time.now.to_i
48
49
  $log.debug("#{@my_class}: close(#{@disk_path})")
@@ -84,7 +85,7 @@ module AzureDiskCommon
84
85
  options[:date] = @snapshot if @snapshot
85
86
  ret = @storage_acct.get_blob_raw(@container, @blob, key, options)
86
87
  else
87
- ret = @storage_disk_svc.get_blob_raw(@disk_name, @resource_group, options)
88
+ ret = managed_disk.read(options)
88
89
  end
89
90
 
90
91
  @reads += 1
@@ -96,4 +97,8 @@ module AzureDiskCommon
96
97
  def key
97
98
  @key ||= @storage_acct_svc.list_account_keys(@storage_acct.name, @storage_acct.resource_group).fetch('key1')
98
99
  end
100
+
101
+ def managed_disk
102
+ @managed_disk ||= @storage_disk_svc.open(@disk_name, @resource_group)
103
+ end
99
104
  end
@@ -48,7 +48,7 @@ module AzureManagedDisk
48
48
  :start_byte => 0,
49
49
  :length => 1
50
50
  }
51
- data = @storage_disk_svc.get_blob_raw(@disk_name, @resource_group, options)
51
+ data = managed_disk.read(options)
52
52
  data.headers
53
53
  end
54
54
  end
@@ -25,13 +25,20 @@ module FsProbe
25
25
  partNum = dobj.partNum
26
26
 
27
27
  probes.each do |pmod|
28
- $log.debug "MIQ(FsProbe-getFsMod) FS probe attempting [#{pmod}] for [#{fname}] [partition: #{partNum}]"
28
+ $log.debug("MIQ(FsProbe-getFsMod) FS probe attempting [#{pmod}] for [#{fname}] [partition: #{partNum}]")
29
+
29
30
  require_relative "modules/#{pmod}"
30
- if Object.const_get(pmod).probe(dobj)
31
- mod = pmod.chomp("Probe")
32
- $log.info "MIQ(FsProbe-getFsMod) FS probe detected [#{mod}] for [#{fname}] [partition: #{partNum}]"
33
- require_relative "modules/#{mod}"
34
- return Object.const_get(mod)
31
+ begin
32
+ if Object.const_get(pmod).probe(dobj)
33
+ mod = pmod.chomp("Probe")
34
+ $log.info("MIQ(FsProbe-getFsMod) FS probe detected [#{mod}] for [#{fname}] [partition: #{partNum}]")
35
+ require_relative "modules/#{mod}"
36
+ return Object.const_get(mod)
37
+ end
38
+ rescue StandardError => err
39
+ $log.debug(err.to_s)
40
+ # continue to probe even when one probing fails.
41
+ next
35
42
  end
36
43
  end
37
44
  nil
@@ -7,18 +7,18 @@ module AUFSProbe
7
7
  AUFS_MAGIC_OFFSET = 52
8
8
  AUFS_MAGIC_SIZE = 4
9
9
  AUFS_SUPER_MAGIC = 0x12121313
10
- AUFS_FSTYPE = "aufs"
10
+ AUFS_FSTYPE = "aufs".freeze
11
11
 
12
12
  def self.probe(dobj)
13
- return(false) unless dobj.kind_of?(MiqDisk)
13
+ return false unless dobj.kind_of?(MiqDisk)
14
14
 
15
15
  # Check for aufs magic number or name at offset.
16
16
  dobj.seek(AUFS_SUPER_OFFSET + AUFS_MAGIC_OFFSET)
17
17
  buf = dobj.read(AUFS_MAGIC_SIZE)
18
- isAufs = false
19
- isAufs = true if buf.unpack('L')[0] == AUFS_SUPER_MAGIC
20
- isAufs = true if buf == AUFS_FSTYPE
21
- raise "AUFS is Not Supported" if isAufs
18
+ bs = buf&.unpack('L')
19
+ magic = bs.nil? ? nil : bs[0]
20
+
21
+ raise "AUFS is Not Supported" if magic == AUFS_SUPER_MAGIC || buf == AUFS_FSTYPE
22
22
 
23
23
  # No AUFS.
24
24
  false
@@ -2,24 +2,21 @@ require 'fs/ext3/superblock'
2
2
 
3
3
  module Ext3Probe
4
4
  def self.probe(dobj)
5
- $log.debug("Ext3Probe >> dobj=#{dobj}") if $log
6
5
  unless dobj.kind_of?(MiqDisk)
7
- $log.debug "Ext3Probe << FALSE because Disk Object class is not MiqDisk, but is '#{dobj.class}'" if $log
6
+ $log&.debug("Ext3Probe << FALSE because Disk Object class is not MiqDisk, but is '#{dobj.class}'")
8
7
  return false
9
8
  end
10
9
 
11
- begin
12
- dobj.seek(0, IO::SEEK_SET)
13
- sb = Ext3::Superblock.new(dobj)
10
+ dobj.seek(0, IO::SEEK_SET)
11
+ Ext3::Superblock.new(dobj)
14
12
 
15
- # If initializing the superblock does not throw any errors, then this is ext3
16
- $log.debug("Ext3Probe << TRUE")
17
- return true
18
- rescue => err
19
- $log.debug "Ext3Probe << FALSE because #{err.message}" if $log
20
- return false
21
- ensure
22
- dobj.seek(0, IO::SEEK_SET)
23
- end
13
+ # If initializing the superblock does not throw any errors, then this is ext3
14
+ $log&.debug("Ext3Probe << TRUE")
15
+ return true
16
+ rescue => err
17
+ $log&.debug("Ext3Probe << FALSE because #{err.message}")
18
+ return false
19
+ ensure
20
+ dobj.seek(0, IO::SEEK_SET)
24
21
  end
25
22
  end
@@ -2,24 +2,21 @@ require 'fs/ext4/superblock'
2
2
 
3
3
  module Ext4Probe
4
4
  def self.probe(dobj)
5
- $log.debug("Ext4Probe >> dobj=#{dobj}") if $log
6
5
  unless dobj.kind_of?(MiqDisk)
7
- $log.debug "Ext4Probe << FALSE because Disk Object class is not MiqDisk, but is '#{dobj.class}'" if $log
6
+ $log&.debug("Ext4Probe << FALSE because Disk Object class is not MiqDisk, but is '#{dobj.class}'")
8
7
  return false
9
8
  end
10
9
 
11
- begin
12
- dobj.seek(0, IO::SEEK_SET)
13
- sb = Ext4::Superblock.new(dobj)
10
+ dobj.seek(0, IO::SEEK_SET)
11
+ Ext4::Superblock.new(dobj)
14
12
 
15
- # If initializing the superblock does not throw any errors, then this is Ext4
16
- $log.debug("Ext4Probe << TRUE")
17
- return true
18
- rescue => err
19
- $log.debug "Ext4Probe << FALSE because #{err.message}" if $log
20
- return false
21
- ensure
22
- dobj.seek(0, IO::SEEK_SET)
23
- end
13
+ # If initializing the superblock does not throw any errors, then this is Ext4
14
+ $log&.debug("Ext4Probe << TRUE")
15
+ return true
16
+ rescue => err
17
+ $log&.debug("Ext4Probe << FALSE because #{err.message}")
18
+ return false
19
+ ensure
20
+ dobj.seek(0, IO::SEEK_SET)
24
21
  end
25
22
  end
@@ -1,8 +1,7 @@
1
1
  module Fat32Probe
2
2
  def self.probe(dobj)
3
- $log.debug("Fat32Probe >> dobj=#{dobj}") if $log
4
3
  unless dobj.kind_of?(MiqDisk)
5
- $log.debug "Fat32Probe << FALSE because Disk Object class is not MiqDisk, but is '#{dobj.class}'" if $log
4
+ $log&.debug "Fat32Probe << FALSE because Disk Object class is not MiqDisk, but is '#{dobj.class}'"
6
5
  return false
7
6
  end
8
7
 
@@ -11,13 +10,18 @@ module Fat32Probe
11
10
  bs = dobj.read(512)
12
11
 
13
12
  # Check byte 66 for 0x29 (extended signature).
14
- if bs[66] != 0x29
15
- $log.debug("Fat32Probe << FALSE because there is no extended signature") if $log
13
+ if bs.nil? || bs[66] != 0x29
14
+ $log&.debug("Fat32Probe << FALSE because there is no extended signature")
16
15
  return false
17
16
  end
18
17
 
19
18
  # Check file system label for 'FAT32 '
20
19
  # NOTE: This works for MS tools but maybe not for others.
20
+ if bs.length < 90
21
+ $log&.debug("Fat32Probe << FALSE because there is no filesystem label")
22
+ return false
23
+ end
24
+
21
25
  fslabel = bs[82, 8].unpack('a8')[0].strip
22
26
  fat32 = fslabel == 'FAT32'
23
27
  if $log
@@ -9,7 +9,8 @@ module HFSProbe
9
9
 
10
10
  # Check for HFS signature in first int.
11
11
  dobj.seek(HFS_SUPER_OFFSET + HFS_MAGIC_OFFSET)
12
- magic = dobj.read(HFS_MAGIC_SIZE).unpack('S')[0]
12
+ bs = dobj.read(HFS_MAGIC_SIZE)&.unpack('S')
13
+ magic = bs.nil? ? nil : bs[0]
13
14
  raise "HFS is Not Supported" if magic == HFS_SUPER_MAGIC
14
15
 
15
16
  # No HFS.
@@ -2,7 +2,7 @@ module Iso9660Probe
2
2
  ISO9660FS_SUPER_OFFSET = 32768
3
3
  ISO9660FS_MAGIC_OFFSET = 1
4
4
  ISO9660FS_MAGIC_SIZE = 5
5
- ISO9660FS_MAGIC = "CD001"
5
+ ISO9660FS_MAGIC = "CD001".freeze
6
6
 
7
7
  def self.probe(dobj)
8
8
  return false unless dobj.kind_of?(MiqDisk)
@@ -1,14 +1,14 @@
1
1
  module NTFSProbe
2
2
  def self.probe(dobj)
3
- $log.debug("NTFSProbe >> dobj=#{dobj}") if $log
4
3
  unless dobj.kind_of?(MiqDisk)
5
- $log.debug "NTFSProbe << FALSE because Disk Object class is not MiqDisk, but is '#{dobj.class}'" if $log
4
+ $log&.debug "NTFSProbe << FALSE because Disk Object class is not MiqDisk, but is '#{dobj.class}'"
6
5
  return false
7
6
  end
8
7
 
9
8
  # Check for oem name = NTFS.
10
9
  dobj.seek(3)
11
- oem = dobj.read(8).unpack('a8')[0].strip
10
+ bs = dobj.read(8)&.unpack('a8')
11
+ oem = bs[0].strip if bs
12
12
 
13
13
  ntfs = oem == 'NTFS'
14
14
  if $log
@@ -1,12 +1,11 @@
1
1
  module ReFSProbe
2
- FS_SIGNATURE = [0x00, 0x00, 0x00, 0x52, 0x65, 0x46, 0x53, 0x00] # ...ReFS.
2
+ FS_SIGNATURE = [0x00, 0x00, 0x00, 0x52, 0x65, 0x46, 0x53, 0x00].freeze # ...ReFS.
3
3
 
4
4
  def self.probe(dobj)
5
- $log.debug "ReFSProbe >> dobj=#{dobj}" if $log
6
- return false unless dobj.kind_of?(MiqDisk)
5
+ return false unless dobj.kind_of?(MiqDisk)
7
6
 
8
7
  dobj.seek(0, IO::SEEK_SET)
9
- magic = dobj.read(FS_SIGNATURE.size).unpack('C*')
8
+ magic = dobj.read(FS_SIGNATURE.size)&.unpack('C*')
10
9
 
11
10
  # Check for ReFS signature
12
11
  raise "ReFS is Not Supported" if magic == FS_SIGNATURE
@@ -1,6 +1,6 @@
1
1
  module RealFSProbe
2
2
  def self.probe(dobj)
3
3
  return(true) if dobj.to_s == "test_disk"
4
- (false)
4
+ false
5
5
  end
6
6
  end
@@ -2,14 +2,14 @@ module Reiser4Probe
2
2
  REISER4_MASTER_OFFSET = 65536
3
3
  REISER4_MAGIC_OFFSET = REISER4_MASTER_OFFSET
4
4
  REISER4_MAGIC_SIZE = 10
5
- REISER4_MAGIC = "ReIsEr4"
5
+ REISER4_MAGIC = "ReIsEr4".freeze
6
6
 
7
7
  def self.probe(dobj)
8
8
  return(false) unless dobj.kind_of?(MiqDisk)
9
9
 
10
10
  # Assume Reiser4 - read magic at offset.
11
11
  dobj.seek(REISER4_MAGIC_OFFSET)
12
- magic = dobj.read(REISER4_MAGIC_SIZE).strip
12
+ magic = dobj.read(REISER4_MAGIC_SIZE)&.strip
13
13
  raise "Reiser4 is Not Supported" if magic == REISER4_MAGIC
14
14
 
15
15
  # No Reiser4.
@@ -1,19 +1,17 @@
1
1
  module ReiserFSProbe
2
2
  REISERFS_DISK_OFFSET_NEW = 64 * 1024
3
- REISERFS_DISK_OFFSET_OLD = 8 * 1024
3
+ REISERFS_DISK_OFFSET_OLD = 8 * 1024
4
4
 
5
5
  REISERFS_SUPER_SIZE = 204
6
6
 
7
7
  REISERFS_MAGIC_OFFSET = 52
8
8
  REISERFS_MAGIC_SIZE = 10
9
9
 
10
- REISERFS_MAGIC1 = "ReIsErFs"
11
- REISERFS_MAGIC2 = "ReIsEr2Fs"
12
- REISERFS_MAGIC3 = "ReIsEr3Fs"
10
+ REISERFS_MAGIC1 = "ReIsErFs".freeze
11
+ REISERFS_MAGIC2 = "ReIsEr2Fs".freeze
12
+ REISERFS_MAGIC3 = "ReIsEr3Fs".freeze
13
13
 
14
14
  def self.probe(dobj)
15
- return false unless dobj.kind_of?(MiqDisk)
16
-
17
15
  return true if ReiserFSProbe.isMagic?(ReiserFSProbe.getMagic(dobj, REISERFS_DISK_OFFSET_NEW))
18
16
  return true if ReiserFSProbe.isMagic?(ReiserFSProbe.getMagic(dobj, REISERFS_DISK_OFFSET_OLD))
19
17
 
@@ -22,6 +20,8 @@ module ReiserFSProbe
22
20
  end
23
21
 
24
22
  def self.getMagic(dobj, offset)
23
+ return false unless dobj.kind_of?(MiqDisk)
24
+
25
25
  # Assume ReiserFS - read superblock at desired offset.
26
26
  dobj.seek(offset) # new disk start offset.
27
27
  sb = dobj.read(REISERFS_SUPER_SIZE)
@@ -9,7 +9,7 @@ module UnionFSProbe
9
9
 
10
10
  # Assume UnionFS - read magic at offset.
11
11
  dobj.seek(UNIONFS_SUPER_OFFSET + UNIONFS_MAGIC_OFFSET)
12
- magic = dobj.read(UNIONFS_MAGIC_SIZE).unpack('L')
12
+ magic = dobj.read(UNIONFS_MAGIC_SIZE)&.unpack('L')
13
13
  raise "UnionFS is Not Supported" if magic == UNIONFS_MAGIC
14
14
 
15
15
  # No UnionFS.
@@ -2,25 +2,22 @@ require 'fs/xfs/superblock'
2
2
 
3
3
  module XFSProbe
4
4
  def self.probe(dobj)
5
- $log.debug("XFSProbe >> dobj=#{dobj}") if $log
6
5
  unless dobj.kind_of?(MiqDisk)
7
- $log.debug "XFSProbe << FALSE because Disk Object class is not MiqDisk, but is '#{dobj.class}'" if $log
6
+ $log&.debug("XFSProbe << FALSE because Disk Object class is not MiqDisk, but is '#{dobj.class}'")
8
7
  return false
9
8
  end
10
9
 
11
- begin
12
- # The first Allocation Group's Superblock is at block zero.
13
- dobj.seek(0, IO::SEEK_SET)
14
- XFS::Superblock.new(dobj)
10
+ # The first Allocation Group's Superblock is at block zero.
11
+ dobj.seek(0, IO::SEEK_SET)
12
+ XFS::Superblock.new(dobj)
15
13
 
16
- # If initializing the superblock does not throw any errors, then this is XFS
17
- $log.debug("XFSProbe << TRUE")
18
- return true
19
- rescue => err
20
- $log.debug "XFSProbe << FALSE because #{err.message}" if $log
21
- return false
22
- ensure
23
- dobj.seek(0, IO::SEEK_SET)
24
- end
14
+ # If initializing the superblock does not throw any errors, then this is XFS
15
+ $log&.debug("XFSProbe << TRUE")
16
+ return true
17
+ rescue => err
18
+ $log&.debug("XFSProbe << FALSE because #{err.message}")
19
+ return false
20
+ ensure
21
+ dobj.seek(0, IO::SEEK_SET)
25
22
  end
26
23
  end
@@ -9,7 +9,8 @@ module ZFSProbe
9
9
 
10
10
  # Check for magic at uberblock offset.
11
11
  dobj.seek(ZFS_SUPER_OFFSET + ZFS_MAGIC_OFFSET)
12
- magic = dobj.read(ZFS_MAGIC_SIZE).unpack('L')[0]
12
+ bs = dobj.read(ZFS_MAGIC_SIZE)&.unpack('L')
13
+ magic = bs.nil? ? nil : bs[0]
13
14
  raise "ZFS is Not Supported" if magic == ZFS_SUPER_MAGIC
14
15
 
15
16
  # No ZFS.
@@ -1,5 +1,5 @@
1
1
  module ManageIQ
2
2
  module Smartstate
3
- VERSION = "0.2.6".freeze
3
+ VERSION = "0.2.7".freeze
4
4
  end
5
5
  end
@@ -20,7 +20,7 @@ Gem::Specification.new do |spec|
20
20
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
21
21
  spec.require_paths = ["lib"]
22
22
 
23
- spec.add_dependency "azure-armrest", "~> 0.9"
23
+ spec.add_dependency "azure-armrest", "~> 0.9.5"
24
24
  spec.add_dependency "binary_struct", "~> 2.1"
25
25
  spec.add_dependency "iniparse"
26
26
  spec.add_dependency "linux_block_device", "~>0.2.1"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: manageiq-smartstate
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.6
4
+ version: 0.2.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - ManageIQ Developers
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-12-14 00:00:00.000000000 Z
11
+ date: 2018-02-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: azure-armrest
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '0.9'
19
+ version: 0.9.5
20
20
  type: :runtime
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: '0.9'
26
+ version: 0.9.5
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: binary_struct
29
29
  requirement: !ruby/object:Gem::Requirement