class Terraspace::CLI::Clean::Logs

Public Instance Methods

are_you_sure?(action) click to toggle source
# File lib/terraspace/cli/clean/logs.rb, line 34
    def are_you_sure?(action)
      message = <<~EOL.chomp
        Will #{action} all the log files in #{pretty_log_root}/ folder
        Are you sure?
      EOL
      sure?(message) # from Util::Sure
    end
log_files() click to toggle source
# File lib/terraspace/cli/clean/logs.rb, line 22
def log_files
  Dir.glob("#{log_root}/**/*.log")
end
log_root() click to toggle source
# File lib/terraspace/cli/clean/logs.rb, line 30
def log_root
  Terraspace.config.log.root
end
pretty_log_root() click to toggle source
# File lib/terraspace/cli/clean/logs.rb, line 26
def pretty_log_root
  Terraspace::Util.pretty_path(log_root)
end
remove() click to toggle source
# File lib/terraspace/cli/clean/logs.rb, line 16
def remove
  puts "Removing all files in #{pretty_log_root}/" unless @options[:mute]
  FileUtils.rm_rf(log_root)
  FileUtils.mkdir_p(log_root)
end
run() click to toggle source
# File lib/terraspace/cli/clean/logs.rb, line 3
def run
  action = @options[:truncate] ? "truncate" : "remove"
  are_you_sure?(action)
  @options[:truncate] ? truncate : remove
  logger.info "Logs #{action}d" # IE: Logs truncated or Logs removed
end
truncate() click to toggle source
# File lib/terraspace/cli/clean/logs.rb, line 10
def truncate
  log_files.each do |path|
    File.open(path, "w").close # truncates files
  end
end