Class: Package::Audit::ConfigCleaner

Inherits:
Object
  • Object
show all
Defined in:
lib/package/audit/services/config_cleaner.rb

Overview

rubocop:disable Metrics/ClassLength

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(dir, config, all_packages, options) ⇒ ConfigCleaner

Returns a new instance of ConfigCleaner.



12
13
14
15
16
17
18
19
# File 'lib/package/audit/services/config_cleaner.rb', line 12

def initialize(dir, config, all_packages, options)
  @dir = dir
  @config = config
  @all_packages = all_packages
  @options = options
  @config_file_path = determine_config_file_path
  @removed_packages = []
end

Instance Attribute Details

#removed_packagesObject (readonly)

Returns the value of attribute removed_packages.



32
33
34
# File 'lib/package/audit/services/config_cleaner.rb', line 32

def removed_packages
  @removed_packages
end

Instance Method Details

#runObject



21
22
23
24
25
26
27
28
29
30
# File 'lib/package/audit/services/config_cleaner.rb', line 21

def run
  return unless @config && File.exist?(@config_file_path)

  cleaned_config = clean_config

  return unless config_changed?(cleaned_config)

  write_config_file(cleaned_config)
  print_summary unless @options[Enum::Option::FORMAT]
end