jets 5.0.11 → 5.0.13
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +7 -0
- data/engines/internal/app/jobs/jets/preheat_job.rb +3 -7
- data/jets.gemspec +15 -17
- data/lib/jets/cfn/status.rb +1 -1
- data/lib/jets/dotenv.rb +22 -17
- data/lib/jets/version.rb +1 -1
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9589a505325960693872eb2f2c0dd2303bb5ec299e4ee9a50017e1deb4928180
|
4
|
+
data.tar.gz: 1433cdb88f01bf156d4b2615621dffd151e2259a41bb1d9ee79e7888edd70443
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f7b938b08f72022a066bd9e52c474543c9787309da7927c14e35dbe205f5bbce413bedb40e25a5e15a78c6c8f647f0efb0aafa9d6b69f652a64a915e7c649705
|
7
|
+
data.tar.gz: a3376cca3d5ced2a1ab83d96b06e8c6b4b24f7f706498c5b0955cef0a7fb1e8a646078f22d5c60dad7ec7882f388f2541e3344b27d22204a0291b61628fefc57
|
data/CHANGELOG.md
CHANGED
@@ -3,6 +3,13 @@
|
|
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
|
+
## [5.0.13] - 2024-04-26
|
7
|
+
- [#720](https://github.com/rubyonjets/jets/pull/720) Update docs link in status.rb
|
8
|
+
- [#723](https://github.com/rubyonjets/jets/pull/723) fix prewarming post deploy
|
9
|
+
|
10
|
+
## [5.0.12] - 2024-04-15
|
11
|
+
- [#718](https://github.com/rubyonjets/jets/pull/718) fixes for dotenv 3.1
|
12
|
+
|
6
13
|
## [5.0.11] - 2024-03-20
|
7
14
|
- [#711](https://github.com/rubyonjets/jets/pull/711) Fix controller testing in jets 5 - handling of params and query
|
8
15
|
- [#715](https://github.com/rubyonjets/jets/pull/715) remove force_encoding that causes issues for international characters
|
@@ -36,11 +36,12 @@ class Jets::PreheatJob < Jets::Job::Base
|
|
36
36
|
end
|
37
37
|
end
|
38
38
|
|
39
|
-
private
|
39
|
+
private
|
40
|
+
|
40
41
|
# Usually: jets-preheat_job-warm unless JETS_RESET=1, in that case need to lookup the function name
|
41
42
|
def warm_function_name
|
42
43
|
# Return early to avoid lookup call normally
|
43
|
-
return "jets-preheat_job-warm" unless ENV[
|
44
|
+
return "jets-preheat_job-warm" unless ENV["JETS_RESET"] == "1"
|
44
45
|
|
45
46
|
parent_stack = cfn.describe_stack_resources(stack_name: Jets::Names.parent_stack_name)
|
46
47
|
preheat_stack = parent_stack.stack_resources.find do |resource|
|
@@ -58,11 +59,6 @@ private
|
|
58
59
|
def call_options(quiet)
|
59
60
|
options = {}
|
60
61
|
options.merge!(mute: true, mute_output: true) if quiet
|
61
|
-
# All the methods in this Job class leads to Jets::Commands::Call.
|
62
|
-
# This is true for the Jets::Preheat.warm_all also.
|
63
|
-
# These jobs delegate out to Lambda function calls. We do not need/want
|
64
|
-
# the invocation type: RequestResponse in this case.
|
65
|
-
options.merge!(invocation_type: "Event")
|
66
62
|
options
|
67
63
|
end
|
68
64
|
end
|
data/jets.gemspec
CHANGED
@@ -1,30 +1,28 @@
|
|
1
|
-
# coding: utf-8
|
2
1
|
lib = File.expand_path("../lib", __FILE__)
|
3
2
|
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
3
|
require "jets/version"
|
5
4
|
require "jets/rdoc"
|
6
5
|
|
7
6
|
Gem::Specification.new do |spec|
|
8
|
-
spec.name
|
9
|
-
spec.version
|
10
|
-
spec.author
|
11
|
-
spec.email
|
12
|
-
spec.summary
|
13
|
-
spec.description
|
14
|
-
spec.homepage
|
15
|
-
spec.license
|
7
|
+
spec.name = "jets"
|
8
|
+
spec.version = Jets::VERSION
|
9
|
+
spec.author = "Tung Nguyen"
|
10
|
+
spec.email = "tongueroo@gmail.com"
|
11
|
+
spec.summary = "Ruby Serverless Framework"
|
12
|
+
spec.description = "Jets is a framework that allows you to create serverless applications with a beautiful language: Ruby. It includes everything required to build and deploy an application. Jets leverages the power of Ruby to make serverless joyful for everyone."
|
13
|
+
spec.homepage = "https://rubyonjets.com"
|
14
|
+
spec.license = "MIT"
|
16
15
|
|
17
|
-
spec.required_ruby_version = [
|
16
|
+
spec.required_ruby_version = [">= 2.7.0"]
|
18
17
|
spec.rdoc_options += Jets::Rdoc.options
|
19
18
|
|
20
|
-
vendor_files
|
21
|
-
gem_files
|
19
|
+
vendor_files = Dir.glob("vendor/**/*")
|
20
|
+
gem_files = `git -C "#{File.dirname(__FILE__)}" ls-files -z`.split("\x0").reject do |f|
|
22
21
|
f.match(%r{^(test|spec|features|docs)/})
|
23
22
|
end
|
24
|
-
spec.files
|
25
|
-
spec.bindir
|
26
|
-
spec.executables
|
27
|
-
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
23
|
+
spec.files = gem_files + vendor_files
|
24
|
+
spec.bindir = "exe"
|
25
|
+
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
28
26
|
spec.require_paths = ["lib"]
|
29
27
|
|
30
28
|
spec.add_dependency "actionmailer", "~> 7.0.8"
|
@@ -50,7 +48,7 @@ Gem::Specification.new do |spec|
|
|
50
48
|
spec.add_dependency "cfn_response"
|
51
49
|
spec.add_dependency "cfn-status", ">= 0.5.0"
|
52
50
|
spec.add_dependency "cli-format", ">= 0.4.0"
|
53
|
-
spec.add_dependency "dotenv"
|
51
|
+
spec.add_dependency "dotenv", ">= 3.1"
|
54
52
|
spec.add_dependency "dsl_evaluator", ">= 0.3.0" # for DslEvaluator.print_code
|
55
53
|
spec.add_dependency "gems"
|
56
54
|
spec.add_dependency "hashie"
|
data/lib/jets/cfn/status.rb
CHANGED
data/lib/jets/dotenv.rb
CHANGED
@@ -1,23 +1,29 @@
|
|
1
|
-
require
|
1
|
+
require "dotenv"
|
2
2
|
|
3
3
|
class Jets::Dotenv
|
4
|
-
def self.load!(remote=false)
|
4
|
+
def self.load!(remote = false)
|
5
5
|
new(remote).load!
|
6
6
|
end
|
7
7
|
|
8
|
-
def initialize(remote=false)
|
9
|
-
@remote = ENV[
|
8
|
+
def initialize(remote = false)
|
9
|
+
@remote = ENV["JETS_ENV_REMOTE"] || remote
|
10
10
|
end
|
11
11
|
|
12
|
+
# @@vars cache to prevent multiple calls to Ssm
|
13
|
+
# Tricky note: The cache also prevents the second call to Dotenv.load from
|
14
|
+
# returning {} vars. Dotenv 3.0 will not return the vars if it has already been loaded
|
15
|
+
# in the ENV. We want this side-effect due to the new way Dotenv 3.0 works.
|
16
|
+
@@vars = nil
|
12
17
|
def load!
|
18
|
+
return @@vars if @@vars
|
13
19
|
return if on_aws? # this prevents ssm calls if used in dotenv files
|
14
20
|
vars = ::Dotenv.load(*dotenv_files)
|
15
|
-
Ssm.new(vars).interpolate!
|
21
|
+
@@vars = Ssm.new(vars).interpolate!
|
16
22
|
end
|
17
23
|
|
18
24
|
def on_aws?
|
19
|
-
return true if ENV[
|
20
|
-
!!ENV[
|
25
|
+
return true if ENV["ON_AWS"]
|
26
|
+
!!ENV["_HANDLER"] # https://docs.aws.amazon.com/lambda/latest/dg/lambda-environment-variables.html
|
21
27
|
end
|
22
28
|
|
23
29
|
# dotenv files with the following precedence:
|
@@ -30,17 +36,16 @@ class Jets::Dotenv
|
|
30
36
|
# - .env - The original (lowest)
|
31
37
|
#
|
32
38
|
def dotenv_files
|
33
|
-
files = [
|
34
|
-
|
35
|
-
|
36
|
-
root.join(".env.#{Jets.env}"),
|
37
|
-
(root.join(".env.#{Jets.env}.local") unless @remote),
|
38
|
-
]
|
39
|
+
files = []
|
40
|
+
|
41
|
+
files << files << root.join(".env.#{Jets.env}.#{Jets.extra}") if Jets.extra
|
39
42
|
files << root.join(".env.#{Jets.env}.remote") if @remote
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
files.
|
43
|
+
files << root.join(".env.#{Jets.env}.local") unless @remote
|
44
|
+
files << root.join(".env.#{Jets.env}")
|
45
|
+
files << root.join(".env.local") unless Jets.env.test? || @remote
|
46
|
+
files << root.join(".env")
|
47
|
+
|
48
|
+
files.compact.map(&:to_s)
|
44
49
|
end
|
45
50
|
|
46
51
|
def root
|
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: 5.0.
|
4
|
+
version: 5.0.13
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tung Nguyen
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-
|
11
|
+
date: 2024-04-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: actionmailer
|
@@ -324,14 +324,14 @@ dependencies:
|
|
324
324
|
requirements:
|
325
325
|
- - ">="
|
326
326
|
- !ruby/object:Gem::Version
|
327
|
-
version: '
|
327
|
+
version: '3.1'
|
328
328
|
type: :runtime
|
329
329
|
prerelease: false
|
330
330
|
version_requirements: !ruby/object:Gem::Requirement
|
331
331
|
requirements:
|
332
332
|
- - ">="
|
333
333
|
- !ruby/object:Gem::Version
|
334
|
-
version: '
|
334
|
+
version: '3.1'
|
335
335
|
- !ruby/object:Gem::Dependency
|
336
336
|
name: dsl_evaluator
|
337
337
|
requirement: !ruby/object:Gem::Requirement
|