Sha256: 0157af2c841fe2d0f107b47e6b983cabe89680d12bf6543065082d88ab4ac01b

Contents?: true

Size: 638 Bytes

Versions: 6

Compression:

Stored size: 638 Bytes

Contents

# frozen_string_literal: true

require 'ruby_terraform'

require_relative 'base'

module RSpec
  module Terraform
    module Configuration
      module Providers
        class Chain < Base
          attr_reader(:providers)

          def initialize(opts = {})
            super()
            @providers = opts[:providers] || []
          end

          def resolve(overrides = {})
            providers.reduce(overrides) do |acc, provider|
              provider.resolve(acc)
            end
          end

          def reset
            providers.each { |provider| provider.reset }
          end
        end
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
rspec-terraform-0.5.0.pre.9 lib/rspec/terraform/configuration/providers/chain.rb
rspec-terraform-0.5.0.pre.8 lib/rspec/terraform/configuration/providers/chain.rb
rspec-terraform-0.5.0.pre.7 lib/rspec/terraform/configuration/providers/chain.rb
rspec-terraform-0.5.0.pre.6 lib/rspec/terraform/configuration/providers/chain.rb
rspec-terraform-0.5.0.pre.5 lib/rspec/terraform/configuration/providers/chain.rb
rspec-terraform-0.5.0.pre.4 lib/rspec/terraform/configuration/providers/chain.rb