pangea 0.0.17 → 0.0.19

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 042ffac7a29b219ecb71003fbf200b23ed825fc05673e4f41269bab27ac889d2
4
- data.tar.gz: 2eb10e4471f04f712c1e4e8c2f3d6fcd55a742b229b522284e21877ceac31fb1
3
+ metadata.gz: 12e73dbb5bbcbde2a5c66a219663f748e2ca4880f5f04984faeedf3cdbc56425
4
+ data.tar.gz: 52c2729a3f9236e7189e960d34835027599ed119e06f47efd2db1b936aa42583
5
5
  SHA512:
6
- metadata.gz: 33c8d3c2c9100126a875c0973a3552a19b3c5d737256f1531b3e1fbfd6ad70da307384e3399ba919585f231733e751dbc1f85191c1526a2a04eaf219c26e1570
7
- data.tar.gz: 0d83a1a41f869f1fa8e23bdc1b0bfcb13a2423473e3a070c15357e0642314e3591065f22cca2fab80144a9bf2952fea45e4cda8d3d8e1273679ead00b48a2a7a
6
+ metadata.gz: f7f3ccfe178b11fbc8c781f1c5b93e6c2579433627528eb6f147a3568c42d346c9fa70d075bf547dd77634393879f2f15bf7aea7f572a03c56d7f57f7e48883c
7
+ data.tar.gz: fd3f4dff05a1fe467cc42c767a7532bb975bb88ee7c6a31bdec7fa7648b7ef0ccba5988fadc430f600521d0199fecb16a13f9372f8e5c991d396c32c06706303
@@ -3,6 +3,7 @@ require %(pangea/synthesizer/config)
3
3
  require %(pangea/cli/config)
4
4
  require %(json)
5
5
  require %(aws-sdk-dynamodb)
6
+ require %(aws-sdk-s3)
6
7
 
7
8
  class ConfigCommand < PangeaCommand
8
9
  usage do
@@ -37,6 +38,14 @@ class ConfigCommand < PangeaCommand
37
38
  return false
38
39
  end
39
40
 
41
+ def s3
42
+ @s3 ||= Aws::S3::Resource.new
43
+ end
44
+
45
+ def bucket_exist?(name)
46
+ s3.bucket(name).exists?
47
+ end
48
+
40
49
  def dynamodb
41
50
  @dynamodb ||= Aws::DynamoDB::Client.new
42
51
  end
@@ -77,6 +86,10 @@ class ConfigCommand < PangeaCommand
77
86
  ns.each_key do |ctx_name|
78
87
  ctx = ns[ctx_name]
79
88
  if ctx[:state_config][:terraform][:s3]
89
+ ###################################################################
90
+ # dynamodb table setup
91
+ ###################################################################
92
+
80
93
  unless table_exists?(ctx[:state_config][:terraform][:s3][:dynamodb_table])
81
94
  begin
82
95
  result = dynamodb.create_table(
@@ -89,6 +102,22 @@ class ConfigCommand < PangeaCommand
89
102
  puts error.message.to_s
90
103
  end
91
104
  end
105
+
106
+ # dynamodb table setup
107
+
108
+ ###################################################################
109
+ # s3 bucket setup
110
+ ###################################################################
111
+ if bucket_exist?(ctx[:state_config][:terraform][:s3][:bucket])
112
+ puts "bucket already exists: #{ctx[:state_config][:terraform][:s3][:bucket]}"
113
+ else
114
+ s3.create_bucket(
115
+ bucket: ctx[:state_config][:terrraform][:s3][:bucket]
116
+ )
117
+ end
118
+
119
+ # end s3 bucket setup
120
+
92
121
  end
93
122
  end
94
123
  end
@@ -1,3 +1,3 @@
1
1
  module Pangea
2
- VERSION = %(0.0.17).freeze
2
+ VERSION = %(0.0.19).freeze
3
3
  end
data/pangea.gemspec CHANGED
@@ -34,6 +34,7 @@ Gem::Specification.new do |spec|
34
34
  %i[
35
35
  terraform-synthesizer
36
36
  abstract-synthesizer
37
+ aws-sdk-dynamodb
37
38
  tty-progressbar
38
39
  tty-option
39
40
  tty-table
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pangea
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.17
4
+ version: 0.0.19
5
5
  platform: ruby
6
6
  authors:
7
7
  - drzthslnt@gmail.com
@@ -150,6 +150,20 @@ dependencies:
150
150
  - - ">="
151
151
  - !ruby/object:Gem::Version
152
152
  version: '0'
153
+ - !ruby/object:Gem::Dependency
154
+ name: aws-sdk-dynamodb
155
+ requirement: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - ">="
158
+ - !ruby/object:Gem::Version
159
+ version: '0'
160
+ type: :runtime
161
+ prerelease: false
162
+ version_requirements: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - ">="
165
+ - !ruby/object:Gem::Version
166
+ version: '0'
153
167
  - !ruby/object:Gem::Dependency
154
168
  name: tty-progressbar
155
169
  requirement: !ruby/object:Gem::Requirement