af 0.5.0.beta.2 → 0.5.0.beta.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +8 -8
- data/lib/af/version.rb +1 -1
- data/lib/vmc/cli/route/base.rb +1 -4
- data/lib/vmc/cli/route/map.rb +9 -57
- data/lib/vmc/cli/route/unmap.rb +8 -59
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
ZGY0YjUzZjEzODc2M2M3ZWRmZmQ1MzgxYTNhYWI0YjRkMjZhZjQ2NQ==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
MTI0Yzc1YTllOWYzOWQ2YzMyMDg1ODVmYzkyOTQ1MDZkNjZhZjJlYg==
|
7
7
|
!binary "U0hBNTEy":
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
MGNiOTA0NGQxOGM2NDZmOTc5YmY2YWFhYzJmZDFmNDEzZGM0NDU0OGFkZmFj
|
10
|
+
MDUyNTc0ZGEwNzA1MmUzMzQ5ZjFhNTE4NmNkZTE3MWQ2OTdhOTNlNGY1YjIy
|
11
|
+
NjVjMzJlZmVlMjY0MmNjNmM4NGZjODQ3ODU1MGVhMWNkMWI5ZTc=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
YTk2NTdhM2VjNzhiZTRjNGZjZDk3MmIzOGU0OTM5Y2RhZTE4ZWIxNzVkZTRm
|
14
|
+
MDIyYTcxMDU1YWY0MTc2YjIxNjMxYzE0MWI1YThmZjIzNzk2YWM0ZDU5YzY4
|
15
|
+
NTllNjQ5MzgyZjk3NTJmMWU1ZGEzZDUyODZkNzdmZDZiMjlmYTY=
|
data/lib/af/version.rb
CHANGED
data/lib/vmc/cli/route/base.rb
CHANGED
data/lib/vmc/cli/route/map.rb
CHANGED
@@ -8,73 +8,25 @@ module VMC::Route
|
|
8
8
|
group :apps, :info
|
9
9
|
input :app, :desc => "Application to add the URL to",
|
10
10
|
:argument => :optional, :from_given => by_name(:app)
|
11
|
-
input :
|
12
|
-
:argument => :optional, :default => ""
|
13
|
-
input :domain, :desc => "Domain to add the route to",
|
14
|
-
:argument => true,
|
15
|
-
:from_given => proc { |name, space|
|
16
|
-
if v2?
|
17
|
-
space.domain_by_name(name) ||
|
18
|
-
fail_unknown("domain", name)
|
19
|
-
else
|
20
|
-
name
|
21
|
-
end
|
22
|
-
}
|
11
|
+
input :url, :desc => "URL to map", :argument => :optional
|
23
12
|
def map
|
24
13
|
app = input[:app]
|
25
|
-
|
14
|
+
url = input[:url]
|
26
15
|
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
if v2?
|
31
|
-
route = find_or_create_route(domain, host, space)
|
32
|
-
bind_route(route, app) if app
|
33
|
-
else
|
34
|
-
with_progress("Updating #{c(app.name, :name)}") do
|
35
|
-
app.urls << domain
|
36
|
-
app.update!
|
37
|
-
end
|
16
|
+
with_progress("Updating #{c(app.name, :name)}") do
|
17
|
+
app.urls << url
|
18
|
+
app.update!
|
38
19
|
end
|
39
20
|
end
|
40
21
|
|
41
22
|
private
|
42
23
|
|
43
|
-
def bind_route(route, app)
|
44
|
-
with_progress("Binding #{c(route.name, :name)} to #{c(app.name, :name)}") do
|
45
|
-
app.add_route(route)
|
46
|
-
end
|
47
|
-
end
|
48
|
-
|
49
|
-
def find_or_create_route(domain, host, space)
|
50
|
-
find_route(domain, host) || create_route(domain, host, space)
|
51
|
-
end
|
52
|
-
|
53
|
-
def find_route(domain, host)
|
54
|
-
client.routes_by_host(host, :depth => 0).find { |r| r.domain == domain }
|
55
|
-
end
|
56
|
-
|
57
|
-
def create_route(domain, host, space)
|
58
|
-
route = client.route
|
59
|
-
route.host = host
|
60
|
-
route.domain = domain
|
61
|
-
route.space = space
|
62
|
-
|
63
|
-
with_progress("Creating route #{c(route.name, :name)}") do
|
64
|
-
route.create!
|
65
|
-
end
|
66
|
-
|
67
|
-
route
|
68
|
-
end
|
69
|
-
|
70
|
-
def find_domain(space, name)
|
71
|
-
domain = space.domain_by_name(name, :depth => 0)
|
72
|
-
fail "Invalid domain '#{name}'" unless domain
|
73
|
-
domain
|
74
|
-
end
|
75
|
-
|
76
24
|
def ask_app
|
77
25
|
ask("Which application?", :choices => client.apps, :display => proc(&:name))
|
78
26
|
end
|
27
|
+
|
28
|
+
def ask_url
|
29
|
+
ask("Enter URL?")
|
30
|
+
end
|
79
31
|
end
|
80
32
|
end
|
data/lib/vmc/cli/route/unmap.rb
CHANGED
@@ -4,69 +4,22 @@ module VMC::Route
|
|
4
4
|
class Unmap < Base
|
5
5
|
desc "Remove a URL mapping"
|
6
6
|
group :apps, :info
|
7
|
-
input :url, :desc => "URL to unmap", :argument => :optional,
|
8
|
-
:from_given => find_by_name("route") { client.routes }
|
9
7
|
input :app, :desc => "Application to remove the URL from",
|
10
8
|
:argument => :optional, :from_given => by_name(:app)
|
11
|
-
input :
|
9
|
+
input :url, :desc => "URL to unmap", :argument => :optional
|
12
10
|
input :all, :desc => "Act on all routes", :type => :boolean
|
13
|
-
input :really, :type => :boolean, :forget => true, :hidden => true,
|
14
|
-
:default => proc { force? || interact }
|
15
11
|
def unmap
|
16
|
-
return invoke :v1_unmap, input.inputs, input.given unless v2?
|
17
|
-
|
18
|
-
if input[:all]
|
19
|
-
if input.has?(:app)
|
20
|
-
app = target = input[:app]
|
21
|
-
return unless !input[:delete] || input[:really, "ALL URLS bound to #{target.name}", :bad]
|
22
|
-
else
|
23
|
-
target = client
|
24
|
-
return unless !input[:delete] || input[:really, "ALL URLS", :bad]
|
25
|
-
end
|
26
|
-
|
27
|
-
target.routes.each do |r|
|
28
|
-
begin
|
29
|
-
invoke :unmap, :delete => input[:delete], :url => r, :really => true, :app => app
|
30
|
-
rescue CFoundry::APIError => e
|
31
|
-
err "#{e.class}: #{e.message}"
|
32
|
-
end
|
33
|
-
end
|
34
|
-
|
35
|
-
return
|
36
|
-
end
|
37
|
-
|
38
12
|
app = input[:app]
|
39
|
-
url = input[:url, app ? app.routes : client.routes]
|
40
|
-
|
41
|
-
if input[:delete]
|
42
|
-
with_progress("Deleting route #{c(url.name, :name)}") do
|
43
|
-
url.delete!
|
44
|
-
end
|
45
|
-
elsif app
|
46
|
-
with_progress("Unbinding #{c(url.name, :name)} from #{c(app.name, :name)}") do
|
47
|
-
app.remove_route(url)
|
48
|
-
end
|
49
|
-
else
|
50
|
-
fail "Missing either --delete or --app."
|
51
|
-
end
|
52
|
-
end
|
53
13
|
|
14
|
+
fail "No urls to unmap." if app.urls.empty?
|
54
15
|
|
55
|
-
|
56
|
-
input :url, :desc => "URL to unmap", :argument => :optional,
|
57
|
-
:interact => :v1_ask_url
|
58
|
-
input :app, :desc => "Application to remove the URL from",
|
59
|
-
:argument => :optional, :from_given => by_name(:app)
|
60
|
-
input :all, :desc => "Act on all routes", :type => :boolean
|
61
|
-
def v1_unmap
|
62
|
-
app = input[:app]
|
63
|
-
url = input[:url, app.urls] unless input[:all]
|
16
|
+
url = input[:url, (app.urls.map{|url| OpenStruct.new({name: url})})] unless input[:all]
|
64
17
|
|
65
18
|
with_progress("Updating #{c(app.name, :name)}") do |s|
|
66
19
|
if input[:all]
|
67
20
|
app.urls = []
|
68
21
|
else
|
69
|
-
simple = url.sub(/^https?:\/\/(.*)\/?/i, '\1')
|
22
|
+
simple = url.name.sub(/^https?:\/\/(.*)\/?/i, '\1')
|
70
23
|
|
71
24
|
unless app.urls.delete(simple)
|
72
25
|
fail "URL #{url} is not mapped to this application."
|
@@ -79,16 +32,12 @@ module VMC::Route
|
|
79
32
|
|
80
33
|
private
|
81
34
|
|
82
|
-
def
|
83
|
-
ask("Which
|
84
|
-
end
|
85
|
-
|
86
|
-
def v1_ask_url(choices)
|
87
|
-
ask("Which URL?", :choices => choices.sort)
|
35
|
+
def ask_app
|
36
|
+
ask("Which application?", :choices => client.apps, :display => proc(&:name))
|
88
37
|
end
|
89
38
|
|
90
|
-
def
|
91
|
-
ask("
|
39
|
+
def ask_url(choices)
|
40
|
+
ask("Which URL?", :choices => choices.sort_by(&:name), :display => proc(&:name))
|
92
41
|
end
|
93
42
|
end
|
94
43
|
end
|