    # File lib/chef/provider/package/yum.rb, line 927
            def yum_command(command)
              status, stdout, stderr = output_of_command(command, {})

              # This is fun: rpm can encounter errors in the %post/%postun scripts which aren't
              # considered fatal - meaning the rpm is still successfully installed. These issue
              # cause yum to emit a non fatal warning but still exit(1). As there's currently no
              # way to suppress this behavior and an exit(1) will break a Chef run we make an
              # effort to trap these and re-run the same install command - it will either fail a
              # second time or succeed.
              #
              # A cleaner solution would have to be done in python and better hook into
              # yum/rpm to handle exceptions as we see fit.
              if status.exitstatus == 1
                stdout.each_line do |l|
                  # rpm-4.4.2.3 lib/psm.c line 2182
                  if l =~ %r{^error: %(post|postun)\(.*\) scriptlet failed, exit status \d+$}
                    Chef::Log.warn("#{@new_resource} caught non-fatal scriptlet issue: \"#{l}\". Can't trust yum exit status " +
                                   "so running install again to verify.")
                    status, stdout, stderr = output_of_command(command, {})
                    break
                  end
                end
              end

              if status.exitstatus > 0
                command_output = "STDOUT: #{stdout}"
                command_output << "STDERR: #{stderr}"
                handle_command_failures(status, command_output, {})
              end
            end