Example #1
0
    def __init__(self, socket_file, app, **kwargs):

        self.app = app
        self.factory = HealthCheckFactory(app)

        UNIXServer.__init__(self,
                            address=socket_file,
                            factory=self.factory,
                            **kwargs)
Example #2
0
    def __init__(self, socket_file, namespace):

        self.namespace = namespace
        self.factory = protocol.ServerFactory()
        self.factory.protocol = self._buildProtocol

        UNIXServer.__init__(
            self,
            address=socket_file,
            factory=self.factory,
            mode=0600,
            wantPID=1,
        )
Example #3
0
File: app.py Project: xdrew/twoost
def build_manhole(app, namespace=None):

    if not settings.DEBUG:
        logger.debug("don't create manhole server - production mode")
        return

    import twisted
    from twoost.manhole import AnonymousShellFactory
    from twisted.application.internet import UNIXServer

    workerid = app.workerid
    socket_file = os.path.join(settings.MANHOLE_SOCKET_DIR, workerid)
    mkdir_p(os.path.dirname(socket_file))

    namespace = dict(namespace or {})
    if not namespace:
        namespace.update({
            'twisted': twisted,
            'app': app,
            'settings': settings,
        })
    f = AnonymousShellFactory(namespace)

    logger.info("serve shell on %r socket", socket_file)

    # only '0600' mode allowed here!
    ss = UNIXServer(address=socket_file, factory=f, mode=0600, wantPID=1)

    return attach_service(app, ss)
    def makeService(self, options):

        service = MultiService()

        contextFactory = DefaultOpenSSLContextFactory(options["key"], options["certificate"])
        apnsFactory = APNSClientFactory()
        apnsService = SSLClient(options["apns-host"], int(options["apns-port"]), apnsFactory, contextFactory)
        apnsService.setServiceParent(service)

        database = RegistrationDatabase(options["database"])
        topicName = parseTopicFromCertificate(options["certificate"])

        xapsService = UNIXServer(options["socket"], XAPSFactory(database, topicName, apnsFactory))
        xapsService.setServiceParent(service)

        return service
Example #5
0
    def makeService(self, options):

        service = MultiService()

        contextFactory = DefaultOpenSSLContextFactory(options["key"],
                                                      options["certificate"])
        apnsFactory = APNSClientFactory()
        apnsService = SSLClient(options["apns-host"],
                                int(options["apns-port"]), apnsFactory,
                                contextFactory)
        apnsService.setServiceParent(service)

        database = RegistrationDatabase(options["database"])
        topicName = parseTopicFromCertificate(options["certificate"])

        xapsService = UNIXServer(options["socket"],
                                 XAPSFactory(database, topicName, apnsFactory))
        xapsService.setServiceParent(service)

        return service
Example #6
0
File: app.py Project: xdrew/twoost
def build_health(app):

    from twoost.health import HealthCheckFactory
    from twisted.application.internet import UNIXServer

    mode = settings.HEALTHCHECK_SOCKET_MODE
    workerid = app.workerid
    socket_file = os.path.join(settings.HEALTHCHECK_SOCKET_DIR, workerid)
    mkdir_p(os.path.dirname(socket_file))

    fct = HealthCheckFactory(app)

    logger.debug("serve health checker on %r socket", socket_file)
    ss = UNIXServer(address=socket_file, factory=fct, mode=mode, wantPID=1)

    return attach_service(app, ss)
Example #7
0
 def __init__(self, parent, socket):
     self.parent = parent
     if os.path.exists(socket):
         os.remove(socket)
     factory = UserServerFactory(parent)
     UNIXServer.__init__(self, socket, factory, mode=parent.config.get_umask('sock'))