Revision 4474f112

b/lib/cli.py
3016 3016
    self.jobs = []
3017 3017
    self.opts = opts
3018 3018
    self.feedback_fn = feedback_fn
3019
    if feedback_fn:
3020
      self._info_fn = feedback_fn
3021
    else:
3022
      self._info_fn = ToStdout
3023 3019
    self._counter = itertools.count()
3024 3020

  
3025 3021
  @staticmethod
......
3101 3097
    if self.verbose:
3102 3098
      ok_jobs = [row[2] for row in self.jobs if row[1]]
3103 3099
      if ok_jobs:
3104
        self._info_fn("Submitted jobs %s", utils.CommaJoin(ok_jobs))
3100
        ToStdout("Submitted jobs %s", utils.CommaJoin(ok_jobs))
3105 3101

  
3106 3102
    # first, remove any non-submitted jobs
3107 3103
    self.jobs, failures = compat.partition(self.jobs, lambda x: x[1])
3108 3104
    for idx, _, jid, name in failures:
3109
      self._info_fn("Failed to submit job%s: %s",
3110
                    self._IfName(name, " for %s"), jid)
3105
      ToStderr("Failed to submit job%s: %s", self._IfName(name, " for %s"), jid)
3111 3106
      results.append((idx, False, jid))
3112 3107

  
3113 3108
    while self.jobs:
3114 3109
      (idx, _, jid, name) = self._ChooseJob()
3115
      self._info_fn("Waiting for job %s%s ...",
3116
                    jid, self._IfName(name, " for %s"))
3110
      ToStdout("Waiting for job %s%s ...", jid, self._IfName(name, " for %s"))
3117 3111
      try:
3118 3112
        job_result = PollJob(jid, cl=self.cl, feedback_fn=self.feedback_fn)
3119 3113
        success = True
3120 3114
      except errors.JobLost, err:
3121 3115
        _, job_result = FormatError(err)
3122
        self._info_fn("Job %s%s has been archived, cannot check its result",
3123
                      jid, self._IfName(name, " for %s"))
3116
        ToStderr("Job %s%s has been archived, cannot check its result",
3117
                 jid, self._IfName(name, " for %s"))
3124 3118
        success = False
3125 3119
      except (errors.GenericError, luxi.ProtocolError), err:
3126 3120
        _, job_result = FormatError(err)
3127 3121
        success = False
3128 3122
        # the error message will always be shown, verbose or not
3129
        self._info_fn("Job %s%s has failed: %s",
3130
                      jid, self._IfName(name, " for %s"), job_result)
3123
        ToStderr("Job %s%s has failed: %s",
3124
                 jid, self._IfName(name, " for %s"), job_result)
3131 3125

  
3132 3126
      results.append((idx, success, job_result))
3133 3127

  
......
3151 3145
        self.SubmitPending()
3152 3146
      for _, status, result, name in self.jobs:
3153 3147
        if status:
3154
          self._info_fn("%s: %s", result, name)
3148
          ToStdout("%s: %s", result, name)
3155 3149
        else:
3156
          self._info_fn("Failure for %s: %s", name, result)
3150
          ToStderr("Failure for %s: %s", name, result)
3157 3151
      return [row[1:3] for row in self.jobs]
3158 3152

  
3159 3153

  

Also available in: Unified diff