cfhighlander 0.5.0.alpha.1532475939 → 0.5.0.alpha.1533598770

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: a81290dc7c86a9d6d0a51400b7ad7ee034f66fa766ce90db6079ac4dff86299c
4
- data.tar.gz: c0066b13d379ebc57885932de5bcd31fd5d2c5cf003bac24466678bd69e26286
3
+ metadata.gz: 3b49cd3b396b061c0f206802a8c2c6c3e03ca16b63adb6bb56735ae0dbbd80dd
4
+ data.tar.gz: 34af7300204b6a7e32d85027f2a34317d69a6bd3efbb1679a41f726e3d1a3b91
5
5
  SHA512:
6
- metadata.gz: 23a6136edcca5f665ec8970d3aba735842a300efd6923c25611164f4e906fd4885322c7a3edb3fe6b9247d7459e213052bda6cdc2affc6ab1512e532a0469cc9
7
- data.tar.gz: 286d3137603804680dc46c2efd7de157a1ba4252188335feeb0cf2f34a3f26a754e3909d65e9fb2323c86b2924d0f72b112bc37f11a0e42adae2f4dc6128e046
6
+ metadata.gz: 45696c171086b2ae974ce3555eb2a50c5c5f8ae905821abb09605462728448176df37e805bd2a74a701667af5a23a2f15995350ef08e88a80397b8ac7ac2303c
7
+ data.tar.gz: 2b935de2734e82b582350598b71f0d4152cc967e4349eaa2f4d875d183649a1da8ad5c1e706b856b3fe65d32bd9ea133bd164b6439f7ecce4028566cf3ddf27d
data/README.md CHANGED
@@ -443,7 +443,27 @@ end
443
443
 
444
444
  ```
445
445
 
446
+ **Convert config value to parameter** - In case of inner component having configuration value
447
+ you wish to expose as runtime parameter, it is possible to do so with limitation that configuration
448
+ value is only used in *resource declarations*, as property value. If configuration value is being used
449
+ to control the dsl flow, taking part in any control structure statements, and such gets evaluated at
450
+ **compile** time, there is no sense of making CloudFormation stack parameter out of it.
446
451
 
452
+ Below example demonstrate use of `ConfigParameter` statement on simple S3 Bucket component -
453
+ it assumes that `s3bucket` template exists with `bucketName` as configuration value for it.
454
+
455
+
456
+ ```ruby
457
+ CfhighlanderTemplate do
458
+
459
+ Component template: 's3bucket', name: 'parameterizedBucket' do
460
+ ConfigParameter config_key: 'bucketName', parameter_name: '', type: 'String'
461
+ end
462
+
463
+ end
464
+
465
+
466
+ ```
447
467
 
448
468
  ### Parameters
449
469
 
data/bin/cfhighlander.rb CHANGED
@@ -84,7 +84,7 @@ class HighlanderCli < Thor
84
84
 
85
85
  component = build_component(options, component_name)
86
86
 
87
- if component.distribution_bucket.nil? or component.distribution_prefix.nil?
87
+ if component.highlander_dsl.distribution_bucket.nil? or component.highlander_dsl.distribution_prefix.nil?
88
88
  component.distribution_bucket="#{aws_account_id()}.#{aws_current_region()}.cfhighlander.templates" if component.distribution_bucket.nil?
89
89
  component.distribution_prefix="published-templates/#{component.name}" if component.distribution_prefix.nil?
90
90
  puts "INFO: Reloading component, as auto-generated distribution settings are being applied..."
@@ -1,6 +1,7 @@
1
1
  require 'aws-sdk-cloudformation'
2
2
  require 'aws-sdk-s3'
3
3
  require 'digest/md5'
4
+ require_relative '../hl_ext/aws_helper'
4
5
 
5
6
  module Cfhighlander
6
7
 
@@ -46,6 +47,10 @@ module Cfhighlander
46
47
  def validate_s3(path)
47
48
  template = File.read path
48
49
  bucket = @component.highlander_dsl.distribution_bucket
50
+ if bucket.nil?
51
+ bucket = "#{aws_account_id()}.#{aws_current_region()}.cfhighlander.templates"
52
+ s3_create_bucket_if_not_exists(bucket)
53
+ end
49
54
  prefix = @component.highlander_dsl.distribution_prefix
50
55
  md5 = Digest::MD5.hexdigest template
51
56
  s3_key = "#{prefix}/highlander/validate/#{md5}"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cfhighlander
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.0.alpha.1532475939
4
+ version: 0.5.0.alpha.1533598770
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nikola Tosic
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2018-07-24 00:00:00.000000000 Z
13
+ date: 2018-08-06 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: highline