gosen 0.1.2 → 0.1.3
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.
- data/Rakefile +0 -10
- data/VERSION +1 -1
- data/lib/gosen/deployment_run.rb +2 -1
- data/test/gosen/test_deployment_run.rb +23 -0
- metadata +9 -16
data/Rakefile
CHANGED
@@ -13,7 +13,6 @@ begin
|
|
13
13
|
gem.add_dependency "restfully", ">= 0.5.1"
|
14
14
|
gem.add_development_dependency "mocha", ">= 0.9.8"
|
15
15
|
gem.add_development_dependency "shoulda", ">= 2.10.2"
|
16
|
-
gem.add_development_dependency "yard", ">= 0"
|
17
16
|
# gem is a Gem::Specification... see http://www.rubygems.org/read/chapter/20 for additional settings
|
18
17
|
end
|
19
18
|
Jeweler::GemcutterTasks.new
|
@@ -44,12 +43,3 @@ end
|
|
44
43
|
task :test => :check_dependencies
|
45
44
|
|
46
45
|
task :default => :test
|
47
|
-
|
48
|
-
begin
|
49
|
-
require 'yard'
|
50
|
-
YARD::Rake::YardocTask.new
|
51
|
-
rescue LoadError
|
52
|
-
task :yardoc do
|
53
|
-
abort "YARD is not available. In order to run yardoc, you must: sudo gem install yard"
|
54
|
-
end
|
55
|
-
end
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.1.
|
1
|
+
0.1.3
|
data/lib/gosen/deployment_run.rb
CHANGED
@@ -25,7 +25,7 @@ module Gosen
|
|
25
25
|
end
|
26
26
|
|
27
27
|
def terminated?
|
28
|
-
@deployment_resource['status']
|
28
|
+
@deployment_resource['status'] != 'processing'
|
29
29
|
end
|
30
30
|
|
31
31
|
def good_nodes
|
@@ -57,6 +57,7 @@ module Gosen
|
|
57
57
|
Kernel.sleep(Gosen::DeploymentRun::POLLING_TIME)
|
58
58
|
@deployment_resource.reload
|
59
59
|
end
|
60
|
+
raise Gosen::Error if @deployment_resource['status'] == 'error'
|
60
61
|
end
|
61
62
|
|
62
63
|
def update_nodes
|
@@ -89,4 +89,27 @@ class TestDeploymentRun < Test::Unit::TestCase
|
|
89
89
|
assert_equal([], @deployment.bad_nodes)
|
90
90
|
end
|
91
91
|
end
|
92
|
+
|
93
|
+
context 'A failed deployment run instance' do
|
94
|
+
setup do
|
95
|
+
@ssh_public_key = 'ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAvwM1XBJCIMtAyQlweE7BVRtvgyKdwGTeYCI4AFlsTtti4y0Ipe5Hsygx3p7S0BHFiJsVZWDANMRwZ4tcjp8YnjnMkG2yp1jB1qgUf34t/MmEQL0KkoOk8tIIb28o7nTFYKO15mXJm9yBVS1JY8ozEfnA7s5hkrdnvM6h9Jv6VScp8C1XTKmpEy3sWOeUlmCkYftYSr1fLM/7qk9S2TnljA/CGiK9dq2mhJMjnDtulVrdpc1hbh+0oCzL6m2BfXX3v4q1ORml8o04oFeEYDN5qzZneL+FzK+YfJIidvsjZ9ziVTv+7Oy5ms4wvoKiUGNapP0v/meXXBU1KvFRof3VZQ== priteau@parallelogram.local'
|
96
|
+
@resource = mock()
|
97
|
+
@resource.stubs(:[]).with('status').returns('processing', 'processing', 'error')
|
98
|
+
@resource.expects(:reload).twice
|
99
|
+
Kernel.expects(:sleep).with(Gosen::DeploymentRun::POLLING_TIME).twice
|
100
|
+
|
101
|
+
@environment = 'lenny-x64-base'
|
102
|
+
@nodes = [ 'paramount-1.rennes.grid5000.fr' ]
|
103
|
+
@deployments = mock()
|
104
|
+
@deployments.expects(:submit).with({ :environment => @environment, :nodes => @nodes, :key => @ssh_public_key}).returns(@resource)
|
105
|
+
@site = stub(:deployments => @deployments)
|
106
|
+
@deployment = Gosen::DeploymentRun.new(@site, @environment, @nodes, { :ssh_public_key => @ssh_public_key })
|
107
|
+
end
|
108
|
+
|
109
|
+
should 'raise an exception' do
|
110
|
+
assert_raise(Gosen::Error) {
|
111
|
+
@deployment.join
|
112
|
+
}
|
113
|
+
end
|
114
|
+
end
|
92
115
|
end
|
metadata
CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
|
|
5
5
|
segments:
|
6
6
|
- 0
|
7
7
|
- 1
|
8
|
-
-
|
9
|
-
version: 0.1.
|
8
|
+
- 3
|
9
|
+
version: 0.1.3
|
10
10
|
platform: ruby
|
11
11
|
authors:
|
12
12
|
- Pierre Riteau
|
@@ -14,13 +14,14 @@ autorequire:
|
|
14
14
|
bindir: bin
|
15
15
|
cert_chain: []
|
16
16
|
|
17
|
-
date: 2010-
|
17
|
+
date: 2010-07-29 00:00:00 -04:00
|
18
18
|
default_executable:
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|
21
21
|
name: restfully
|
22
22
|
prerelease: false
|
23
23
|
requirement: &id001 !ruby/object:Gem::Requirement
|
24
|
+
none: false
|
24
25
|
requirements:
|
25
26
|
- - ">="
|
26
27
|
- !ruby/object:Gem::Version
|
@@ -35,6 +36,7 @@ dependencies:
|
|
35
36
|
name: mocha
|
36
37
|
prerelease: false
|
37
38
|
requirement: &id002 !ruby/object:Gem::Requirement
|
39
|
+
none: false
|
38
40
|
requirements:
|
39
41
|
- - ">="
|
40
42
|
- !ruby/object:Gem::Version
|
@@ -49,6 +51,7 @@ dependencies:
|
|
49
51
|
name: shoulda
|
50
52
|
prerelease: false
|
51
53
|
requirement: &id003 !ruby/object:Gem::Requirement
|
54
|
+
none: false
|
52
55
|
requirements:
|
53
56
|
- - ">="
|
54
57
|
- !ruby/object:Gem::Version
|
@@ -59,18 +62,6 @@ dependencies:
|
|
59
62
|
version: 2.10.2
|
60
63
|
type: :development
|
61
64
|
version_requirements: *id003
|
62
|
-
- !ruby/object:Gem::Dependency
|
63
|
-
name: yard
|
64
|
-
prerelease: false
|
65
|
-
requirement: &id004 !ruby/object:Gem::Requirement
|
66
|
-
requirements:
|
67
|
-
- - ">="
|
68
|
-
- !ruby/object:Gem::Version
|
69
|
-
segments:
|
70
|
-
- 0
|
71
|
-
version: "0"
|
72
|
-
type: :development
|
73
|
-
version_requirements: *id004
|
74
65
|
description: Gosen is a Ruby library providing high-level operations using the Grid'5000 RESTful API, such as Kadeploy deployments
|
75
66
|
email: priteau@gmail.com
|
76
67
|
executables: []
|
@@ -105,6 +96,7 @@ rdoc_options:
|
|
105
96
|
require_paths:
|
106
97
|
- lib
|
107
98
|
required_ruby_version: !ruby/object:Gem::Requirement
|
99
|
+
none: false
|
108
100
|
requirements:
|
109
101
|
- - ">="
|
110
102
|
- !ruby/object:Gem::Version
|
@@ -112,6 +104,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
112
104
|
- 0
|
113
105
|
version: "0"
|
114
106
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
107
|
+
none: false
|
115
108
|
requirements:
|
116
109
|
- - ">="
|
117
110
|
- !ruby/object:Gem::Version
|
@@ -121,7 +114,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
121
114
|
requirements: []
|
122
115
|
|
123
116
|
rubyforge_project:
|
124
|
-
rubygems_version: 1.3.
|
117
|
+
rubygems_version: 1.3.7
|
125
118
|
signing_key:
|
126
119
|
specification_version: 3
|
127
120
|
summary: A Ruby library for the Grid'5000 RESTful API
|