ask-ruby-harness 0.3.8 → 0.3.9

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,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 28f5e6e1b92c4bc2fdeb24ba5ea1a0bb83cbf6195f82d4308557d4d52bce7988
4
- data.tar.gz: f12e15067ce7e5b0c4b78b3e4bebaea66d56585f495006f5dcb1aa4ae130053b
3
+ metadata.gz: aeda8f21e3664c1a58c3bf7e4ca6ecd046a70b0656a9a78a2937d73443679a8f
4
+ data.tar.gz: f6a3c5e98a2ba1f07b33a7f4ff22b3c1e4217c234660e9878fd3f6bdc47d7c0c
5
5
  SHA512:
6
- metadata.gz: 36cbc147837d55d09cde0b232797490a370935d9a1ba350a43408fdafd2e2708eff7b27fc6e22a2c497bb193032d2a928f1b3603b727224e93c89231915daa96
7
- data.tar.gz: b76efa1236e00251097c317903ce1f249a3b6ccc880f05d8574f0537a57663b349fab9180793ff7eb96376981b181a9dd1f76d9684fc33f9e8bdf90b2657a205
6
+ metadata.gz: c8fb3af4ec2967728ec38353afcd20f5c2aafea939bf5949fcd2a3ee6e4992517c7c76138dc5dd96f7fdda338dc08f2405da69aac2d29e4c4d9b5b74834a41d3
7
+ data.tar.gz: 3c5855c7c2f4c79d466b0e99990a7ba6424c73517a4a84c2165f5dccc51b7f684a15a8dd5e8b143106d654b01606c0d25ff97951ac195fe595c3c4aceb00b349
@@ -4,15 +4,15 @@ module Ask
4
4
  module Ruby
5
5
  module Harness
6
6
  module Tools
7
- # Structured access to ask-local's stable dev URLs: active routes,
7
+ # Structured access to yamine's stable dev URLs: active routes,
8
8
  # plus name -> URL resolution that inherits the current directory's
9
9
  # variant context. Replaces scraping ports out of logs.
10
10
  #
11
- # ask-local is an optional dependency: the tool degrades to a clear
11
+ # yamine is an optional dependency: the tool degrades to a clear
12
12
  # failure result when the gem is absent so harness hosts without it
13
13
  # lose nothing.
14
14
  class DevUrl < Ask::Ruby::Harness::Tool
15
- description "List ask-local dev-server routes and resolve stable " \
15
+ description "List yamine dev-server routes and resolve stable " \
16
16
  ".localhost URLs. Use instead of guessing ports: " \
17
17
  "'list' shows every active route with its URL and " \
18
18
  "backend; 'get' resolves a service name to its URL " \
@@ -22,12 +22,12 @@ module Ask
22
22
  param :name, type: :string, desc: "Service name for get (e.g. backend)", required: false
23
23
 
24
24
  def execute(action: "list", name: nil)
25
- unless defined?(Ask::Local)
25
+ unless defined?(Yamine)
26
26
  begin
27
- require "ask-local"
27
+ require "yamine"
28
28
  rescue LoadError
29
29
  return Ask::Result.failure(
30
- "ask-local is not installed. Add `gem \"ask-local\"` to the Gemfile " \
30
+ "yamine is not installed. Add `gem \"yamine\"` to the Gemfile " \
31
31
  "for stable .localhost dev URLs."
32
32
  )
33
33
  end
@@ -43,14 +43,14 @@ module Ask
43
43
  private
44
44
 
45
45
  def list
46
- store = Ask::Local::RouteStore.new(Ask::Local::Certs.state_dir)
46
+ store = Yamine::RouteStore.new(resolve_state_dir)
47
47
  routes = store.load_routes
48
- port = Ask::Local::ProxyControl.proxy_port(store)
49
- tls = Ask::Local::ProxyControl.proxy_tls(store)
48
+ port = Yamine::ProxyControl.proxy_port(store)
49
+ tls = Yamine::ProxyControl.proxy_tls(store)
50
50
  entries = routes.map do |route|
51
51
  {
52
52
  hostname: route["hostname"],
53
- url: Ask::Local::Hostname.url(route["hostname"], port: port, tls: tls),
53
+ url: Yamine::Hostname.url(route["hostname"], port: port, tls: tls),
54
54
  target: route["target"],
55
55
  kind: route["kind"],
56
56
  supervised: !route["spec"].nil?,
@@ -58,23 +58,23 @@ module Ask
58
58
  }
59
59
  end
60
60
  { routes: entries, proxy_port: port, count: entries.length }
61
- rescue Ask::Local::Error => e
61
+ rescue Yamine::Error => e
62
62
  Ask::Result.failure(e.message)
63
63
  end
64
64
 
65
65
  def get(name)
66
66
  return Ask::Result.failure("Name is required for action 'get'.") if name.nil? || name.to_s.strip.empty?
67
67
 
68
- resolved = Ask::Local::Resolver.resolve(app_root.to_s)
69
- hostnames = Ask::Local::Hostname.build(
70
- app: Ask::Local::Sanitize.hostname_label(name),
71
- tlds: [resolved.tld || Ask::Local::Hostname::DEFAULT_TLD],
68
+ resolved = Yamine::Resolver.resolve(app_root.to_s, variant: ENV["ASK_LOCAL_VARIANT"])
69
+ hostnames = Yamine::Hostname.build(
70
+ app: Yamine::Sanitize.hostname_label(name),
71
+ tlds: [resolved.tld || Yamine::Hostname::DEFAULT_TLD],
72
72
  variant: resolved.variant
73
73
  )
74
- store = Ask::Local::RouteStore.new(Ask::Local::Certs.state_dir)
75
- port = Ask::Local::ProxyControl.proxy_port(store)
76
- tls = Ask::Local::ProxyControl.proxy_tls(store)
77
- url = Ask::Local::Hostname.url(hostnames.first, port: port, tls: tls)
74
+ store = Yamine::RouteStore.new(resolve_state_dir)
75
+ port = Yamine::ProxyControl.proxy_port(store)
76
+ tls = Yamine::ProxyControl.proxy_tls(store)
77
+ url = Yamine::Hostname.url(hostnames.first, port: port, tls: tls)
78
78
  {
79
79
  name: name,
80
80
  url: url,
@@ -82,9 +82,15 @@ module Ask
82
82
  tld: resolved.tld,
83
83
  registered: !store.find(hostnames.first).nil?
84
84
  }
85
- rescue Ask::Local::Error => e
85
+ rescue Yamine::Error => e
86
86
  Ask::Result.failure(e.message)
87
87
  end
88
+
89
+ # Bridge the ASK_LOCAL_STATE_DIR env var (used by the ask-local
90
+ # harness) to yamine's YAMINE_STATE_DIR / default ~/.yamine path.
91
+ def resolve_state_dir
92
+ ENV["ASK_LOCAL_STATE_DIR"] || Yamine::Certs.state_dir
93
+ end
88
94
  end
89
95
  end
90
96
  end
@@ -3,7 +3,7 @@
3
3
  module Ask
4
4
  module Ruby
5
5
  module Harness
6
- VERSION = "0.3.8"
6
+ VERSION = "0.3.9"
7
7
  end
8
8
  end
9
9
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ask-ruby-harness
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.8
4
+ version: 0.3.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kaka Ruto
@@ -57,14 +57,14 @@ dependencies:
57
57
  requirements:
58
58
  - - ">="
59
59
  - !ruby/object:Gem::Version
60
- version: 0.40.10
60
+ version: 0.40.18
61
61
  type: :runtime
62
62
  prerelease: false
63
63
  version_requirements: !ruby/object:Gem::Requirement
64
64
  requirements:
65
65
  - - ">="
66
66
  - !ruby/object:Gem::Version
67
- version: 0.40.10
67
+ version: 0.40.18
68
68
  - !ruby/object:Gem::Dependency
69
69
  name: sqlite3
70
70
  requirement: !ruby/object:Gem::Requirement