def execute(self, options, jjb_config): builder = JenkinsManager(jjb_config) reach = set() if options.del_jobs and options.del_views: raise JenkinsJobsException( '"--views-only" and "--jobs-only" cannot be used together.') elif options.del_jobs and not options.del_views: reach.add('jobs') elif options.del_views and not options.del_jobs: reach.add('views') else: reach.update(('jobs', 'views')) if not utils.confirm( 'Sure you want to delete *ALL* {} from Jenkins ' 'server?\n(including those not managed by Jenkins ' 'Job Builder)'.format(" AND ".join(reach))): sys.exit('Aborted') if 'jobs' in reach: logger.info("Deleting all jobs") builder.delete_all_jobs() if 'views' in reach: logger.info("Deleting all views") builder.delete_all_views()
def execute(self, options, jjb_config): builder = JenkinsManager(jjb_config) reach = set() if options.del_jobs and options.del_views: raise JenkinsJobsException('"--views-only" and "--jobs-only" cannot be used together.') elif options.del_jobs and not options.del_views: reach.add("jobs") elif options.del_views and not options.del_jobs: reach.add("views") else: reach.update(("jobs", "views")) if not utils.confirm( "Sure you want to delete *ALL* {} from Jenkins " "server?\n(including those not managed by Jenkins " "Job Builder)".format(" AND ".join(reach)) ): sys.exit("Aborted") if options.del_jobs: logger.info("Deleting all jobs") builder.delete_all_jobs() if options.del_views: logger.info("Deleting all views") builder.delete_all_views()
def execute(self): options = self.options builder = Builder(self.jjb_config) if options.command == 'delete': for job in options.name: builder.delete_job(job, options.path) elif options.command == 'delete-all': if not utils.confirm( 'Sure you want to delete *ALL* jobs from Jenkins ' 'server?\n(including those not managed by Jenkins ' 'Job Builder)'): sys.exit('Aborted') logger.info("Deleting all jobs") builder.delete_all_jobs() elif options.command == 'update': if options.n_workers < 0: self.parser.error( 'Number of workers must be equal or greater than 0') logger.info("Updating jobs in {0} ({1})".format( options.path, options.names)) jobs, num_updated_jobs = builder.update_jobs( options.path, options.names, n_workers=options.n_workers) logger.info("Number of jobs updated: %d", num_updated_jobs) if options.delete_old: num_deleted_jobs = builder.delete_old_managed() logger.info("Number of jobs deleted: %d", num_deleted_jobs) elif options.command == 'test': builder.update_jobs(options.path, options.name, output=options.output_dir, n_workers=1)
def execute(self, options, jjb_config): builder = Builder(jjb_config) if not utils.confirm( 'Sure you want to delete *ALL* jobs from Jenkins ' 'server?\n(including those not managed by Jenkins ' 'Job Builder)'): sys.exit('Aborted') logger.info("Deleting all jobs") builder.delete_all_jobs()