class AppEnvConfig::Generators::InstallGenerator
Public Instance Methods
copy_yml()
click to toggle source
# File lib/generators/app_env_config/install_generator.rb, line 10 def copy_yml copy_file 'app_config.yml', 'config/app_config.yml' end
create_constant()
click to toggle source
# File lib/generators/app_env_config/install_generator.rb, line 14 def create_constant write_to_file( file: 'config/environment.rb', line: 'Rails.application.initialize!', content_before: "APP_CONFIG = AppEnvConfig.get('app_config')", shift: "\n" * 2 ) end
Protected Instance Methods
file_contain_content?(options = {})
click to toggle source
# File lib/generators/app_env_config/install_generator.rb, line 25 def file_contain_content?(options = {}) file_content = File.read(options[:file]) (options[:content_before].blank? || file_content.include?(options[:content_before])) && (options[:content_after].blank? || file_content.include?(options[:content_after])) end
write_to_file(options = {})
click to toggle source
# File lib/generators/app_env_config/install_generator.rb, line 32 def write_to_file(options = {}) return if file_contain_content?(options) gsub_file options[:file], /(#{Regexp.escape(options[:line])})/mi do |match| [ options[:content_before].presence, match, options[:content_after].presence ].compact.join(options.fetch(:shift, "\n")) end end