cfoundry 0.3.33 → 0.3.34

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.
@@ -95,6 +95,10 @@ module CFoundry::V1
95
95
  runtimes
96
96
  end
97
97
 
98
+ def runtime_by_name(name)
99
+ runtimes.find { |r| r.name == name }
100
+ end
101
+
98
102
  # Retrieve available frameworks.
99
103
  def frameworks
100
104
  fs = info[:frameworks]
@@ -109,9 +113,13 @@ module CFoundry::V1
109
113
  frameworks <<
110
114
  Framework.new(name.to_s, nil, runtimes, meta[:detection])
111
115
  end
116
+
112
117
  frameworks
113
118
  end
114
119
 
120
+ def framework_by_name(name)
121
+ frameworks.find { |f| f.name == name }
122
+ end
115
123
 
116
124
  # Retrieve user list. Admin-only.
117
125
  def users
@@ -34,7 +34,7 @@ module CFoundry::V2
34
34
  alias :total_instances :instances
35
35
  alias :total_instances= :instances=
36
36
 
37
- private :environment_json, :environment_json=
37
+ private :environment_json
38
38
 
39
39
  def instances
40
40
  @client.base.instances(@guid).collect do |i, m|
@@ -53,14 +53,10 @@ module CFoundry::V2
53
53
  def env
54
54
  @env ||= CFoundry::ChattyHash.new(
55
55
  method(:env=),
56
- MultiJson.load(environment_json))
56
+ environment_json)
57
57
  end
58
58
 
59
- def env=(hash)
60
- @env = hash
61
- @diff["environment_json"] = hash
62
- hash
63
- end
59
+ alias :env= :environment_json=
64
60
 
65
61
  def command # TODO v2
66
62
  nil
@@ -81,16 +77,49 @@ module CFoundry::V2
81
77
  end
82
78
  alias :urls :uris
83
79
 
84
- def uris=(x)
80
+ def uris=(uris)
85
81
  raise "App#uris= is invalid against V2 APIs. Use add/remove_route."
86
82
  end
87
83
  alias :urls= :uris=
88
84
 
85
+ def create_routes(*uris)
86
+ uris.each do |uri|
87
+ host, domain_name = uri.split(".", 2)
88
+
89
+ domain =
90
+ @client.current_space.domains.find { |d|
91
+ d.name == domain_name
92
+ }
93
+
94
+ raise "Invalid domain '#{domain_name}'" unless domain
95
+
96
+ route = @client.routes.find { |r|
97
+ r.host == host && r.domain == domain
98
+ }
99
+
100
+ unless route
101
+ route = @client.route
102
+ route.host = host
103
+ route.domain = domain
104
+ route.organization = @client.current_organization
105
+ route.create!
106
+ end
107
+
108
+ add_route(route)
109
+ end
110
+ end
111
+ alias :create_route :create_routes
112
+
89
113
  def uri
90
114
  uris[0]
91
115
  end
92
116
  alias :url :uri
93
117
 
118
+ def uri=(x)
119
+ self.uris = [x]
120
+ end
121
+ alias :url= :uri=
122
+
94
123
  # Stop the application.
95
124
  def stop!
96
125
  update! :state => "STOPPED"
@@ -121,7 +150,11 @@ module CFoundry::V2
121
150
  def healthy?
122
151
  # invalidate cache so the check is fresh
123
152
  @manifest = nil
124
- health == "RUNNING"
153
+
154
+ case health
155
+ when "RUNNING", "STARTED"
156
+ true
157
+ end
125
158
  end
126
159
  alias_method :running?, :healthy?
127
160
 
@@ -1,4 +1,4 @@
1
1
  module CFoundry # :nodoc:
2
2
  # CFoundry library version number.
3
- VERSION = "0.3.33"
3
+ VERSION = "0.3.34"
4
4
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cfoundry
3
3
  version: !ruby/object:Gem::Version
4
- hash: 81
4
+ hash: 87
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 3
9
- - 33
10
- version: 0.3.33
9
+ - 34
10
+ version: 0.3.34
11
11
  platform: ruby
12
12
  authors:
13
13
  - Alex Suraci
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2012-09-17 00:00:00 Z
18
+ date: 2012-09-18 00:00:00 Z
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
21
21
  name: rest-client
@@ -57,12 +57,12 @@ dependencies:
57
57
  requirements:
58
58
  - - ~>
59
59
  - !ruby/object:Gem::Version
60
- hash: 49
60
+ hash: 41
61
61
  segments:
62
62
  - 0
63
63
  - 9
64
- - 5
65
- version: 0.9.5
64
+ - 9
65
+ version: 0.9.9
66
66
  type: :runtime
67
67
  version_requirements: *id003
68
68
  - !ruby/object:Gem::Dependency