rubycfn 0.1.3 → 0.1.4
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 +4 -4
- data/CHANGELOG.md +23 -0
- data/Gemfile.lock +1 -1
- data/README.md +1 -1
- data/lib/rubycfn/version.rb +1 -1
- data/lib/rubycfn.rb +17 -4
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8d3bb0549114b2978a3e788c4f5654636014003a
|
4
|
+
data.tar.gz: 35f1181efaf15646c991ae3811e396b641391d0d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b66d1cf5a142433cb396022bc407ae51e85709607ee4a4e3a355f2a2b64fc14c4bde9f7d54779e79c8a88724e513412c06484e9f1695275aaf468a79badc660f
|
7
|
+
data.tar.gz: 124c708a9a158022f196c85c6bd45b311376bcb5663ec291d4afeb03e1323676358eadac2c9e4177121943333c1c899f5dd7e6e38761df9135a0c1565b61b643
|
data/CHANGELOG.md
ADDED
@@ -0,0 +1,23 @@
|
|
1
|
+
# Change Log
|
2
|
+
All notable changes to Rubycfn will be documented in this file.
|
3
|
+
This project uses [Semantic Versioning](http://semver.org/).
|
4
|
+
|
5
|
+
## 0.1.5 (Next Release)
|
6
|
+
|
7
|
+
## 0.1.4
|
8
|
+
* Made resource names overridable from within resource block with `_id` resource method. -- [@dennisvink][@dennisvink]
|
9
|
+
|
10
|
+
## 0.1.3
|
11
|
+
* Fixed incorrect property name in generated default project -- [@dennisvink][@dennisvink]
|
12
|
+
|
13
|
+
## 0.1.2
|
14
|
+
* Added VPC to default project -- [@dennisvink][@dennisvink]
|
15
|
+
* Pass original resource name to compound resources -- [@dennisvink][@dennisvink]
|
16
|
+
* Prefix environment name to outputted json stack -- [@dennisvink][@dennisvink]
|
17
|
+
* Added support for mappings and Fn::FindInMap -- [@dennisvink][@dennisvink]
|
18
|
+
|
19
|
+
## 0.1.1
|
20
|
+
* Added Rubycfn CLI to generate new projects -- [@dennisvink][@dennisvink]
|
21
|
+
|
22
|
+
[@dennisvink]: https://github.com/dennisvink
|
23
|
+
|
data/Gemfile.lock
CHANGED
data/README.md
CHANGED
data/lib/rubycfn/version.rb
CHANGED
data/lib/rubycfn.rb
CHANGED
@@ -1,9 +1,10 @@
|
|
1
1
|
# Rubycfn RubyCFN is a light-weight CloudFormation DSL
|
2
|
-
require
|
2
|
+
require 'active_support/concern'
|
3
|
+
require "compound/resources"
|
3
4
|
require "json"
|
5
|
+
require "neatjson"
|
4
6
|
require "rubycfn/version"
|
5
|
-
require "
|
6
|
-
require 'active_support/concern'
|
7
|
+
#require "tasks/tasks"
|
7
8
|
|
8
9
|
@depends_on = []
|
9
10
|
@description = ""
|
@@ -12,6 +13,7 @@ require 'active_support/concern'
|
|
12
13
|
@properties = {}
|
13
14
|
@mappings = {}
|
14
15
|
@resources = {}
|
16
|
+
@resource_name = ""
|
15
17
|
@variables = {}
|
16
18
|
@global_variables = {}
|
17
19
|
|
@@ -232,6 +234,10 @@ module Rubycfn
|
|
232
234
|
TOPLEVEL_BINDING.eval("@depends_on = #{resources}")
|
233
235
|
end
|
234
236
|
|
237
|
+
def self._id(name)
|
238
|
+
TOPLEVEL_BINDING.eval("@resource_name = '#{name}'")
|
239
|
+
end
|
240
|
+
|
235
241
|
def self.set(name, index = 0, &block)
|
236
242
|
res = {
|
237
243
|
"#{name}": yield
|
@@ -255,8 +261,15 @@ module Rubycfn
|
|
255
261
|
send("include", arguments[:type][origname, resource_suffix, &block])
|
256
262
|
else
|
257
263
|
yield self, i if block_given?
|
264
|
+
|
265
|
+
resource_postpend = TOPLEVEL_BINDING.eval("@resource_name").empty? ? i+1 : ""
|
266
|
+
unless TOPLEVEL_BINDING.eval("@resource_name").empty?
|
267
|
+
name = TOPLEVEL_BINDING.eval("@resource_name")
|
268
|
+
TOPLEVEL_BINDING.eval("@resource_name = ''")
|
269
|
+
end
|
270
|
+
|
258
271
|
res = {
|
259
|
-
"#{name.to_s}#{i == 0 ? "" :
|
272
|
+
"#{name.to_s}#{i == 0 ? "" : resource_postpend}": {
|
260
273
|
DependsOn: TOPLEVEL_BINDING.eval("@depends_on"),
|
261
274
|
Properties: TOPLEVEL_BINDING.eval("@properties"),
|
262
275
|
Type: arguments[:type]
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rubycfn
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Dennis Vink
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-07-
|
11
|
+
date: 2018-07-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: neatjson
|
@@ -257,6 +257,7 @@ extensions: []
|
|
257
257
|
extra_rdoc_files: []
|
258
258
|
files:
|
259
259
|
- ".gitignore"
|
260
|
+
- CHANGELOG.md
|
260
261
|
- Gemfile
|
261
262
|
- Gemfile.lock
|
262
263
|
- README.md
|