def verify(machine):
    print 'Initializing host ' + machine
    try:
        host = hosts.create_host(machine, initialize=False, auto_monitor=False)
        host.verify()
        job.record('GOOD', None, 'verify', '%s verified successfully' % machine)
    except Exception, e:
        msg = 'verify failed: %s' % e
        job.record('FAIL', None, 'verify', msg)
        raise


job.parallel_simple(verify, machines)
