ruby-terraform 0.27.0.pre.pre.2 → 0.29.0.pre.pre.1

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: 43df990032f6e8413504a6784282f980fefc1d3364acac5c0635d032796ba0fa
4
- data.tar.gz: d910ad3417915dd5a3ed6b8811dc4ca8224275bda6955a13c27a832adc575dc4
3
+ metadata.gz: 74107c0345d78776629e585ed00cdbc3fd74a8170740a63827ca1004357aed9e
4
+ data.tar.gz: b5cdca917a58b422cf047de27c3f705c83dd779573892e3b2b0f57df84100ba3
5
5
  SHA512:
6
- metadata.gz: 9ad88937ac68228c0eb51587c6ad900ddd9da3b1b147fcdc4a350e17f07b44bfa491838cf81761c4d193b4f5d2fb3e4a1559a15edb092fc03a4ebcc81351ff86
7
- data.tar.gz: 73c543d4bfda6cad6f5fd92264fba13bd38c2c53d9f9d3fb0edc2b7c8cc669bba27f678b7ae075500f1d646d8cdd209e19cb75b1fe4f48db3773de9553b71bc4
6
+ metadata.gz: aa73debf4732ee55b3b2c71d67ffc7919f28e021b4c31d3bc9e8c5564549484dc530735c57ff6b6ef6465295b75a202e17fbe9265e70f4b16c94648fecf8b04d
7
+ data.tar.gz: bc838afc7bd52bf784f2c7474be28885489923939a9bc7e363ebe4debb604d9b0afee66a6c6ebd354961fcd69008516e09d71e0b2967ecd15256038b9b90b2dc
data/.circleci/config.yml CHANGED
@@ -3,14 +3,14 @@ jobs:
3
3
  test:
4
4
  working_directory: ~/ruby-terraform
5
5
  docker:
6
- - image: ruby:2.3.8
6
+ - image: ruby:2.4.7
7
7
  steps:
8
8
  - checkout
9
9
  - run: ./scripts/ci/steps/test.sh
10
10
  prerelease:
11
11
  working_directory: ~/ruby-terraform
12
12
  docker:
13
- - image: ruby:2.3.8
13
+ - image: ruby:2.4.7
14
14
  steps:
15
15
  - checkout
16
16
  - run: ./scripts/ci/common/install-git-crypt.sh
@@ -21,7 +21,7 @@ jobs:
21
21
  release:
22
22
  working_directory: ~/ruby-terraform
23
23
  docker:
24
- - image: ruby:2.3.8
24
+ - image: ruby:2.4.7
25
25
  steps:
26
26
  - checkout
27
27
  - run: ./scripts/ci/common/install-git-crypt.sh
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- 2.3.8
1
+ 2.4.7
data/CHANGELOG.md CHANGED
@@ -1,3 +1,9 @@
1
+ ## 0.27.0 (September 25th, 2019)
2
+
3
+ IMPROVEMENTS:
4
+
5
+ * Add configurable logger and standard streams.
6
+
1
7
  ## 0.12.0 (June 5th, 2018)
2
8
 
3
9
  IMPROVEMENTS:
data/Gemfile.lock CHANGED
@@ -1,13 +1,13 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- ruby-terraform (0.27.0.pre.pre.2)
4
+ ruby-terraform (0.29.0.pre.pre.1)
5
5
  lino (~> 1.1)
6
6
 
7
7
  GEM
8
8
  remote: https://rubygems.org/
9
9
  specs:
10
- concurrent-ruby (1.1.3)
10
+ concurrent-ruby (1.1.5)
11
11
  diff-lcs (1.3)
12
12
  gem-release (2.0.1)
13
13
  hamster (3.0.0)
@@ -35,11 +35,11 @@ PLATFORMS
35
35
  ruby
36
36
 
37
37
  DEPENDENCIES
38
- bundler (~> 1.16)
38
+ bundler (~> 2.0)
39
39
  gem-release (~> 2.0)
40
40
  rake (~> 12.3)
41
41
  rspec (~> 3.8)
42
42
  ruby-terraform!
43
43
 
44
44
  BUNDLED WITH
45
- 1.17.3
45
+ 2.0.2
data/README.md CHANGED
@@ -3,6 +3,7 @@
3
3
  A simple wrapper around the Terraform binary to allow execution from within
4
4
  a Ruby program or Rakefile.
5
5
 
6
+
6
7
  ## Installation
7
8
 
8
9
  Add this line to your application's Gemfile:
@@ -32,7 +33,7 @@ RubyTerraform.configure do |config|
32
33
  end
33
34
  ```
34
35
 
35
- In addition, each command that requires the terraform binary (all except
36
+ In addition, each command that requires the terraform binary (all except
36
37
  `clean`) takes a `binary` keyword argument at initialisation that overrides the
37
38
  global configuration value.
38
39
 
@@ -43,9 +44,11 @@ Currently, there is partial support for the following commands:
43
44
  * `RubyTerraform::Commands::Get`: executes `terraform get`
44
45
  * `RubyTerraform::Commands::Plan`: executes `terraform plan`
45
46
  * `RubyTerraform::Commands::Apply`: executes `terraform apply`
47
+ * `RubyTerraform::Commands::Show`: executes `terraform show`
46
48
  * `RubyTerraform::Commands::Destroy`: executes `terraform destroy`
47
49
  * `RubyTerraform::Commands::Output`: executes `terraform output`
48
50
  * `RubyTerraform::Commands::RemoteConfig`: executes `terraform remote config`
51
+ * `RubyTerraform::Commands::Validate`: executes `terraform validate`
49
52
  * `RubyTerraform::Commands::Workspace`: executes `terraform workspace`
50
53
 
51
54
  ### RubyTerraform::Commands::Clean
@@ -66,7 +69,7 @@ removes the specified directory.
66
69
 
67
70
  ### RubyTerraform::Commands::Init
68
71
 
69
- The init command will initialise a terraform environment. It can be called in
72
+ The init command will initialise a terraform environment. It can be called in
70
73
  the following ways:
71
74
 
72
75
  ```ruby
@@ -74,12 +77,12 @@ RubyTerraform.init
74
77
  RubyTerraform.init(source: 'some/module/path', path: 'infra/module')
75
78
  RubyTerraform::Commands::Init.new.execute
76
79
  RubyTerraform::Commands::Init.new.execute(
77
- source: 'some/module/path',
80
+ source: 'some/module/path',
78
81
  path: 'infra/module')
79
82
  ```
80
83
 
81
84
  The init command supports the following options passed as keyword arguments:
82
- * `source`: the source module to use to initialise; required if `path` is
85
+ * `source`: the source module to use to initialise; required if `path` is
83
86
  specified
84
87
  * `path`: the path to initialise.
85
88
  * `backend`: `true`/`false`, whether or not to configure the backend.
@@ -103,12 +106,12 @@ RubyTerraform::Commands::Get.new.execute(directory: 'infra/networking')
103
106
 
104
107
  The get command supports the following options passed as keyword arguments:
105
108
  * `directory`: the directory containing terraform configuration; required.
106
- * `update`: whether or not already downloaded modules should be updated;
109
+ * `update`: whether or not already downloaded modules should be updated;
107
110
  defaults to `false`.
108
111
  * `no_color`: whether or not the output from the command should be in color;
109
112
  defaults to `false`.
110
-
111
-
113
+
114
+
112
115
  ### RubyTerraform::Commands::Plan
113
116
 
114
117
  The plan command will generate the execution plan in the provided
@@ -116,7 +119,7 @@ configuration directory. It can be called in the following ways:
116
119
 
117
120
  ```ruby
118
121
  RubyTerraform.plan(
119
- directory: 'infra/networking',
122
+ directory: 'infra/networking',
120
123
  vars: {
121
124
  region: 'eu-central'
122
125
  })
@@ -130,20 +133,21 @@ RubyTerraform::Commands::Plan.new.execute(
130
133
  The plan command supports the following options passed as keyword arguments:
131
134
  * `directory`: the directory containing terraform configuration; required.
132
135
  * `vars`: a map of vars to be passed in to the terraform configuration.
133
- * `var_file`: the path to a terraform var file; if both `var_file` and
136
+ * `var_file`: the path to a terraform var file; if both `var_file` and
134
137
  `var_files` are provided, all var files will be passed to terraform.
135
- * `var_files`: an array of paths to terraform var files; if both `var_file` and
138
+ * `var_files`: an array of paths to terraform var files; if both `var_file` and
136
139
  `var_files` are provided, all var files will be passed to terraform.
137
140
  * `state`: the path to the state file in which to store state; defaults to
138
141
  terraform.tfstate in the working directory or the remote state if configured.
139
142
  * `plan`: the name of the file in which to save the generated plan.
140
- * `input`: when `false`, will not ask for input for variables not directly set; defaults to `true`.
143
+ * `input`: when `false`, will not ask for input for variables not directly set;
144
+ defaults to `true`.
141
145
  * `destroy`: when `true`, a plan will be generated to destroy all resources
142
146
  managed by the given configuration and state; defaults to `false`.
143
147
  * `no_color`: whether or not the output from the command should be in color;
144
148
  defaults to `false`.
145
-
146
-
149
+
150
+
147
151
  ### RubyTerraform::Commands::Apply
148
152
 
149
153
  The apply command applies terraform configuration in the provided terraform
@@ -151,7 +155,7 @@ configuration directory. It can be called in the following ways:
151
155
 
152
156
  ```ruby
153
157
  RubyTerraform.apply(
154
- directory: 'infra/networking',
158
+ directory: 'infra/networking',
155
159
  vars: {
156
160
  region: 'eu-central'
157
161
  })
@@ -165,19 +169,20 @@ RubyTerraform::Commands::Apply.new.execute(
165
169
  The apply command supports the following options passed as keyword arguments:
166
170
  * `directory`: the directory containing terraform configuration; required.
167
171
  * `vars`: a map of vars to be passed in to the terraform configuration.
168
- * `var_file`: the path to a terraform var file; if both `var_file` and
172
+ * `var_file`: the path to a terraform var file; if both `var_file` and
173
+ `var_files` are provided, all var files will be passed to terraform.
174
+ * `var_files`: an array of paths to terraform var files; if both `var_file` and
169
175
  `var_files` are provided, all var files will be passed to terraform.
170
- * `var_files`: an array of paths to terraform var files; if both `var_file` and
171
- `var_files` are provided, all var files will be passed to terraform.
172
176
  * `state`: the path to the state file in which to store state; defaults to
173
177
  terraform.tfstate in the working directory or the remote state if configured.
174
178
  * `backup`: the path to the backup file in which to store the state backup.
175
- * `input`: when `false`, will not ask for input for variables not directly set; defaults to `true`.
179
+ * `input`: when `false`, will not ask for input for variables not directly set;
180
+ defaults to `true`.
176
181
  * `no_backup`: when `true`, no backup file will be written; defaults to `false`.
177
182
  * `no_color`: whether or not the output from the command should be in color;
178
183
  defaults to `false`.
179
- * `auto_approve`: if `true`, the command applys without prompting the user to confirm
180
- the changes; defaults to `false`.
184
+ * `auto_approve`: if `true`, the command applys without prompting the user to
185
+ confirm the changes; defaults to `false`.
181
186
 
182
187
 
183
188
  ### RubyTerraform::Commands::Destroy
@@ -188,7 +193,7 @@ called in the following ways:
188
193
 
189
194
  ```ruby
190
195
  RubyTerraform.destroy(
191
- directory: 'infra/networking',
196
+ directory: 'infra/networking',
192
197
  vars: {
193
198
  region: 'eu-central'
194
199
  })
@@ -202,10 +207,10 @@ RubyTerraform::Commands::Destroy.new.execute(
202
207
  The destroy command supports the following options passed as keyword arguments:
203
208
  * `directory`: the directory containing terraform configuration; required.
204
209
  * `vars`: a map of vars to be passed in to the terraform configuration.
205
- * `var_file`: the path to a terraform var file; if both `var_file` and
210
+ * `var_file`: the path to a terraform var file; if both `var_file` and
211
+ `var_files` are provided, all var files will be passed to terraform.
212
+ * `var_files`: an array of paths to terraform var files; if both `var_file` and
206
213
  `var_files` are provided, all var files will be passed to terraform.
207
- * `var_files`: an array of paths to terraform var files; if both `var_file` and
208
- `var_files` are provided, all var files will be passed to terraform.
209
214
  * `state`: the path to the state file containing the current state; defaults to
210
215
  terraform.tfstate in the working directory or the remote state if configured.
211
216
  * `force`: if `true`, the command destroys without prompting the user to confirm
@@ -260,32 +265,113 @@ RubyTerraform::Commands::RemoteConfig.new.execute(
260
265
  The remote config command supports the following options passed as keyword
261
266
  arguments:
262
267
  * `backend`: the type of backend to use; required.
263
- * `backend_config`: a map of backend specific configuration parameters;
268
+ * `backend_config`: a map of backend specific configuration parameters;
264
269
  required.
265
270
  * `no_color`: whether or not the output from the command should be in color;
266
271
  defaults to `false`.
267
272
 
273
+
268
274
  ### RubyTerraform::Commands::Workspace
269
275
 
270
- The `workspace` command configures [Terraform Workspaces](https://www.terraform.io/docs/state/workspaces.html#using-workspaces). It can be used as follows:
276
+ The `workspace` command configures
277
+ [Terraform Workspaces](https://www.terraform.io/docs/state/workspaces.html#using-workspaces).
278
+ It can be used as follows:
271
279
 
272
280
  ```ruby
273
- RubyTerraform.workspace(operation: 'list') # terraform workspace list
274
- RubyTerraform.workspace(operation: 'new', workspace: 'staging') # terraform workspace new staging
275
- RubyTerraform.workspace(operation: 'select', workspace: 'staging') # terraform workspace select staging
276
- RubyTerraform.workspace(operation: 'list') # terraform workspace list
277
- RubyTerraform.workspace(operation: 'select', workspace: 'default') # terraform workspace select default
278
- RubyTerraform.workspace(operation: 'delete', workspace: 'staging') # terraform workspace delete staging
281
+ RubyTerraform.workspace(operation: 'list')
282
+ RubyTerraform.workspace(operation: 'new', workspace: 'staging')
283
+ RubyTerraform.workspace(operation: 'select', workspace: 'staging')
284
+ RubyTerraform.workspace(operation: 'list')
285
+ RubyTerraform.workspace(operation: 'select', workspace: 'default')
286
+ RubyTerraform.workspace(operation: 'delete', workspace: 'staging')
279
287
  ```
280
288
 
281
- The workspace command supports the following options passed as keyword arguments:
282
- * `directory`: the directory containing terraform configuration, the default is the current path.
289
+ arguments:
290
+ * `directory`: the directory containing terraform configuration, the default is
291
+ the current path.
283
292
  * `operation`: `list`, `select`, `new` or `delete`. default `list`.
284
293
  * `workspace`: Workspace name.
285
294
 
295
+
296
+ ## Configuration
297
+
298
+ In addition to configuring the location of the terraform binary, RubyTerraform
299
+ offers configuration of logging and standard streams. By default standard
300
+ streams map to `$stdin`, `$stdout` and `$stderr` and all logging goes to
301
+ `$stdout`.
302
+
303
+ ### Logging
304
+
305
+ By default, RubyTerraform logs to `$stdout` with level `info`.
306
+
307
+ To configure a custom logger:
308
+
309
+ ``` ruby
310
+ require 'logger'
311
+
312
+ logger = Logger.new($stdout)
313
+ logger.level = Logger::DEBUG
314
+
315
+ RubyTerraform.configure do |config|
316
+ config.logger = logger
317
+ end
318
+ ```
319
+
320
+ RubyTerraform supports logging to multiple different outputs at once,
321
+ for example:
322
+
323
+ ``` ruby
324
+ require 'logger'
325
+
326
+ log_file = File.open('path/to/some/ruby_terraform.log', 'a')
327
+ logger = Logger.new(
328
+ RubyTerraform::MultiIO.new($stdout, log_file))
329
+ logger.level = Logger::DEBUG
330
+
331
+ RubyTerraform.configure do |config|
332
+ config.logger = logger
333
+ end
334
+ ```
335
+
336
+ Configured in this way, any logging performed by RubyTerraform will log to both
337
+ `STDOUT` and the provided `log_file`.
338
+
339
+ ### Standard Streams
340
+
341
+ By default, RubyTerraform uses streams `$stdin`, `$stdout` and `$stderr`.
342
+
343
+ To configure custom output and error streams:
344
+
345
+ ``` ruby
346
+ log_file = File.open('path/to/some/ruby_terraform.log', 'a')
347
+
348
+ RubyTerraform.configure do |config|
349
+ config.stdout = log_file
350
+ config.stderr = log_file
351
+ end
352
+ ```
353
+
354
+ In this way, both outputs will be redirected to `log_file`.
355
+
356
+ Similarly, a custom input stream can be configured:
357
+
358
+ ``` ruby
359
+ require 'stringio'
360
+
361
+ input = StringIO.new("user\ninput\n")
362
+
363
+ RubyTerraform.configure do |config|
364
+ config.stdin = input
365
+ end
366
+ ```
367
+
368
+ In this way, terraform can be driven by input from somewhere other than
369
+ interactive input from the terminal.
370
+
371
+
286
372
  ## Development
287
373
 
288
- After checking out the repo, run `bin/setup` to install dependencies. Then,
374
+ After checking out the repo, run `bin/setup` to install dependencies. Then,
289
375
  run `rake spec` to run the tests. You can also run `bin/console` for an
290
376
  interactive prompt that will allow you to experiment.
291
377
 
@@ -320,7 +406,7 @@ openssl aes-256-cbc \
320
406
 
321
407
  ## Contributing
322
408
 
323
- Bug reports and pull requests are welcome on GitHub at
409
+ Bug reports and pull requests are welcome on GitHub at
324
410
  https://github.com/infrablocks/ruby_terraform. This project is intended to be a
325
411
  safe, welcoming space for collaboration, and contributors are expected to adhere
326
412
  to the [Contributor Covenant](http://contributor-covenant.org) code of conduct.
@@ -328,5 +414,5 @@ to the [Contributor Covenant](http://contributor-covenant.org) code of conduct.
328
414
 
329
415
  ## License
330
416
 
331
- The gem is available as open source under the terms of the
417
+ The gem is available as open source under the terms of the
332
418
  [MIT License](http://opensource.org/licenses/MIT).
@@ -80,11 +80,20 @@ module RubyTerraform
80
80
  end
81
81
 
82
82
  class Configuration
83
- attr_accessor :binary, :logger
83
+ attr_accessor :binary, :logger, :stdin, :stdout, :stderr
84
+
85
+ def default_logger
86
+ logger = Logger.new($stdout)
87
+ logger.level = Logger::INFO
88
+ logger
89
+ end
84
90
 
85
91
  def initialize
86
92
  @binary = 'terraform'
87
- @logger = Logger.new(STDOUT, level: :info)
93
+ @logger = default_logger
94
+ @stdin = $stdin
95
+ @stdout = $stdout
96
+ @stderr = $stderr
88
97
  end
89
98
  end
90
99
 
@@ -5,21 +5,24 @@ module RubyTerraform
5
5
  class Base
6
6
  attr_reader :binary
7
7
 
8
- def initialize(binary: nil, logger: nil)
8
+ def initialize(binary: nil, logger: nil, stdin: nil, stdout: nil, stderr: nil)
9
9
  @binary = binary || RubyTerraform.configuration.binary
10
10
  @logger = logger || RubyTerraform.configuration.logger
11
+ @stdin = stdin || RubyTerraform.configuration.stdin
12
+ @stdout = stdout || RubyTerraform.configuration.stdout
13
+ @stderr = stderr || RubyTerraform.configuration.stderr
11
14
  end
12
15
 
13
16
  def stdin
14
- ''
17
+ @stdin
15
18
  end
16
19
 
17
20
  def stdout
18
- $stdout
21
+ @stdout
19
22
  end
20
23
 
21
24
  def stderr
22
- $stderr
25
+ @stderr
23
26
  end
24
27
 
25
28
  def execute(opts = {})
@@ -6,7 +6,8 @@ module RubyTerraform
6
6
  module Commands
7
7
  class Output < Base
8
8
  def stdout
9
- @stdout ||= StringIO.new
9
+ @stdout = StringIO.new unless
10
+ defined?(@stdout) && @stdout.respond_to?(:string)
10
11
  end
11
12
 
12
13
  def configure_command(builder, opts)
@@ -27,7 +28,7 @@ module RubyTerraform
27
28
  end
28
29
 
29
30
  def do_after(opts)
30
- result = stdout.string
31
+ result = @stdout.string
31
32
  opts[:name] ? result.chomp : result
32
33
  end
33
34
  end
@@ -18,7 +18,8 @@ module RubyTerraform
18
18
  builder
19
19
  .with_subcommand('plan') do |sub|
20
20
  vars.each do |key, value|
21
- sub = sub.with_option('-var', "'#{key}=#{value}'", separator: ' ')
21
+ sub = sub.with_option(
22
+ '-var', "'#{key}=#{value}'", separator: ' ')
22
23
  end
23
24
  sub = sub.with_option('-var-file', var_file) if var_file
24
25
  var_files.each do |file|
@@ -10,16 +10,15 @@ module RubyTerraform
10
10
  var_file = opts[:var_file]
11
11
  var_files = opts[:var_files] || []
12
12
  state = opts[:state]
13
- refresh = opts[:refresh]
14
13
  input = opts[:input]
15
14
  target = opts[:target]
16
- destroy = opts[:destroy]
17
15
  no_color = opts[:no_color]
18
16
 
19
17
  builder
20
18
  .with_subcommand('refresh') do |sub|
21
19
  vars.each do |key, value|
22
- sub = sub.with_option('-var', "'#{key}=#{value}'", separator: ' ')
20
+ sub = sub.with_option(
21
+ '-var', "'#{key}=#{value}'", separator: ' ')
23
22
  end
24
23
  sub = sub.with_option('-var-file', var_file) if var_file
25
24
  var_files.each do |file|
@@ -14,7 +14,8 @@ module RubyTerraform
14
14
  .with_subcommand('config') do |sub|
15
15
  sub = sub.with_option('-backend', backend) if backend
16
16
  backend_config.each do |key, value|
17
- sub = sub.with_option('-backend-config', "'#{key}=#{value}'", separator: ' ')
17
+ sub = sub.with_option(
18
+ '-backend-config', "'#{key}=#{value}'", separator: ' ')
18
19
  end
19
20
 
20
21
  sub = sub.with_flag('-no-color') if no_color
@@ -5,7 +5,6 @@ require_relative 'base'
5
5
 
6
6
  module RubyTerraform
7
7
  module Commands
8
- # Supports the `terraform show` directive
9
8
  class Show < Base
10
9
  def configure_command(builder, opts)
11
10
  no_color = opts[:no_color]
@@ -16,14 +16,16 @@ module RubyTerraform
16
16
  builder
17
17
  .with_subcommand('validate') do |sub|
18
18
  vars.each do |key, value|
19
- sub = sub.with_option('-var', "'#{key}=#{value}'", separator: ' ')
19
+ sub = sub.with_option(
20
+ '-var', "'#{key}=#{value}'", separator: ' ')
20
21
  end
21
22
  sub = sub.with_option('-var-file', var_file) if var_file
22
23
  var_files.each do |file|
23
24
  sub = sub.with_option('-var-file', file)
24
25
  end
25
26
  sub = sub.with_option('-state', state) if state
26
- sub = sub.with_option('-check-variables', check_variables) unless check_variables.nil?
27
+ sub = sub.with_option('-check-variables', check_variables) unless
28
+ check_variables.nil?
27
29
  sub = sub.with_flag('-no-color') if no_color
28
30
  sub
29
31
  end
@@ -13,8 +13,11 @@ module RubyTerraform
13
13
  .with_subcommand('workspace')
14
14
  .with_subcommand(operation)
15
15
 
16
- builder = builder.with_subcommand(workspace) if workspace && operation != 'list'
16
+ builder = builder.with_subcommand(workspace) if
17
+ workspace && operation != 'list'
17
18
  builder = builder.with_argument(directory)
19
+
20
+ builder
18
21
  end
19
22
  end
20
23
  end
@@ -1,3 +1,3 @@
1
1
  module RubyTerraform
2
- VERSION = "0.27.0-pre.2"
2
+ VERSION = "0.29.0-pre.1"
3
3
  end
@@ -23,11 +23,11 @@ Gem::Specification.new do |spec|
23
23
  spec.executables = spec.files.grep(%r{^exe/}) {|f| File.basename(f)}
24
24
  spec.require_paths = ['lib']
25
25
 
26
- spec.required_ruby_version = '>= 2.3.8'
26
+ spec.required_ruby_version = '>= 2.4.7'
27
27
 
28
28
  spec.add_dependency 'lino', '~> 1.1'
29
29
 
30
- spec.add_development_dependency 'bundler', '~> 1.16'
30
+ spec.add_development_dependency 'bundler', '~> 2.0'
31
31
  spec.add_development_dependency 'rake', '~> 12.3'
32
32
  spec.add_development_dependency 'rspec', '~> 3.8'
33
33
  spec.add_development_dependency 'gem-release', '~> 2.0'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruby-terraform
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.27.0.pre.pre.2
4
+ version: 0.29.0.pre.pre.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Toby Clemson
@@ -30,14 +30,14 @@ dependencies:
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '1.16'
33
+ version: '2.0'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '1.16'
40
+ version: '2.0'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rake
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -152,7 +152,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
152
152
  requirements:
153
153
  - - ">="
154
154
  - !ruby/object:Gem::Version
155
- version: 2.3.8
155
+ version: 2.4.7
156
156
  required_rubygems_version: !ruby/object:Gem::Requirement
157
157
  requirements:
158
158
  - - ">"