module Miasma::Contrib::TerraformApiCore::ApiCommon
Common API methods
Public Class Methods
included(klass)
click to toggle source
Set attributes into model
@param klass [Class]
# File lib/miasma/contrib/terraform.rb, line 16 def self.included(klass) klass.class_eval do attribute :terraform_driver, String, :required => true, :allowed_values => ['tfe', 'boule', 'local'], :default => 'local', :coerce => lambda{|v| v.to_s } # Attributes required for terraform enterprise driver attribute :terraform_tfe_endpoint, String attribute :terraform_tfe_token, String # Attributes required for Boule driver attribute :terraform_boule_endpoint, String # Attributes required for local driver attribute :terraform_local_directory, String attribute :terraform_local_scrub_destroyed, [TrueClass, FalseClass], :default => false end end
Public Instance Methods
custom_setup(creds)
click to toggle source
# File lib/miasma/contrib/terraform.rb, line 32 def custom_setup(creds) begin driver_module = Miasma::Models::Orchestration::Terraform.const_get( Bogo::Utility.camel(creds[:terraform_driver].to_s) ) extend driver_module rescue NameError raise NotImplementedError.new "Requested driver not implemented `#{creds[:terraform_driver]}`" end end
endpoint()
click to toggle source
# File lib/miasma/contrib/terraform.rb, line 43 def endpoint terraform_boule_endpoint end