示例#1
0
    def schedule_jobs(self, jobs_missing_packages, jobs_to_schedule, name):
        for job in jobs_to_schedule:
            log.info(
                'Scheduling %s', job['desc']
            )

            log_prefix = ''
            if job in jobs_missing_packages:
                log_prefix = "Missing Packages: "
                if (
                    not self.args.dry_run and
                    not config.suite_allow_missing_packages
                ):
                    util.schedule_fail(
                        "At least one job needs packages that don't exist for "
                        "hash {sha1}.".format(sha1=self.base_config.sha1),
                        name,
                    )
            util.teuthology_schedule(
                args=job['args'],
                dry_run=self.args.dry_run,
                verbose=self.args.verbose,
                log_prefix=log_prefix,
            )
            throttle = self.args.throttle
            if not self.args.dry_run and throttle:
                log.info("pause between jobs : --throttle " + str(throttle))
                time.sleep(int(throttle))
示例#2
0
 def write_rerun_memo(self):
     args = copy.deepcopy(self.base_args)
     args.append('--first-in-suite')
     if self.args.subset:
         subset = '/'.join(str(i) for i in self.args.subset)
         args.extend(['--subset', subset])
     args.extend(['--seed', str(self.args.seed)])
     util.teuthology_schedule(args=args,
                              dry_run=self.args.dry_run,
                              verbose=self.args.verbose,
                              log_prefix="Memo: ")
示例#3
0
 def write_result(self):
     arg = copy.deepcopy(self.base_args)
     arg.append('--last-in-suite')
     if self.base_config.email:
         arg.extend(['--email', self.base_config.email])
     if self.args.timeout:
         arg.extend(['--timeout', self.args.timeout])
     util.teuthology_schedule(args=arg,
                              dry_run=self.args.dry_run,
                              verbose=self.args.verbose,
                              log_prefix="Results: ")
     results_url = get_results_url(self.base_config.name)
     if results_url:
         log.info("Test results viewable at %s", results_url)