class Decidim::Mpassid::Generators::InstallGenerator::SecretsModifier
Attributes
config_branch[RW]
empty_line_count[RW]
filepath[RW]
inside_config[RW]
inside_omniauth[RW]
Public Class Methods
new(filepath)
click to toggle source
# File lib/generators/decidim/mpassid/install_generator.rb, line 54 def initialize(filepath) @filepath = filepath end
Public Instance Methods
modify()
click to toggle source
# File lib/generators/decidim/mpassid/install_generator.rb, line 58 def modify self.inside_config = false self.inside_omniauth = false self.config_branch = nil @final = "" @empty_line_count = 0 File.readlines(filepath).each do |line| if line =~ /^$/ @empty_line_count += 1 next else handle_line line insert_empty_lines end @final += line end insert_empty_lines @final end
Private Instance Methods
handle_line(line)
click to toggle source
# File lib/generators/decidim/mpassid/install_generator.rb, line 85 def handle_line(line) if inside_config && line =~ /^ omniauth:/ self.inside_omniauth = true elsif inside_omniauth && line =~ /^( )?[a-z]+/ inject_mpassid_config self.inside_omniauth = false end return unless line =~ /^[a-z]+/ # A new root configuration block starts self.inside_config = false self.inside_omniauth = false if line =~ /^default:/ self.inside_config = true self.config_branch = :default elsif line =~ /^development:/ self.inside_config = true self.config_branch = :development end end
inject_mpassid_config()
click to toggle source
# File lib/generators/decidim/mpassid/install_generator.rb, line 113 def inject_mpassid_config @final += " mpassid:\n" if config_branch == :development @final += " enabled: true\n" @final += " mode: test\n" else @final += " enabled: false\n" end @final += " icon: account-login\n" end
insert_empty_lines()
click to toggle source
# File lib/generators/decidim/mpassid/install_generator.rb, line 108 def insert_empty_lines @final += "\n" * empty_line_count @empty_line_count = 0 end