bauble_core 0.2.0 → 0.3.0

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: 827b73913aed3222163b51eedc05a676edb8738f487adaae8b518b030bf9af86
4
- data.tar.gz: 2bf52fb92e0443796b7e431b3c15733670f1210c3454d48bba7fcf0ef0ca28c8
3
+ metadata.gz: 90cf0a735fda2a560d5a8966ab5b87ab071d5f685af0dc8cff85b113449d580b
4
+ data.tar.gz: 34beb847ffbae3fa044aa8f181efe36974ae6cb2af57be1f587e5a5558f8e866
5
5
  SHA512:
6
- metadata.gz: 4c589abe312e9b19b35ca40e97d83cb8852c237e8c27a680f4bdcc1899ae763a1995c9ca05662403a8090147b4ffe4b7592906a5f2ba7c6aefbe9a3197452fdc
7
- data.tar.gz: 98cd4552ba0f81e745714739d606b63292514b009581857c742cd3d1d787af190f0e1858a6f793e5313b11030e5166e33618d08c890d71caeec53d37f0e0b78b
6
+ metadata.gz: f80357144acefd390c9e099e74328b0ac029dd494d4d18b5513bb4d86b3019021370f1e910b7b240b857f327853f729d2a4a08778c43189d78811bc2eb3ebb04
7
+ data.tar.gz: 50151eef8e96197be8e8a9eddccce7e97a9b3ea0478cda255391e5887c07a86f4bcc2a8fbbe9b2443ef7aec0fd56feb4925a09f257152a8426c1351686ae6358
@@ -8,7 +8,7 @@ module Bauble
8
8
  # a ruby lambda function
9
9
  class RubyFunction < Resource
10
10
  attr_accessor :handler, :name, :role, :function_url, :env_vars, :layers, :timeout, :memory_size,
11
- :reserved_concurrent_executions, :vpc_config
11
+ :reserved_concurrent_executions, :vpc_config, :image_uri
12
12
 
13
13
  def initialize(app, **kwargs)
14
14
  super(app)
@@ -16,6 +16,7 @@ module Bauble
16
16
  @handler = kwargs[:handler]
17
17
  @role = kwargs[:role]
18
18
  @layers = kwargs.fetch(:layers, [])
19
+ @image_uri = kwargs.fetch(:image_uri, nil)
19
20
  @function_url = kwargs.fetch(:function_url, false)
20
21
  @env_vars = kwargs.fetch(:env_vars, {})
21
22
  @timeout = kwargs.fetch(:timeout, 30) # default to 30 seconds
@@ -30,6 +31,7 @@ module Bauble
30
31
 
31
32
  def synthesize
32
33
  template = function_hash
34
+ template[@name]['properties'].merge!(code_hash)
33
35
  template.merge!(function_url_template_addon) if @function_url
34
36
  template
35
37
  end
@@ -43,13 +45,7 @@ module Bauble
43
45
  'name' => resource_name(@name),
44
46
  'properties' => {
45
47
  'name' => resource_name(@name),
46
- 'handler' => @handler,
47
- 'runtime' => 'ruby3.2',
48
- 'code' => {
49
- 'fn::fileArchive' => "#{@app.config.asset_dir}/shared_app_code/#{@app.shared_code_hash}"
50
- },
51
48
  'role' => "${#{@role.name}.arn}",
52
- 'layers' => gem_layers,
53
49
  'environment' => {
54
50
  'variables' => @env_vars.merge(
55
51
  {
@@ -77,6 +73,24 @@ module Bauble
77
73
  all_layers
78
74
  end
79
75
 
76
+ def code_hash
77
+ if @image_uri
78
+ return {
79
+ 'packageType' => 'Image',
80
+ 'imageUri' => @image_uri
81
+ }
82
+ end
83
+
84
+ {
85
+ 'code' => {
86
+ 'fn::fileArchive' => "#{@app.config.asset_dir}/shared_app_code/#{@app.shared_code_hash}"
87
+ },
88
+ 'handler' => @handler,
89
+ 'layers' => gem_layers,
90
+ 'runtime' => 'ruby3.2'
91
+ }
92
+ end
93
+
80
94
  def function_url_template_addon
81
95
  {
82
96
  'function_url' => {
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Bauble
4
- VERSION = '0.2.0'
4
+ VERSION = '0.3.0'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bauble_core
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - James Hoegerl
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-10-21 00:00:00.000000000 Z
11
+ date: 2024-10-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: colorize