easy_e 0.0.4 → 0.0.5

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: f50d8ce432ff0875df7190d20f00fad39cc39cdf
4
- data.tar.gz: c0c9c19a0e901089695bcbabce288a31b48471a1
3
+ metadata.gz: 0a91d55595a725a593abdba2c35db12ff31fb4f6
4
+ data.tar.gz: 6bb9bd5752148dceb68db0390f0e715a1962534a
5
5
  SHA512:
6
- metadata.gz: b7864b3d11abeb3fe63578b4c9d94c05f8d246afd4fd994847dc184346c3d900a65b7179dccc430875d4c7b5dc85df09d365f437fb7fdbc998148cbeac18c21c
7
- data.tar.gz: 700f6e967d96b39594193a3f47486832aecdd16740e9b477bdc7ac6214f7a34067d2f40937aef4133b09aeca9cf59ad7797a21489e938c638a5c3ff1612b29f3
6
+ metadata.gz: 6137ed879ec554214bee56dda4195c67c56634d12d30d2b0f7f3353d2855d9ec6e556f92ed7d418650eb25df70bda87f022888ce1a209fad50769ad33e539790
7
+ data.tar.gz: 35b76fd9205b44a35102b8aa52ba31b1f971d902d0053e6c67e01dbb7f1e9bcea4315acc4afc575c455bf3d502396323dce78d659b27be23d5c73155d11ddf47
@@ -31,6 +31,10 @@ class EasyE
31
31
  options.logfile = filename
32
32
  logger.debug filename
33
33
  end
34
+
35
+ o.on("-d", "--directory PATH", "Only snap volumes mounted to PATH, a comma-separated list of directories") do |d|
36
+ options.directory = d
37
+ end
34
38
  end
35
39
 
36
40
  plugins.each { |plugin| plugin.collect_options @option_parser }
@@ -5,6 +5,7 @@ module EasyE::Snapshotter
5
5
 
6
6
  def take_snapshots
7
7
  attached_volumes.collect do |vol|
8
+ next unless should_snap vol
8
9
  logger.debug "Snapping #{vol.id}"
9
10
  snapshot = compute.snapshots.new
10
11
  snapshot.volume_id = vol.id
@@ -65,4 +66,14 @@ module EasyE::Snapshotter
65
66
  id = instance_id if id.nil? or id.empty?
66
67
  "#{Time.now.strftime "%Y%m%d%H%M%S"}-#{id}-#{vol.device}"
67
68
  end
69
+
70
+ def should_snap vol
71
+ options.directory.nil? or devices_to_snap.include?(vol.device)
72
+ end
73
+
74
+ def devices_to_snap
75
+ @devices_to_snap ||= options.directory.split(',').map { |dir| `df --output=source #{dir} | grep dev`.strip }
76
+ logger.debug @devices_to_snap
77
+ @devices_to_snap
78
+ end
68
79
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: easy_e
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Bryan Conrad
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-04-21 00:00:00.000000000 Z
11
+ date: 2015-06-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: fog