jets 1.9.1 → 1.9.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +6 -0
- data/jets.gemspec +1 -0
- data/lib/jets/aws_services.rb +2 -2
- data/lib/jets/commands/call.rb +1 -1
- data/lib/jets/controller.rb +1 -0
- data/lib/jets/controller/rendering.rb +1 -5
- data/lib/jets/controller/stage.rb +33 -0
- data/lib/jets/mega/request.rb +1 -1
- data/lib/jets/middleware/default_stack.rb +1 -0
- data/lib/jets/overrides/rails/common_methods.rb +3 -16
- data/lib/jets/version.rb +1 -1
- metadata +17 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f5b0ce83e75713097408782eb9e2e1bf2e1e73cf0ea43949530b9313fa6f7c95
|
4
|
+
data.tar.gz: 9e342074cf9ec18312ede4f7a5d67f96141c43d205e5908911889f2344c81b35
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 625a6eb43d4043ffa1d9eccc6e945d79686c3f69c958171652405fa1ce2940e862acec327ee483dc8395e05ccb30409f3e024a9d136fa4a503db7ec1ba1df106
|
7
|
+
data.tar.gz: 571c6a4db6ad117ffa4aac070641b2868a52f8b983831ec1c5414ecebd28b37d167e544d95279cbf5d99bfa1200d4f20b52b9393085f3917ba9230c00e7c529d
|
data/CHANGELOG.md
CHANGED
@@ -3,6 +3,12 @@
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
4
4
|
This project *loosely tries* to adhere to [Semantic Versioning](http://semver.org/).
|
5
5
|
|
6
|
+
## [1.9.2]
|
7
|
+
- #232 Rename lambda method to aws_lambda to avoid ruby keyword collision
|
8
|
+
- #259 fix stage name in dev mode for redirect also
|
9
|
+
- #262 Handle nil body on mega request proxy
|
10
|
+
- #263 fix for static files now that not using shotgun
|
11
|
+
|
6
12
|
## [1.9.1]
|
7
13
|
- #257 dont generate handlers for concerns
|
8
14
|
- #258 from Fix custom domain base mapping
|
data/jets.gemspec
CHANGED
@@ -54,6 +54,7 @@ Gem::Specification.new do |spec|
|
|
54
54
|
spec.add_dependency "railties", "~> 5.2.1" # ActiveRecord database_tasks.rb require this
|
55
55
|
spec.add_dependency "rainbow"
|
56
56
|
spec.add_dependency "recursive-open-struct"
|
57
|
+
spec.add_dependency "shotgun"
|
57
58
|
spec.add_dependency "text-table"
|
58
59
|
spec.add_dependency "thor"
|
59
60
|
spec.add_dependency "zeitwerk"
|
data/lib/jets/aws_services.rb
CHANGED
data/lib/jets/commands/call.rb
CHANGED
@@ -65,7 +65,7 @@ class Jets::Commands::Call
|
|
65
65
|
qualifier: @qualifier, # "1",
|
66
66
|
}
|
67
67
|
begin
|
68
|
-
resp =
|
68
|
+
resp = aws_lambda.invoke(options)
|
69
69
|
rescue Aws::Lambda::Errors::ResourceNotFoundException
|
70
70
|
puts "The function #{function_name} was not found. Maybe check the spelling or the AWS_PROFILE?".color(:red)
|
71
71
|
return
|
data/lib/jets/controller.rb
CHANGED
@@ -65,11 +65,7 @@ class Jets::Controller
|
|
65
65
|
def add_stage_name(url)
|
66
66
|
return url unless actual_host
|
67
67
|
|
68
|
-
|
69
|
-
stage_name = Jets::Resource::ApiGateway::Deployment.stage_name
|
70
|
-
url = "/#{stage_name}#{url}"
|
71
|
-
end
|
72
|
-
url
|
68
|
+
Jets::Controller::Stage.add(actual_host, url)
|
73
69
|
end
|
74
70
|
|
75
71
|
def url_for(url)
|
@@ -0,0 +1,33 @@
|
|
1
|
+
class Jets::Controller
|
2
|
+
class Stage
|
3
|
+
def initialize(host, url)
|
4
|
+
@host, @url = host, url
|
5
|
+
end
|
6
|
+
|
7
|
+
def add
|
8
|
+
return @url unless add_stage?
|
9
|
+
|
10
|
+
stage_name = Jets::Resource::ApiGateway::Deployment.stage_name
|
11
|
+
"/#{stage_name}#{@url}"
|
12
|
+
end
|
13
|
+
|
14
|
+
def add_stage?
|
15
|
+
return false if on_cloud9?
|
16
|
+
@host.include?("amazonaws.com") && @url.starts_with?('/')
|
17
|
+
end
|
18
|
+
|
19
|
+
def on_cloud9?
|
20
|
+
self.class.on_cloud9?(@host)
|
21
|
+
end
|
22
|
+
|
23
|
+
class << self
|
24
|
+
def add(host, url)
|
25
|
+
new(host, url).add
|
26
|
+
end
|
27
|
+
|
28
|
+
def on_cloud9?(host)
|
29
|
+
!!(host =~ /cloud9\..*\.amazonaws\.com/)
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
data/lib/jets/mega/request.rb
CHANGED
@@ -51,7 +51,7 @@ module Jets::Mega
|
|
51
51
|
status = response.code.to_i
|
52
52
|
headers = response.each_header.to_h
|
53
53
|
encoding = get_encoding(headers['content-type'])
|
54
|
-
body = response.body
|
54
|
+
body = response.body&.force_encoding(encoding)
|
55
55
|
{
|
56
56
|
status: status,
|
57
57
|
headers: headers,
|
@@ -8,6 +8,7 @@ module Jets::Middleware
|
|
8
8
|
|
9
9
|
def build_stack
|
10
10
|
Stack.new do |middleware|
|
11
|
+
middleware.use Shotgun::Static if Jets.env.development?
|
11
12
|
middleware.use Rack::Runtime
|
12
13
|
middleware.use Jets::Controller::Middleware::Cors if cors_enabled?
|
13
14
|
middleware.use Rack::MethodOverride # must come before Middleware::Local for multipart post forms to work
|
@@ -2,25 +2,12 @@ module Jets::CommonMethods
|
|
2
2
|
extend Memoist
|
3
3
|
# Add API Gateway Stage Name
|
4
4
|
def add_stage_name(url)
|
5
|
-
|
6
|
-
|
7
|
-
stage_name = Jets::Resource::ApiGateway::Deployment.stage_name
|
8
|
-
"/#{stage_name}#{url}"
|
9
|
-
end
|
10
|
-
|
11
|
-
def add_stage?(url)
|
12
|
-
return false if on_cloud9?
|
13
|
-
request.host.include?("amazonaws.com") && url.starts_with?('/')
|
5
|
+
Jets::Controller::Stage.add(request.host, url)
|
14
6
|
end
|
15
|
-
memoize :add_stage?
|
16
7
|
|
17
8
|
def on_aws?
|
18
|
-
|
9
|
+
on_cloud9 = Jets::Controller::Stage.on_cloud9?(request.headers['HTTP_HOST'])
|
10
|
+
!request.headers['HTTP_X_AMZN_TRACE_ID'].nil? && !on_cloud9
|
19
11
|
end
|
20
12
|
memoize :on_aws?
|
21
|
-
|
22
|
-
def on_cloud9?
|
23
|
-
!!(request.headers['HTTP_HOST'] =~ /cloud9\..*\.amazonaws\.com/)
|
24
|
-
end
|
25
|
-
memoize :on_cloud9?
|
26
13
|
end
|
data/lib/jets/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: jets
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.9.
|
4
|
+
version: 1.9.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tung Nguyen
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-05-
|
11
|
+
date: 2019-05-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: actionmailer
|
@@ -360,6 +360,20 @@ dependencies:
|
|
360
360
|
- - ">="
|
361
361
|
- !ruby/object:Gem::Version
|
362
362
|
version: '0'
|
363
|
+
- !ruby/object:Gem::Dependency
|
364
|
+
name: shotgun
|
365
|
+
requirement: !ruby/object:Gem::Requirement
|
366
|
+
requirements:
|
367
|
+
- - ">="
|
368
|
+
- !ruby/object:Gem::Version
|
369
|
+
version: '0'
|
370
|
+
type: :runtime
|
371
|
+
prerelease: false
|
372
|
+
version_requirements: !ruby/object:Gem::Requirement
|
373
|
+
requirements:
|
374
|
+
- - ">="
|
375
|
+
- !ruby/object:Gem::Version
|
376
|
+
version: '0'
|
363
377
|
- !ruby/object:Gem::Dependency
|
364
378
|
name: text-table
|
365
379
|
requirement: !ruby/object:Gem::Requirement
|
@@ -685,6 +699,7 @@ files:
|
|
685
699
|
- lib/jets/controller/rendering/rack_renderer.rb
|
686
700
|
- lib/jets/controller/request.rb
|
687
701
|
- lib/jets/controller/response.rb
|
702
|
+
- lib/jets/controller/stage.rb
|
688
703
|
- lib/jets/core.rb
|
689
704
|
- lib/jets/core_ext/kernel.rb
|
690
705
|
- lib/jets/db.rb
|