ruby-terraform 0.65.0.pre.9 → 0.65.0.pre.10
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/Gemfile.lock +1 -1
- data/lib/ruby_terraform.rb +45 -1
- data/lib/ruby_terraform/commands.rb +29 -8
- data/lib/ruby_terraform/commands/apply.rb +14 -9
- data/lib/ruby_terraform/commands/base.rb +3 -3
- data/lib/ruby_terraform/commands/clean.rb +2 -2
- data/lib/ruby_terraform/commands/destroy.rb +17 -8
- data/lib/ruby_terraform/commands/force_unlock.rb +24 -0
- data/lib/ruby_terraform/commands/format.rb +11 -9
- data/lib/ruby_terraform/commands/get.rb +8 -5
- data/lib/ruby_terraform/commands/graph.rb +24 -0
- data/lib/ruby_terraform/commands/import.rb +15 -6
- data/lib/ruby_terraform/commands/init.rb +16 -6
- data/lib/ruby_terraform/commands/login.rb +20 -0
- data/lib/ruby_terraform/commands/logout.rb +20 -0
- data/lib/ruby_terraform/commands/output.rb +9 -7
- data/lib/ruby_terraform/commands/plan.rb +15 -6
- data/lib/ruby_terraform/commands/providers.rb +16 -0
- data/lib/ruby_terraform/commands/providers_lock.rb +28 -0
- data/lib/ruby_terraform/commands/providers_mirror.rb +24 -0
- data/lib/ruby_terraform/commands/providers_schema.rb +25 -0
- data/lib/ruby_terraform/commands/refresh.rb +19 -6
- data/lib/ruby_terraform/commands/remote_config.rb +4 -4
- data/lib/ruby_terraform/commands/show.rb +8 -6
- data/lib/ruby_terraform/commands/state_list.rb +20 -0
- data/lib/ruby_terraform/commands/state_move.rb +34 -0
- data/lib/ruby_terraform/commands/state_pull.rb +16 -0
- data/lib/ruby_terraform/commands/state_push.rb +24 -0
- data/lib/ruby_terraform/commands/state_remove.rb +32 -0
- data/lib/ruby_terraform/commands/state_replace_provider.rb +35 -0
- data/lib/ruby_terraform/commands/state_show.rb +24 -0
- data/lib/ruby_terraform/commands/taint.rb +35 -0
- data/lib/ruby_terraform/commands/untaint.rb +37 -0
- data/lib/ruby_terraform/commands/validate.rb +8 -9
- data/lib/ruby_terraform/commands/workspace_delete.rb +32 -0
- data/lib/ruby_terraform/commands/workspace_list.rb +24 -0
- data/lib/ruby_terraform/commands/workspace_new.rb +32 -0
- data/lib/ruby_terraform/commands/workspace_select.rb +24 -0
- data/lib/ruby_terraform/commands/workspace_show.rb +16 -0
- data/lib/ruby_terraform/options.rb +1 -0
- data/lib/ruby_terraform/options/common.rb +11 -0
- data/lib/ruby_terraform/options/factory.rb +1 -0
- data/lib/ruby_terraform/output.rb +7 -7
- data/lib/ruby_terraform/version.rb +1 -1
- metadata +24 -2
- data/lib/ruby_terraform/commands/workspace.rb +0 -26
@@ -0,0 +1,35 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative 'base'
|
4
|
+
require_relative '../options/common'
|
5
|
+
|
6
|
+
module RubyTerraform
|
7
|
+
module Commands
|
8
|
+
class StateReplaceProvider < Base
|
9
|
+
include RubyTerraform::Options::Common
|
10
|
+
|
11
|
+
def subcommands
|
12
|
+
%w[state replace-provider]
|
13
|
+
end
|
14
|
+
|
15
|
+
def options
|
16
|
+
%w[
|
17
|
+
-auto-approve
|
18
|
+
-backup
|
19
|
+
-lock
|
20
|
+
-lock-timeout
|
21
|
+
-state
|
22
|
+
-ignore-remote-version
|
23
|
+
] + super
|
24
|
+
end
|
25
|
+
|
26
|
+
def arguments(parameters)
|
27
|
+
[parameters[:from], parameters[:to]]
|
28
|
+
end
|
29
|
+
|
30
|
+
def parameter_overrides(parameters)
|
31
|
+
{ backup: parameters[:no_backup] ? '-' : parameters[:backup] }
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative 'base'
|
4
|
+
require_relative '../options/common'
|
5
|
+
|
6
|
+
module RubyTerraform
|
7
|
+
module Commands
|
8
|
+
class StateShow < Base
|
9
|
+
include RubyTerraform::Options::Common
|
10
|
+
|
11
|
+
def subcommands
|
12
|
+
%w[state show]
|
13
|
+
end
|
14
|
+
|
15
|
+
def options
|
16
|
+
%w[-state] + super
|
17
|
+
end
|
18
|
+
|
19
|
+
def arguments(parameters)
|
20
|
+
[parameters[:address]]
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,35 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative 'base'
|
4
|
+
require_relative '../options/common'
|
5
|
+
|
6
|
+
module RubyTerraform
|
7
|
+
module Commands
|
8
|
+
class Taint < Base
|
9
|
+
include RubyTerraform::Options::Common
|
10
|
+
|
11
|
+
def subcommands
|
12
|
+
%w[taint]
|
13
|
+
end
|
14
|
+
|
15
|
+
def options
|
16
|
+
%w[
|
17
|
+
-allow-missing
|
18
|
+
-backup
|
19
|
+
-lock
|
20
|
+
-lock-timeout
|
21
|
+
-state -state-out
|
22
|
+
-ignore-remote-version
|
23
|
+
] + super
|
24
|
+
end
|
25
|
+
|
26
|
+
def arguments(parameters)
|
27
|
+
[parameters[:address]]
|
28
|
+
end
|
29
|
+
|
30
|
+
def parameter_overrides(parameters)
|
31
|
+
{ backup: parameters[:no_backup] ? '-' : parameters[:backup] }
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
@@ -0,0 +1,37 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative 'base'
|
4
|
+
require_relative '../options/common'
|
5
|
+
|
6
|
+
module RubyTerraform
|
7
|
+
module Commands
|
8
|
+
class Untaint < Base
|
9
|
+
include RubyTerraform::Options::Common
|
10
|
+
|
11
|
+
def subcommands
|
12
|
+
%w[untaint]
|
13
|
+
end
|
14
|
+
|
15
|
+
def options
|
16
|
+
%w[
|
17
|
+
-allow-missing
|
18
|
+
-backup
|
19
|
+
-lock
|
20
|
+
-lock-timeout
|
21
|
+
-no-color
|
22
|
+
-state
|
23
|
+
-state-out
|
24
|
+
-ignore-remote-version
|
25
|
+
] + super
|
26
|
+
end
|
27
|
+
|
28
|
+
def arguments(parameters)
|
29
|
+
[parameters[:name]]
|
30
|
+
end
|
31
|
+
|
32
|
+
def parameter_overrides(parameters)
|
33
|
+
{ backup: parameters[:no_backup] ? '-' : parameters[:backup] }
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
@@ -1,23 +1,22 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
require_relative 'base'
|
4
|
+
require_relative '../options/common'
|
4
5
|
|
5
6
|
module RubyTerraform
|
6
7
|
module Commands
|
7
8
|
class Validate < Base
|
9
|
+
include RubyTerraform::Options::Common
|
10
|
+
|
11
|
+
def subcommands
|
12
|
+
%w[validate]
|
13
|
+
end
|
14
|
+
|
8
15
|
def options
|
9
16
|
%w[
|
10
|
-
-check-variables
|
11
17
|
-json
|
12
18
|
-no-color
|
13
|
-
|
14
|
-
-var
|
15
|
-
-var-file
|
16
|
-
]
|
17
|
-
end
|
18
|
-
|
19
|
-
def subcommands(_parameters)
|
20
|
-
%w[validate]
|
19
|
+
] + super
|
21
20
|
end
|
22
21
|
|
23
22
|
def arguments(parameters)
|
@@ -0,0 +1,32 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative 'base'
|
4
|
+
require_relative '../options/common'
|
5
|
+
|
6
|
+
module RubyTerraform
|
7
|
+
module Commands
|
8
|
+
class WorkspaceDelete < Base
|
9
|
+
include RubyTerraform::Options::Common
|
10
|
+
|
11
|
+
def subcommands
|
12
|
+
%w[workspace delete]
|
13
|
+
end
|
14
|
+
|
15
|
+
def options
|
16
|
+
%w[
|
17
|
+
-force
|
18
|
+
-lock
|
19
|
+
-lock-timeout
|
20
|
+
] + super
|
21
|
+
end
|
22
|
+
|
23
|
+
def arguments(parameters)
|
24
|
+
[parameters[:workspace], parameters[:directory]]
|
25
|
+
end
|
26
|
+
|
27
|
+
def parameter_defaults(_parameters)
|
28
|
+
{ directory: nil }
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative 'base'
|
4
|
+
require_relative '../options/common'
|
5
|
+
|
6
|
+
module RubyTerraform
|
7
|
+
module Commands
|
8
|
+
class WorkspaceList < Base
|
9
|
+
include RubyTerraform::Options::Common
|
10
|
+
|
11
|
+
def subcommands
|
12
|
+
%w[workspace list]
|
13
|
+
end
|
14
|
+
|
15
|
+
def arguments(parameters)
|
16
|
+
[parameters[:directory]]
|
17
|
+
end
|
18
|
+
|
19
|
+
def parameter_defaults(_parameters)
|
20
|
+
{ directory: nil }
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,32 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative 'base'
|
4
|
+
require_relative '../options/common'
|
5
|
+
|
6
|
+
module RubyTerraform
|
7
|
+
module Commands
|
8
|
+
class WorkspaceNew < Base
|
9
|
+
include RubyTerraform::Options::Common
|
10
|
+
|
11
|
+
def subcommands
|
12
|
+
%w[workspace new]
|
13
|
+
end
|
14
|
+
|
15
|
+
def options
|
16
|
+
%w[
|
17
|
+
-lock
|
18
|
+
-lock-timeout
|
19
|
+
-state
|
20
|
+
] + super
|
21
|
+
end
|
22
|
+
|
23
|
+
def arguments(parameters)
|
24
|
+
[parameters[:workspace], parameters[:directory]]
|
25
|
+
end
|
26
|
+
|
27
|
+
def parameter_defaults(_parameters)
|
28
|
+
{ directory: nil }
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative 'base'
|
4
|
+
require_relative '../options/common'
|
5
|
+
|
6
|
+
module RubyTerraform
|
7
|
+
module Commands
|
8
|
+
class WorkspaceSelect < Base
|
9
|
+
include RubyTerraform::Options::Common
|
10
|
+
|
11
|
+
def subcommands
|
12
|
+
%w[workspace select]
|
13
|
+
end
|
14
|
+
|
15
|
+
def arguments(parameters)
|
16
|
+
[parameters[:workspace], parameters[:directory]]
|
17
|
+
end
|
18
|
+
|
19
|
+
def parameter_defaults(_parameters)
|
20
|
+
{ directory: nil }
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative 'base'
|
4
|
+
require_relative '../options/common'
|
5
|
+
|
6
|
+
module RubyTerraform
|
7
|
+
module Commands
|
8
|
+
class WorkspaceShow < Base
|
9
|
+
include RubyTerraform::Options::Common
|
10
|
+
|
11
|
+
def subcommands
|
12
|
+
%w[workspace show]
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
@@ -3,18 +3,18 @@
|
|
3
3
|
module RubyTerraform
|
4
4
|
class Output
|
5
5
|
class << self
|
6
|
-
def for(
|
7
|
-
Dir.chdir(create_config_directory(
|
8
|
-
RubyTerraform.init(backend_config:
|
9
|
-
RubyTerraform.output(name:
|
6
|
+
def for(parameters)
|
7
|
+
Dir.chdir(create_config_directory(parameters)) do
|
8
|
+
RubyTerraform.init(backend_config: parameters[:backend_config])
|
9
|
+
RubyTerraform.output(name: parameters[:name])
|
10
10
|
end
|
11
11
|
end
|
12
12
|
|
13
13
|
private
|
14
14
|
|
15
|
-
def create_config_directory(
|
16
|
-
source_directory =
|
17
|
-
work_directory =
|
15
|
+
def create_config_directory(parameters)
|
16
|
+
source_directory = parameters[:source_directory]
|
17
|
+
work_directory = parameters[:work_directory]
|
18
18
|
|
19
19
|
configuration_directory = File.join(work_directory, source_directory)
|
20
20
|
FileUtils.mkdir_p File.dirname(configuration_directory)
|
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.65.0.pre.
|
4
|
+
version: 0.65.0.pre.10
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Toby Clemson
|
@@ -257,20 +257,42 @@ files:
|
|
257
257
|
- lib/ruby_terraform/commands/base.rb
|
258
258
|
- lib/ruby_terraform/commands/clean.rb
|
259
259
|
- lib/ruby_terraform/commands/destroy.rb
|
260
|
+
- lib/ruby_terraform/commands/force_unlock.rb
|
260
261
|
- lib/ruby_terraform/commands/format.rb
|
261
262
|
- lib/ruby_terraform/commands/get.rb
|
263
|
+
- lib/ruby_terraform/commands/graph.rb
|
262
264
|
- lib/ruby_terraform/commands/import.rb
|
263
265
|
- lib/ruby_terraform/commands/init.rb
|
266
|
+
- lib/ruby_terraform/commands/login.rb
|
267
|
+
- lib/ruby_terraform/commands/logout.rb
|
264
268
|
- lib/ruby_terraform/commands/output.rb
|
265
269
|
- lib/ruby_terraform/commands/plan.rb
|
270
|
+
- lib/ruby_terraform/commands/providers.rb
|
271
|
+
- lib/ruby_terraform/commands/providers_lock.rb
|
272
|
+
- lib/ruby_terraform/commands/providers_mirror.rb
|
273
|
+
- lib/ruby_terraform/commands/providers_schema.rb
|
266
274
|
- lib/ruby_terraform/commands/refresh.rb
|
267
275
|
- lib/ruby_terraform/commands/remote_config.rb
|
268
276
|
- lib/ruby_terraform/commands/show.rb
|
277
|
+
- lib/ruby_terraform/commands/state_list.rb
|
278
|
+
- lib/ruby_terraform/commands/state_move.rb
|
279
|
+
- lib/ruby_terraform/commands/state_pull.rb
|
280
|
+
- lib/ruby_terraform/commands/state_push.rb
|
281
|
+
- lib/ruby_terraform/commands/state_remove.rb
|
282
|
+
- lib/ruby_terraform/commands/state_replace_provider.rb
|
283
|
+
- lib/ruby_terraform/commands/state_show.rb
|
284
|
+
- lib/ruby_terraform/commands/taint.rb
|
285
|
+
- lib/ruby_terraform/commands/untaint.rb
|
269
286
|
- lib/ruby_terraform/commands/validate.rb
|
270
|
-
- lib/ruby_terraform/commands/
|
287
|
+
- lib/ruby_terraform/commands/workspace_delete.rb
|
288
|
+
- lib/ruby_terraform/commands/workspace_list.rb
|
289
|
+
- lib/ruby_terraform/commands/workspace_new.rb
|
290
|
+
- lib/ruby_terraform/commands/workspace_select.rb
|
291
|
+
- lib/ruby_terraform/commands/workspace_show.rb
|
271
292
|
- lib/ruby_terraform/errors.rb
|
272
293
|
- lib/ruby_terraform/errors/execution_error.rb
|
273
294
|
- lib/ruby_terraform/options.rb
|
295
|
+
- lib/ruby_terraform/options/common.rb
|
274
296
|
- lib/ruby_terraform/options/factory.rb
|
275
297
|
- lib/ruby_terraform/options/name.rb
|
276
298
|
- lib/ruby_terraform/options/types/base.rb
|
@@ -1,26 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require_relative 'base'
|
4
|
-
|
5
|
-
module RubyTerraform
|
6
|
-
module Commands
|
7
|
-
class Workspace < Base
|
8
|
-
def subcommands(parameters)
|
9
|
-
commands = ['workspace', parameters[:operation]]
|
10
|
-
if parameters[:workspace] && parameters[:operation] != 'list'
|
11
|
-
commands << parameters[:workspace]
|
12
|
-
else
|
13
|
-
commands
|
14
|
-
end
|
15
|
-
end
|
16
|
-
|
17
|
-
def arguments(parameters)
|
18
|
-
[parameters[:directory]]
|
19
|
-
end
|
20
|
-
|
21
|
-
def parameter_defaults(_parameters)
|
22
|
-
{ directory: nil, operation: 'list', workspace: nil }
|
23
|
-
end
|
24
|
-
end
|
25
|
-
end
|
26
|
-
end
|