Esempio n. 1
0
File: jobs.py Progetto: haje01/wzdat
def check_cache():
    # TODO: remove when file-wise caching done
    es = _remove_forwarder_file(unhandled_events())
    if len(es) > 0:
        logging.info(u"update cache for: {}".format(es))
        cache_all()
        flush_unhandled_events()
Esempio n. 2
0
def test_system_file_event(fxdocker):
    flush_unhandled_events()

    ret = check_output(['docker', 'ps'])
    rport = re.search(r'.*:(\d+)->873.*', ret).groups()[0]
    path = os.path.expandvars('$WZDAT_DIR/tests')
    assert os.path.isdir(os.path.join(path, 'dummydata'))

    # sync all
    env['RSYNC_PASSWORD'] = '******'

    def sync(locals, delete=False):
        _cmd = ['rsync']
        if delete:
            _cmd.append('--delete')
        for l in locals:
            cmd = _cmd + ['-azv', 'dummydata/{}'.format(l),
                          '--port={}'.format(rport),
                          'rsync-user@{}::rsync-data/test'.format(host)]
            ret = check_output(cmd, env=env, cwd=path)
            assert 'sent ' in ret
            time.sleep(3)  # wait for all events registered

    sync(('kr', 'us', 'jp'))
    assert 567 == len(unhandled_events())  # logs, exlogs, dumps

    # modify & sync
    flush_unhandled_events()
    fpath = os.path.join(path, 'dummydata/kr/node-1/game_2014-02-24 01.log')
    with open(fpath, 'at') as f:
        f.write('---')
    sync(['kr'])
    uevs = unhandled_events()[0]
    rv = eval(uevs)
    assert rv[1] == 'FILE_MOVE_TO'
    assert 'game_2014-02-24 01.log' in rv[2]

    # delete & sync
    flush_unhandled_events()
    os.remove(fpath)
    sync(['kr'], True)
    uevs = unhandled_events()[0]
    rv = eval(uevs)
    assert rv[1] == 'FILE_DELETE'
    assert 'game_2014-02-24 01.log' in rv[2]
Esempio n. 3
0
def db():
    flush_unhandled_events()
    yield