CloudyScripts 1.8.33 → 1.8.34

Sign up to get free protection for your applications and to get access to all the features.
data/Rakefile CHANGED
@@ -12,7 +12,7 @@ require 'rake/testtask'
12
12
 
13
13
  spec = Gem::Specification.new do |s|
14
14
  s.name = 'CloudyScripts'
15
- s.version = '1.8.33'
15
+ s.version = '1.8.34'
16
16
  s.has_rdoc = true
17
17
  s.extra_rdoc_files = ['README.rdoc', 'LICENSE']
18
18
  s.summary = 'Scripts to facilitate programming for infrastructure clouds.'
@@ -563,14 +563,30 @@ module StateTransitionHelper
563
563
  # Input Parameters:
564
564
  # * mount_point => directory to be unmounted
565
565
  def unmount_fs(mount_point)
566
- post_message("Going to unmount ...")
566
+ post_message("going to unmount #{mount_point}...")
567
567
  @logger.debug "unmount #{mount_point}"
568
- remote_handler().umount(mount_point)
569
- sleep(2) #give umount some time
570
- if remote_handler().drive_mounted?(mount_point)
571
- raise Exception.new("drive #{mount_point} not unmounted")
568
+
569
+ done = false
570
+ timeout = 120
571
+ while timeout > 0
572
+ res = remote_handler().umount(mount_point)
573
+ if !remote_handler().drive_mounted?(mount_point)
574
+ done = true
575
+ timeout = 0
576
+ end
577
+ sleep(5)
578
+ timeout -= 5
579
+ end
580
+ msg = ""
581
+ if !done
582
+ msg = "Failed to umount '#{mount_point}'"
583
+ @logger.error "#{msg}"
584
+ raise Exception.new("#{mount_point} still mounted")
585
+ else
586
+ msg = "#{mount_point} successfully mounted"
587
+ @logger.info "#{msg}"
572
588
  end
573
- post_message("device unmounted")
589
+ post_message("#{msg}")
574
590
  end
575
591
 
576
592
  # Get root partition label
@@ -193,6 +193,7 @@ class CopyAmi < Ec2Script
193
193
  #
194
194
  connect(@context[:target_dns_name], @context[:target_ssh_username], nil, @context[:target_ssh_keydata])
195
195
  enable_ssh_tty(@context[:target_dns_name])
196
+ unmount_fs(dest_dir)
196
197
  disconnect()
197
198
  DataCopiedState.new(@context)
198
199
  end
@@ -172,6 +172,7 @@ class CopySnapshot< Ec2Script
172
172
  #
173
173
  connect(@context[:target_dns_name], @context[:target_ssh_username], nil, @context[:target_ssh_keydata])
174
174
  enable_ssh_tty(@context[:target_dns_name])
175
+ unmount_fs(dest_dir)
175
176
  disconnect()
176
177
  DataCopiedState.new(@context)
177
178
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: CloudyScripts
3
3
  version: !ruby/object:Gem::Version
4
- hash: 117
4
+ hash: 115
5
5
  prerelease: false
6
6
  segments:
7
7
  - 1
8
8
  - 8
9
- - 33
10
- version: 1.8.33
9
+ - 34
10
+ version: 1.8.34
11
11
  platform: ruby
12
12
  authors:
13
13
  - Matthias Jung
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2011-07-29 00:00:00 +00:00
18
+ date: 2011-08-01 00:00:00 +00:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency