def reenroll!
      unless @reenrolling
        @reenrolling = true
        begin
          info("Triggering re-enroll after unsuccessful communication check", to_console = true)
          cmd = "rs_reenroll"
          cmd += " -v" if @options[:verbose]
          cmd += '&' unless RightScale::Platform.windows?
          # Windows relies on the command protocol to terminate properly.
          # If rchk terminates itself, then rchk --stop will hang trying
          # to connect to this rchk.
          terminate unless RightScale::Platform.windows?
          system(cmd)
          # Wait around until rs_reenroll has a chance to stop the checker
          # otherwise we may restart it
          sleep(5)
        rescue Exception => e
          error("Failed re-enroll after unsuccessful communication check", e, abort = true)
        end
        @reenrolling = false
      end
      true
    end
def reenroll!
      unless @reenrolling
        @reenrolling = true
        begin
          info("Triggering re-enroll after unsuccessful communication check", to_console = true)
          cmd = "rs_reenroll"
          cmd += " -v" if @options[:verbose]
          cmd += '&' unless RightScale::Platform.windows?
          # Windows relies on the command protocol to terminate properly.
          # If rchk terminates itself, then rchk --stop will hang trying
          # to connect to this rchk.
          terminate unless RightScale::Platform.windows?
          system(cmd)
          # Wait around until rs_reenroll has a chance to stop the checker
          # otherwise we may restart it
          sleep(5)
        rescue Exception => e
          error("Failed re-enroll after unsuccessful communication check", e, abort = true)
        end
        @reenrolling = false
      end
      true
    end
Trigger re-enroll
 This will normally cause the checker to exit

 === Return
 true:: Always return true