af 0.5.0.beta.2 → 0.5.0.beta.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.
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