module LtiProvider::LtiConfig

Public Class Methods

config_file() click to toggle source
# File lib/lti_provider/lti_config.rb, line 10
def self.config_file
  LtiProvider.app_root.join('config/lti.yml')
end
load_config() click to toggle source
# File lib/lti_provider/lti_config.rb, line 6
def self.load_config
  YAML::load(File.open(config_file))[Rails.env]
end
setup!() click to toggle source
# File lib/lti_provider/lti_config.rb, line 14
def self.setup!
  config = LtiProvider::Config
  if File.exists?(config_file)
    Rails.logger.info "Initializing LTI key and secret using configuration in #{config_file}".green
    load_config.each do |k,v|
      config.send("#{k}=", v)
    end
  elsif ENV['LTI_KEY'].present? && ENV['LTI_SECRET'].present?
    Rails.logger.info "Initializing LTI key and secret using environment vars LTI_KEY and LTI_SECRET".green
    config.key = ENV['LTI_KEY']
    config.secret = ENV['LTI_SECRET']
    config.require_canvas = !!ENV['LTI_REQUIRE_CANVAS']
  else
    raise "Warning: LTI key and secret not configured for #{Rails.env})."
  end
end