def main(): args = parse_args() if args.json_file: desired_state = desired_state_parser.load_desired_state_file( args.json_file) else: desired_state_data = gitiles.call_gitiles(args.json_gitiles, 'text', netrc_path=args.netrc) desired_state = desired_state_parser.parse_desired_state( desired_state_data) if args.verify: return 0 # File checks out, no need to continue. triggered, ignored = desired_state_parser.get_masters_for_host( desired_state, args.build_dir, args.hostname) log_triggered_ignored(triggered, ignored, args.hostname) commands = [ synthesize_master_manager_cmd(m, args.hostname, prod=args.prod) for m in triggered ] if args.command_timeout: commands = [ daemon.add_timeout(c, args.command_timeout) for c in commands ] multiprocess.safe_map(subprocess.call, commands, args.processes)
def main(): args = parse_args() # Flushing metrics here to be sure the presence/up got sent even if the # program runs for less than a minute. ts_mon.flush() if args.json_file: desired_state = desired_state_parser.load_desired_state_file( args.json_file) else: desired_state_data = gitiles.call_gitiles( args.json_gitiles, 'text', netrc_path=args.netrc) desired_state = desired_state_parser.parse_desired_state(desired_state_data) if args.verify: return 0 # File checks out, no need to continue. triggered, ignored = desired_state_parser.get_masters_for_host( desired_state, args.build_dir, args.hostname) log_triggered_ignored(triggered, ignored, args.hostname) commands = [ synthesize_master_manager_cmd(m, args.hostname, prod=args.prod) for m in triggered ] if args.command_timeout: commands = [daemon.add_timeout(c, args.command_timeout) for c in commands] multiprocess.safe_map(subprocess.call, commands, args.processes)
def testBrokenFile(self): with self.assertRaises(desired_state_parser.InvalidDesiredMasterState): desired_state_parser.load_desired_state_file( os.path.join(DATA_DIR, 'broken.json'))
def testValidPrevVersion(self): desired_state_parser.load_desired_state_file( os.path.join(DATA_DIR, 'valid_prev_version.json'))
def testValidFile(self): desired_state_parser.load_desired_state_file( os.path.join(DATA_DIR, 'valid.json'))