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 CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- OTI2Mjg4MTI3MzgyYzlkZDJiYTdjYTlhODgwMGMwZDBhMzg3NjZjZA==
4
+ ZGY0YjUzZjEzODc2M2M3ZWRmZmQ1MzgxYTNhYWI0YjRkMjZhZjQ2NQ==
5
5
  data.tar.gz: !binary |-
6
- ZWZjNDk3ZDNiNjE5ZWI0MDlhMDZmODdkODNjNDRhZGQxOWJlYjk0ZQ==
6
+ MTI0Yzc1YTllOWYzOWQ2YzMyMDg1ODVmYzkyOTQ1MDZkNjZhZjJlYg==
7
7
  !binary "U0hBNTEy":
8
8
  metadata.gz: !binary |-
9
- ZWU1YTA2YmQ4MjE1ZWEyMjk1ZTk1YjEzODU5NTIzZDZjOTA1ZTFkNzY4ZjJh
10
- MTBkYzA0NmEzOGNhZDU5MzE2ZjNlOWU1NmZiMDM2ZDcwNWQ1NzJlMGZkNjE5
11
- Y2NmN2IxYWY5NDU1OWM2YWFhMGY2MDUyNmRhZTkyNGI0Y2RjNzA=
9
+ MGNiOTA0NGQxOGM2NDZmOTc5YmY2YWFhYzJmZDFmNDEzZGM0NDU0OGFkZmFj
10
+ MDUyNTc0ZGEwNzA1MmUzMzQ5ZjFhNTE4NmNkZTE3MWQ2OTdhOTNlNGY1YjIy
11
+ NjVjMzJlZmVlMjY0MmNjNmM4NGZjODQ3ODU1MGVhMWNkMWI5ZTc=
12
12
  data.tar.gz: !binary |-
13
- NGIzYzM2NzVjZGZhNDBjYzAzZjE1NTY0MTU1MzBhNTQwYWRmMmRlZWJlMzM4
14
- ZTU5YmFhNDBiYmRlMDJmMTExZDI2N2NkNWQ1NGFmMmIyMzVjZDBmOGIwOTk5
15
- M2JlYzE4N2QzYjA0N2YxNjI4NmM0MWExNmI2OTE1MzA3ZDQ4OGQ=
13
+ YTk2NTdhM2VjNzhiZTRjNGZjZDk3MmIzOGU0OTM5Y2RhZTE4ZWIxNzVkZTRm
14
+ MDIyYTcxMDU1YWY0MTc2YjIxNjMxYzE0MWI1YThmZjIzNzk2YWM0ZDU5YzY4
15
+ NTllNjQ5MzgyZjk3NTJmMWU1ZGEzZDUyODZkNzdmZDZiMjlmYTY=
@@ -1,3 +1,3 @@
1
1
  module AF
2
- VERSION = "0.5.0.beta.2".freeze
2
+ VERSION = "0.5.0.beta.3".freeze
3
3
  end
@@ -3,10 +3,7 @@ require "vmc/cli"
3
3
  module VMC
4
4
  module Route
5
5
  class Base < CLI
6
- def precondition
7
- super
8
- fail "This command is v2-only." unless v2?
9
- end
6
+
10
7
  end
11
8
  end
12
9
  end
@@ -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 :host, :desc => "Host name for the route",
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
- space = app.space if v2?
14
+ url = input[:url]
26
15
 
27
- host = input[:host]
28
- domain = input[:domain, space]
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
@@ -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 :delete, :desc => "Delete route", :type => :boolean
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
- desc "V1 ONLY UNMAP YOU SHOULD NOT SEE THIS"
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 ask_url(choices)
83
- ask("Which URL?", :choices => choices.sort_by(&:name), :display => proc(&:name))
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 ask_really(name, color)
91
- ask("Really delete #{c(name, color)}?", :default => false)
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
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: af
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.0.beta.2
4
+ version: 0.5.0.beta.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Cloud Foundry Team