コード例 #1
0
def hosts():
    if 'logged_in' not in session or session['logged_in'] != True:
        return redirect(url_for('index'))

    from hosts import get_hosts
    hosts = get_hosts()
    return render_template('hosts.html', hosts=hosts)
コード例 #2
0
ファイル: main.py プロジェクト: kikiyou/ansible-web
def hosts():
	if 'logged_in' not in session or session['logged_in']!= True:
		return redirect(url_for('index'))

	from hosts import get_hosts
	hosts=get_hosts()
	return render_template('hosts.html', hosts=hosts)
コード例 #3
0
def test0(client_list):
    dlist = []
    for host in hosts.get_hosts('action'):
        print 'launch test0   %s' % (host)
        
        d = base.launch(client_list, host, 'test', wait=False)
        dlist.append(d)
    
    dl = defer.DeferredList(dlist)  
    dl.addCallback(test0_res, client_list)
コード例 #4
0
def test2(client_list):
    dlist = []
    
    for host in hosts.get_hosts('action'):
        print 'launch test2   %s' % (host)
        
        d  = base.poll_for_message(client_list, host, 'test', 'done')
        dlist.append(d)
        
    dl = defer.DeferredList(dlist)  
    dl.addCallback(test2_res, client_list)
コード例 #5
0
def test4(client_list):
    dlist = []
    
    for host in hosts.get_hosts('action'):
        print 'launch test3   %s' % (host)
        
        d = base.wait_for_message(client_list, host, 'test', 'done', '/tmp/testfile')
        dlist.append(d)
    
    dl = defer.DeferredList(dlist)  
    dl.addCallback(test4_res, client_list)
コード例 #6
0
def test5_alive(res, client_list):
    dlist = []
    pid = res[0][1]
    for host in hosts.get_hosts('action'):
        print 'launch test3   %s' % (host)
        
        d = base.client(client_list, host).isAlive(pid)
        dlist.append(d)
        
    dl = defer.DeferredList(dlist)  
    dl.addCallback(test5_res, client_list)
コード例 #7
0
ファイル: shutdown.py プロジェクト: strategist922/sonar
def deploy_phase(client_list):
    print 'deploying rain driver...'
    
    dlist = []
    
    for host in hosts.get_hosts('action'):
        print '   %s' % (host)
        d = base.launch(client_list, host, 'vm_shutdown', wait=True)
        dlist.append(d)
    
    # Wait for all drones to finish and set phase
    dl = defer.DeferredList(dlist)
    dl.addCallback(finished, client_list)
コード例 #8
0
ファイル: deploy_relay.py プロジェクト: strategist922/sonar
def deploy_phase(client_list):
    print 'deploying rain driver...'
    
    dlist = []
    
    for host in hosts.get_hosts('deploy'):
        print '   %s' % (host)
        d = base.launch(client_list, host, 'relay_deploy', wait=True)
        dlist.append(d)
        d.addErrback(error, client_list)
    
    # Wait for all drones to finish and set phase
    dl = defer.DeferredList(dlist)
    dl.addCallback(finished, client_list)
コード例 #9
0
def deploy_phase(client_list):
    print 'deploying SensorHub: '
    
    dlist = []
    
    # Deploy sensorhubs
    for host in hosts.get_hosts('deploy'):
        print '   %s' % (host)
        d = base.launch(client_list, host, 'sensorhub_deploy', wait=True)
        dlist.append(d)
    
    # Wait for all drones to finish and set phase
    dl = defer.DeferredList(dlist)
    dl.addCallback(finished, client_list)
コード例 #10
0
ファイル: main.py プロジェクト: kikiyou/ansible-web
def playbook():
	if 'logged_in' not in session or session['logged_in']!= True:
		return redirect(url_for('index'))

	playbook= request.args['playbook']
	with open('playbooks/%s' % playbook, 'r') as f:
		playscript= f.read()

	from hosts import get_hosts
	hosts=get_hosts()

	from jinja2 import Environment, PackageLoader, meta
	env= Environment(loader= PackageLoader('playbooks',''))
	template_source= env.loader.get_source(env, playbook)[0]
	parsed_content= env.parse(template_source)
	extra_vars= meta.find_undeclared_variables(parsed_content)

	return render_template('playbook.html', playbook= playbook, playscript= playscript, hosts=hosts, extra_vars= extra_vars)
コード例 #11
0
def playbook():
    if 'logged_in' not in session or session['logged_in'] != True:
        return redirect(url_for('index'))

    playbook = request.args['playbook']
    with open('playbooks/%s' % playbook, 'r') as f:
        playscript = f.read()

    from hosts import get_hosts
    hosts = get_hosts()

    from jinja2 import Environment, PackageLoader, meta
    env = Environment(loader=PackageLoader('playbooks', ''))
    template_source = env.loader.get_source(env, playbook)[0]
    parsed_content = env.parse(template_source)
    extra_vars = meta.find_undeclared_variables(parsed_content)

    return render_template('playbook.html',
                           playbook=playbook,
                           playscript=playscript,
                           hosts=hosts,
                           extra_vars=extra_vars)
コード例 #12
0
ファイル: host_status.py プロジェクト: clan/ops
                check_type = 'net'
                rrd_file = osp.join(self.cwd, "%s-%s.%s" %
                                    (check_type, i['name'], 'rrd'))
                d_v = self.check_rrd(check_type, rrd_file, status_cfg,
                                     utcnow=utcnow)
                self.result[i['name']] = dict(zip(self.status_key, d_v))

        fd = None
        try:
            fd = open(self.status_file, "w+")
            json.dump({'result': self.result}, fd)
        except Exception, e:
            self.log.warn("%s" % (e,))
        finally:
            if fd:
                fd.close()

if __name__ == '__main__':
    import hosts
    cwd = osp.join(
        settings.get('data_dir', osp.join(work_dir, 'data')),
        'rrd'
    )
    os.chdir(cwd)
    #for host in hosts.hosts:
    for host in hosts.get_hosts():
        config = host.get('status', {})
        rrd = HostStatusCheck(host['id'], host, config,
                              osp.join(work_dir, 'conf', 'status.yaml'))
        rrd.do_check()
コード例 #13
0
ファイル: send_data.py プロジェクト: clan/ops
if __name__ == '__main__':
    parser = argparse.ArgumentParser(description='Sender Poller')
    parser.add_argument('--prod', default=False,
                        action='store_true',
                        help='Run in production mode, '
                             'show warning and above messaege only.')
    parser.add_argument('--host',
                        help='Send specified host (name or ip) data only.')
    args = parser.parse_args()

    log_level = logging.WARNING if args.prod else logging.DEBUG

    ops_log = ops_log_open(level=log_level, root=True)

    hosts = get_hosts()

    if args.host:
        # find host w/ specified name or ip
        h = args.host
        ts = filter(lambda v: v.get('name') == h or v.get('dest') == h, hosts)
        if len(ts) != 1:
            if len(ts) == 0:
                ops_log.error("Host `%s' not found.", (h,))
            else:
                ids = [t['id'] for t in ts]
                ops_log.error("Multiple host `%s' %s found, please fix.",
                              h, ids)
            sys.exit(1)
        hosts = ts
        log_stdin = True