60 lines
1.8 KiB
Python
Executable File
60 lines
1.8 KiB
Python
Executable File
#!/usr/bin/env python
|
|
# -*- coding: utf-8 -*-
|
|
#
|
|
# Copyright 2010 Maurizio Porrato <maurizio.porrato@gmail.com>
|
|
# See LICENSE.txt for copyright info
|
|
|
|
from twisted.internet import reactor
|
|
from frn.protocol.server import FRNServer, FRNServerFactory
|
|
from twisted.enterprise.adbapi import ConnectionPool
|
|
from frn.manager.remote import RemoteManager
|
|
from frn.manager.dummy import DummyManager
|
|
from frn.user import FRNUser
|
|
from twisted.python import log
|
|
|
|
if __name__ == '__main__':
|
|
import sys
|
|
from os.path import dirname, join as pjoin
|
|
from ConfigParser import ConfigParser
|
|
|
|
log.startLogging(sys.stderr)
|
|
|
|
basedir = dirname(__file__)
|
|
|
|
acfg = ConfigParser()
|
|
acfg.read(['/etc/grn/accounts.conf',
|
|
pjoin(basedir,'accounts.conf'), 'accounts.conf'])
|
|
|
|
scfg = ConfigParser()
|
|
scfg.read(['/etc/grn/servers.conf',
|
|
pjoin(basedir,'servers.conf'), 'servers.conf'])
|
|
|
|
argc = len(sys.argv)
|
|
|
|
if argc >= 3:
|
|
account_name = sys.argv[1]
|
|
server_name = sys.argv[2]
|
|
|
|
server = scfg.get(server_name, 'server')
|
|
port = scfg.getint(server_name, 'port')
|
|
backup_server = scfg.get(server_name, 'backup_server')
|
|
backup_port = scfg.getint(server_name, 'backup_port')
|
|
owner = acfg.get(account_name, 'email')
|
|
password = acfg.get(account_name, 'password')
|
|
|
|
reactor.listenTCP(10024, FRNServerFactory(
|
|
pjoin(basedir, 'tracker.shelve'),
|
|
# DatabaseUserStore(
|
|
# ConnectionPool("sqlite3", "frn_users.sqlite3",
|
|
# check_same_thread=False)),
|
|
RemoteManager(reactor),
|
|
# DummyManager(),
|
|
FRNUser(
|
|
SN=server,PT=port,
|
|
BN=backup_server, BP=backup_port,
|
|
OW=owner,PW=password)
|
|
))
|
|
reactor.run()
|
|
|
|
# vim: set et ai sw=4 ts=4 sts=4:
|