Class: Decidim::Mpassid::Generators::InstallGenerator

Inherits:
Rails::Generators::Base
  • Object
show all
Defined in:
lib/generators/decidim/mpassid/install_generator.rb

Defined Under Namespace

Classes: SecretsModifier

Instance Method Summary collapse

Instance Method Details

#copy_initializerObject



28
29
30
31
32
33
34
# File 'lib/generators/decidim/mpassid/install_generator.rb', line 28

def copy_initializer
  if options[:test_initializer]
    copy_file "mpassid_initializer_test.rb", "config/initializers/mpassid.rb"
  else
    copy_file "mpassid_initializer.rb", "config/initializers/mpassid.rb"
  end
end

#enable_authenticationObject



36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
# File 'lib/generators/decidim/mpassid/install_generator.rb', line 36

def enable_authentication
  secrets_path = Rails.application.root.join("config", "secrets.yml")
  secrets = YAML.safe_load(File.read(secrets_path), [], [], true)

  if secrets["default"]["omniauth"]["mpassid"]
    say_status :identical, "config/secrets.yml", :blue
  else
    mod = SecretsModifier.new(secrets_path)
    final = mod.modify

    target_path = Rails.application.root.join("config", "secrets.yml")
    File.open(target_path, "w") { |f| f.puts final }

    say_status :insert, "config/secrets.yml", :green
  end
end