From eb9c6c4c7a76ccacb7782eab5ea407c4ee4d6d97 Mon Sep 17 00:00:00 2001 From: Brandon Dunne Date: Mon, 4 May 2015 11:19:32 -0400 Subject: [PATCH 1/3] Add logger and NullLogger https://bugzilla.redhat.com/show_bug.cgi?id=1069247 --- lib/linux_admin.rb | 10 +++++++++- lib/linux_admin/common.rb | 2 ++ lib/linux_admin/logging.rb | 5 +++++ lib/linux_admin/null_logger.rb | 11 +++++++++++ linux_admin.gemspec | 2 +- 5 files changed, 28 insertions(+), 2 deletions(-) create mode 100644 lib/linux_admin/logging.rb create mode 100644 lib/linux_admin/null_logger.rb diff --git a/lib/linux_admin.rb b/lib/linux_admin.rb index 14e2153..3f1a5ac 100644 --- a/lib/linux_admin.rb +++ b/lib/linux_admin.rb @@ -2,6 +2,8 @@ require 'active_support' require 'active_support/core_ext' +require 'linux_admin/logging' +require 'linux_admin/null_logger' require 'linux_admin/common' require 'linux_admin/exceptions' @@ -28,5 +30,11 @@ module LinuxAdmin extend Common - include Common + extend self + + attr_writer :logger + + def logger + @logger ||= NullLogger.new + end end diff --git a/lib/linux_admin/common.rb b/lib/linux_admin/common.rb index 1e574ce..0248c6c 100644 --- a/lib/linux_admin/common.rb +++ b/lib/linux_admin/common.rb @@ -7,10 +7,12 @@ def cmd(cmd) end def run(cmd, options = {}) + AwesomeSpawn.logger ||= logger AwesomeSpawn.run(cmd, options) end def run!(cmd, options = {}) + AwesomeSpawn.logger ||= logger AwesomeSpawn.run!(cmd, options) end end diff --git a/lib/linux_admin/logging.rb b/lib/linux_admin/logging.rb new file mode 100644 index 0000000..2bc7f3e --- /dev/null +++ b/lib/linux_admin/logging.rb @@ -0,0 +1,5 @@ +module LinuxAdmin + module Logging + delegate :logger, :to => :LinuxAdmin + end +end diff --git a/lib/linux_admin/null_logger.rb b/lib/linux_admin/null_logger.rb new file mode 100644 index 0000000..b94d5fb --- /dev/null +++ b/lib/linux_admin/null_logger.rb @@ -0,0 +1,11 @@ +require 'logger' + +module LinuxAdmin + class NullLogger < Logger + def initialize(*_args) + end + + def add(*_args, &_block) + end + end +end diff --git a/linux_admin.gemspec b/linux_admin.gemspec index 752cc75..8af079f 100644 --- a/linux_admin.gemspec +++ b/linux_admin.gemspec @@ -37,6 +37,6 @@ registration, updates, etc. spec.add_dependency "activesupport", "> 3.2" spec.add_dependency "inifile" spec.add_dependency "more_core_extensions", "~> 1.1" - spec.add_dependency "awesome_spawn", "~> 1.2" + spec.add_dependency "awesome_spawn", "~> 1.3" spec.add_dependency "nokogiri" end From 0a62aa9dd848a92258f6915399049b263e7049ef Mon Sep 17 00:00:00 2001 From: Brandon Dunne Date: Mon, 4 May 2015 11:25:31 -0400 Subject: [PATCH 2/3] Add logging for enabling repositories and channels https://bugzilla.redhat.com/show_bug.cgi?id=1069247 --- lib/linux_admin/registration_system.rb | 1 + lib/linux_admin/registration_system/rhn.rb | 1 + lib/linux_admin/registration_system/subscription_manager.rb | 1 + 3 files changed, 3 insertions(+) diff --git a/lib/linux_admin/registration_system.rb b/lib/linux_admin/registration_system.rb index 768ff79..7cf05f5 100644 --- a/lib/linux_admin/registration_system.rb +++ b/lib/linux_admin/registration_system.rb @@ -1,6 +1,7 @@ module LinuxAdmin class RegistrationSystem include Common + include Logging def self.registration_type(reload = false) return @registration_type if @registration_type && !reload diff --git a/lib/linux_admin/registration_system/rhn.rb b/lib/linux_admin/registration_system/rhn.rb index cc518a9..32bd8d3 100644 --- a/lib/linux_admin/registration_system/rhn.rb +++ b/lib/linux_admin/registration_system/rhn.rb @@ -44,6 +44,7 @@ def enable_channel(repo, options) cmd = "rhn-channel -a" params = user_pwd(options).merge("--channel=" => repo) + logger.info("#{self.class.name}##{__method__} Enabling channel: #{repo}") run!(cmd, :params => params) end alias_method :subscribe, :enable_channel diff --git a/lib/linux_admin/registration_system/subscription_manager.rb b/lib/linux_admin/registration_system/subscription_manager.rb index 54cf1b7..96a44b7 100644 --- a/lib/linux_admin/registration_system/subscription_manager.rb +++ b/lib/linux_admin/registration_system/subscription_manager.rb @@ -83,6 +83,7 @@ def enable_repo(repo, options = nil) cmd = "subscription-manager repos" params = {"--enable=" => repo} + logger.info("#{self.class.name}##{__method__} Enabling repository: #{repo}") run!(cmd, :params => params) end From 98ce6b819391a613bf3ea19f5ad50e9b8204259c Mon Sep 17 00:00:00 2001 From: Brandon Dunne Date: Mon, 4 May 2015 11:25:46 -0400 Subject: [PATCH 3/3] Add logging when importing GPG keys https://bugzilla.redhat.com/show_bug.cgi?id=1069247 --- lib/linux_admin/rpm.rb | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/lib/linux_admin/rpm.rb b/lib/linux_admin/rpm.rb index 1f11745..fe2fa74 100644 --- a/lib/linux_admin/rpm.rb +++ b/lib/linux_admin/rpm.rb @@ -1,5 +1,7 @@ module LinuxAdmin class Rpm < Package + extend Logging + def self.rpm_cmd Distros.local.command(:rpm) end @@ -16,8 +18,8 @@ def self.list_installed # # Rpm.import_key("/etc/pki/my-gpg-key") def self.import_key(file) - params = {"--import" => file} - run!("rpm", :params => params) + logger.info("#{self.class.name}##{__method__} Importing RPM-GPG-KEY: #{file}") + run!("rpm", :params => {"--import" => file}) end def self.info(pkg)