code: def run_external_commands(self, cmds):
          
          if not self.external_commands_manager:
              return
  
          try:
              _t0 = time.time()
              logger.debug("Scheduler '%s' got %d commands", self.name, len(cmds))
              for command in cmds:
                  self.external_commands_manager.resolve_command(ExternalCommand(command))
              statsmgr.counter('external-commands.got.count', len(cmds))
              statsmgr.timer('external-commands.got.time', time.time() - _t0)
          except Exception as exp:  # pylint: disable=broad-except
              logger.warning("External command parsing error: %s", exp)
              logger.warning("Exception: %s / %s", str(exp), traceback.print_exc())
              for command in cmds:
                  try:
                      command = command.decode('utf8', 'ignore')
                  except UnicodeEncodeError:
                      pass
                  except AttributeError:
                      pass
  
                  logger.warning("Command: %s", command)
docs: Run external commands Arbiter/Receiver sent
  
          :param cmds: commands to run
          :type cmds: list
          :return: None