Sha256: 24275c8d1ae98539a369ded2916d78dde69c223911edd4c1ac4b31502c4e6dc0

Contents?: true

Size: 1.18 KB

Versions: 30

Compression:

Stored size: 1.18 KB

Contents

# frozen_string_literal: true

require_relative 'base'
require_relative '../options/global'

module RubyTerraform
  module Commands
    # Wraps the +terraform providers schema+ command which prints out a json
    # representation of the schemas for all providers used in the current
    # configuration.
    #
    # For options accepted on construction, see {#initialize}.
    #
    # When executing an instance of {ProvidersSchema} via {#execute}, the
    # following options are supported:
    #
    # * +:chdir+: the path of a working directory to switch to before executing
    #   the given subcommand.
    #
    # @example Basic Invocation
    #   RubyTerraform::Commands::ProvidersSchema.new.execute(
    #     directory: 'infra/networking')
    #
    class ProvidersSchema < Base
      include RubyTerraform::Options::Global

      # @!visibility private
      def subcommands
        %w[providers schema]
      end

      # @!visibility private
      def options
        %w[-json] + super
      end

      # @!visibility private
      def parameter_overrides(_parameters)
        # Terraform 0.15 - at this time, the -json flag is a required option.
        { json: true }
      end
    end
  end
end

Version data entries

30 entries across 30 versions & 1 rubygems

Version Path
ruby-terraform-1.6.0.pre.4 lib/ruby_terraform/commands/providers_schema.rb
ruby-terraform-1.6.0.pre.3 lib/ruby_terraform/commands/providers_schema.rb
ruby-terraform-1.6.0.pre.2 lib/ruby_terraform/commands/providers_schema.rb
ruby-terraform-1.6.0.pre.1 lib/ruby_terraform/commands/providers_schema.rb
ruby-terraform-1.5.0 lib/ruby_terraform/commands/providers_schema.rb
ruby-terraform-1.5.0.pre.5 lib/ruby_terraform/commands/providers_schema.rb
ruby-terraform-1.5.0.pre.4 lib/ruby_terraform/commands/providers_schema.rb
ruby-terraform-1.5.0.pre.3 lib/ruby_terraform/commands/providers_schema.rb
ruby-terraform-1.5.0.pre.2 lib/ruby_terraform/commands/providers_schema.rb
ruby-terraform-1.5.0.pre.1 lib/ruby_terraform/commands/providers_schema.rb
ruby-terraform-1.4.0 lib/ruby_terraform/commands/providers_schema.rb
ruby-terraform-1.4.0.pre.5 lib/ruby_terraform/commands/providers_schema.rb
ruby-terraform-1.4.0.pre.4 lib/ruby_terraform/commands/providers_schema.rb
ruby-terraform-1.4.0.pre.3 lib/ruby_terraform/commands/providers_schema.rb
ruby-terraform-1.4.0.pre.2 lib/ruby_terraform/commands/providers_schema.rb
ruby-terraform-1.4.0.pre.1 lib/ruby_terraform/commands/providers_schema.rb
ruby-terraform-1.3.1 lib/ruby_terraform/commands/providers_schema.rb
ruby-terraform-1.3.0 lib/ruby_terraform/commands/providers_schema.rb
ruby-terraform-1.3.0.pre.3 lib/ruby_terraform/commands/providers_schema.rb
ruby-terraform-1.3.0.pre.2 lib/ruby_terraform/commands/providers_schema.rb