pangea-component-network 0.0.2 → 0.0.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8e9fff62a7822ab7431e7f8643324b95ff0adf25bb73e69d3b4f1b7b03e36b07
4
- data.tar.gz: 8fc874f0973c1c539c0b5ea0252b8757093d826e70ec0f8861520c679a72ab28
3
+ metadata.gz: 0bfb219353981b336ab9567a3ab909441c887045701f8bcb0d5d8e3d6e3d8423
4
+ data.tar.gz: 96d2eb261d7a179a6d3f2b142bbbabbcda2e27d5fe829edfcd7554e618429839
5
5
  SHA512:
6
- metadata.gz: 406e68ff108894fb80e183f8de8c4911d2748ec951d5d3a18bf60a47578f6980aff9b99455d3ea9e9f2e18f736162c313b33c23e217616c056bef374304a2e0b
7
- data.tar.gz: 3c0796b4c84cfb2177003989ead2b5d0f42b933e09e9bbd97f25d73bc83da987b6fe354b92fcd08de5b37fcf56364898f740eba88abd9b618c2ac388f7999987
6
+ metadata.gz: b0b48b61b36c6e1e44ddada6375db1b84a600f7108b051d6ba1fb2b80c4ba9f4209ba82737e7009770b667e2e0099853c03cc6a4f305bf2ce44620780e92cc05
7
+ data.tar.gz: ba81b67543ca3551ffd31fc64b853bb00c54a8112c6f1f5ecf4e71254ae983d6ea908c6775280c021d59181459af4f0360fc807635c72aa5a26de57011d57e67
data/Gemfile CHANGED
@@ -14,18 +14,7 @@ group :development do
14
14
  end
15
15
 
16
16
  group :production do
17
- %w[
18
- aws-sdk-dynamodb
19
- terraform-synthesizer
20
- abstract-synthesizer
21
- tty-progressbar
22
- tty-option
23
- tty-table
24
- tty-color
25
- tty-box
26
- toml-rb
27
- bundler
28
- ].each do |this_gem|
17
+ %w[terraform-synthesizer].each do |this_gem|
29
18
  gem this_gem
30
19
  end
31
20
  end
data/Gemfile.lock CHANGED
@@ -1,23 +1,9 @@
1
1
  GEM
2
2
  remote: https://rubygems.org/
3
3
  specs:
4
- abstract-synthesizer (0.0.2)
4
+ abstract-synthesizer (0.0.3)
5
5
  ast (2.4.2)
6
- aws-eventstream (1.3.0)
7
- aws-partitions (1.856.0)
8
- aws-sdk-core (3.188.0)
9
- aws-eventstream (~> 1, >= 1.0.2)
10
- aws-partitions (~> 1, >= 1.651.0)
11
- aws-sigv4 (~> 1.5)
12
- jmespath (~> 1, >= 1.6.1)
13
- aws-sdk-dynamodb (1.97.0)
14
- aws-sdk-core (~> 3, >= 3.188.0)
15
- aws-sigv4 (~> 1.1)
16
- aws-sigv4 (1.7.0)
17
- aws-eventstream (~> 1, >= 1.0.2)
18
- citrus (3.0.2)
19
6
  diff-lcs (1.5.0)
20
- jmespath (1.6.2)
21
7
  json (2.6.3)
22
8
  keycutter (1.0.2)
23
9
  language_server-protocol (3.17.0.3)
@@ -25,8 +11,6 @@ GEM
25
11
  parser (3.2.2.4)
26
12
  ast (~> 2.4.1)
27
13
  racc
28
- pastel (0.8.0)
29
- tty-color (~> 0.5)
30
14
  racc (1.7.3)
31
15
  rainbow (3.1.1)
32
16
  rake (13.1.0)
@@ -69,54 +53,21 @@ GEM
69
53
  rubocop-capybara (~> 2.17)
70
54
  rubocop-factory_bot (~> 2.22)
71
55
  ruby-progressbar (1.13.0)
72
- strings (0.2.1)
73
- strings-ansi (~> 0.2)
74
- unicode-display_width (>= 1.5, < 3.0)
75
- unicode_utils (~> 1.4)
76
- strings-ansi (0.2.0)
77
- terraform-synthesizer (0.0.2)
78
- toml-rb (2.2.0)
79
- citrus (~> 3.0, > 3.0)
80
- tty-box (0.7.0)
81
- pastel (~> 0.8)
82
- strings (~> 0.2.0)
83
- tty-cursor (~> 0.7)
84
- tty-color (0.6.0)
85
- tty-cursor (0.7.1)
86
- tty-option (0.3.0)
87
- tty-progressbar (0.18.2)
88
- strings-ansi (~> 0.2)
89
- tty-cursor (~> 0.7)
90
- tty-screen (~> 0.8)
91
- unicode-display_width (>= 1.6, < 3.0)
92
- tty-screen (0.8.1)
93
- tty-table (0.12.0)
94
- pastel (~> 0.8)
95
- strings (~> 0.2.0)
96
- tty-screen (~> 0.8)
56
+ terraform-synthesizer (0.0.4)
57
+ abstract-synthesizer
97
58
  unicode-display_width (2.5.0)
98
- unicode_utils (1.4.0)
99
59
  yard (0.9.34)
100
60
 
101
61
  PLATFORMS
102
62
  x86_64-linux
103
63
 
104
64
  DEPENDENCIES
105
- abstract-synthesizer
106
- aws-sdk-dynamodb
107
- bundler
108
65
  keycutter
109
66
  rake
110
67
  rspec
111
68
  rubocop-rake
112
69
  rubocop-rspec
113
70
  terraform-synthesizer
114
- toml-rb
115
- tty-box
116
- tty-color
117
- tty-option
118
- tty-progressbar
119
- tty-table
120
71
  yard
121
72
 
122
73
  BUNDLED WITH
@@ -1,7 +1,7 @@
1
1
  module Pangea
2
2
  module Component
3
3
  module Network
4
- VERSION = %(0.0.2).freeze
4
+ VERSION = %(0.0.4).freeze
5
5
  end
6
6
  end
7
7
  end
@@ -1,4 +1,27 @@
1
- def render
2
- # return hash of rendered component
3
- {}
1
+ require %(terraform-synthesizer)
2
+ require %(json)
3
+
4
+ def symbolize(hash)
5
+ JSON[JSON[hash], symbolize_names: true]
6
+ end
7
+
8
+ ################################################################################
9
+ # external entities call render with data
10
+ # render implements the synthesizer and processes
11
+ # internal module with data
12
+ ################################################################################
13
+
14
+ def render(data)
15
+ synth = TerraformSynthesizer.new
16
+ current_file_directory = File.dirname(File.expand_path(__FILE__))
17
+ vpc_file_path = File.join(
18
+ current_file_directory,
19
+ '../',
20
+ 'resources',
21
+ 'vpc.rb'
22
+ )
23
+ vpc_content = File.read(vpc_file_path)
24
+ synth.load_synthesis_data(data)
25
+ synth.synthesize(vpc_content)
26
+ synth.synthesis
4
27
  end
@@ -13,7 +13,7 @@ Gem::Specification.new do |spec|
13
13
  spec.summary = %(network components)
14
14
  spec.homepage = %(https://github.com/drzln/#{spec.name})
15
15
  spec.license = %(MIT)
16
- spec.require_paths = [%(lib)]
16
+ spec.require_paths = [%(lib), %(resources)]
17
17
  spec.required_ruby_version = %(>= #{`cat .ruby-version`})
18
18
 
19
19
  spec.files = `git ls-files -z`.split("\x0").reject do |f|
data/resources/vpc.rb ADDED
@@ -0,0 +1,3 @@
1
+ resource :aws_vpc, :bob do
2
+ cidr_block %(10.0.0.0/16)
3
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pangea-component-network
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - drzthslnt@gmail.com
@@ -155,6 +155,7 @@ files:
155
155
  - lib/pangea-component-network.rb
156
156
  - lib/pangea-component-network/version.rb
157
157
  - pangea-component-network.gemspec
158
+ - resources/vpc.rb
158
159
  homepage: https://github.com/drzln/pangea-component-network
159
160
  licenses:
160
161
  - MIT
@@ -164,6 +165,7 @@ post_install_message:
164
165
  rdoc_options: []
165
166
  require_paths:
166
167
  - lib
168
+ - resources
167
169
  required_ruby_version: !ruby/object:Gem::Requirement
168
170
  requirements:
169
171
  - - ">="