aws-google 0.2.2 → 0.2.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,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 5a99a98afdd145f3e2077599e0a90c743f215c8ee7e32c3d74fc50d0f670e881
4
- data.tar.gz: 451a434fde3537db95a1c58d8989afc9a0a00491c90f90b3d2203f5cc3cf0bdc
3
+ metadata.gz: 18ff05fe6afc1416f8dc34990d987385b8c97122ceafa10c90673a1cd2a047c6
4
+ data.tar.gz: 8ab7a59cab3adda81249173d6805f1ed64a1ddda1c4260ca149780ad930e4ab9
5
5
  SHA512:
6
- metadata.gz: ed65637fb6d1ce3c527ae90aae5a46a1e1358a7afe411e71eee9dc76d05b34ab3d75a0b2cbe7a7811890a872e1d268e5b23b849e66956091405f43f2c425a9f9
7
- data.tar.gz: 4bc5596979411c3d27fea983d592bb7c947aa2375a6e072b433cbbfe24d537ce042a688d4f118b87fd1438c4aa0d3fce039148c8cc79af680b615772a8204a6b
6
+ metadata.gz: 8bb4a7f371d72fc5028433d7481a154b59426d01a895ba75ff82a7c308b8f4041e913a9e2d74bb54108e1e0e6af0d342b6e967bcf942a768d142e02fe266874f
7
+ data.tar.gz: 817bb378d79596567c086f2a8d29c810da0de47e18af5e1954141a791f7a2f543d7315a190b30e0ac5f406c4de6018d3eab548b1dbcc958251b134c930873b7f
@@ -1,5 +1,5 @@
1
1
  module Aws
2
2
  class Google
3
- VERSION = '0.2.2'.freeze
3
+ VERSION = '0.2.3'.freeze
4
4
  end
5
5
  end
data/lib/aws/google.rb CHANGED
@@ -108,24 +108,28 @@ module Aws
108
108
  end
109
109
 
110
110
  def get_oauth_code(client, options)
111
- raise 'fallback' unless @port && !@port.zero?
111
+ raise ArgumentError.new('Missing port for local oauth server') unless @port && !@port.zero?
112
112
 
113
113
  require 'launchy'
114
114
  require 'webrick'
115
+
115
116
  code = nil
116
117
  server = WEBrick::HTTPServer.new(
117
118
  Port: @port,
118
119
  Logger: WEBrick::Log.new(STDOUT, 0),
119
120
  AccessLog: []
120
121
  )
122
+
121
123
  server.mount_proc '/' do |req, res|
122
124
  code = req.query['code']
123
125
  res.status = 202
124
126
  res.body = 'Login successful, you may close this browser window.'
125
- server.stop
127
+ server.shutdown
126
128
  end
129
+
127
130
  trap('INT') { server.shutdown }
128
131
  client.redirect_uri = "http://localhost:#{@port}"
132
+
129
133
  silence_output do
130
134
  launchy = Launchy.open(client.authorization_uri(options).to_s)
131
135
  server_thread = Thread.new do
@@ -134,21 +138,13 @@ module Aws
134
138
  ensure server.shutdown
135
139
  end
136
140
  end
137
- while server_thread.alive?
138
- raise 'fallback' if !launchy.alive? && !launchy.value.success?
139
-
140
- sleep 0.1
141
- end
141
+
142
+ server_thread.join
142
143
  end
143
- code || raise('fallback')
144
- rescue StandardError
145
- trap('INT', 'DEFAULT')
146
- # Fallback to out-of-band authentication if browser launch failed.
147
- client.redirect_uri = 'oob'
148
- return ENV['OAUTH_CODE'] if ENV['OAUTH_CODE']
149
144
 
150
- raise RuntimeError, 'Open the following URL in a browser to get a code,' \
151
- "export to $OAUTH_CODE and rerun:\n#{client.authorization_uri(options)}", []
145
+ code || raise('Local Google Oauth failed to get code')
146
+ ensure
147
+ trap('INT', 'DEFAULT')
152
148
  end
153
149
 
154
150
  def refresh
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-google
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 0.2.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Will Jordan
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-12-11 00:00:00.000000000 Z
11
+ date: 2025-05-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core