Beispiel #1
0
def start_up():
    #Common Resource(s)
    versions = VersionResource()

    #Datastore adapter/session manager
    datastore = datasource_handler(COORDINATOR_DB)

    #Coordinator Resources
    worker_registration = WorkerRegistrationResource(datastore)
    workers_status = WorkersStatusResource(datastore)
    worker_status = WorkerStatusResource(datastore)

    #Tenant Resources
    tenant = TenantResource(datastore)
    user = UserResource(datastore)
    event_producers = EventProducersResource(datastore)
    event_producer = EventProducerResource(datastore)
    token = TokenResource(datastore)

    # Create API
    application = api = falcon.API()

    # Common Routing
    api.add_route('/', versions)

    # Coordinator Routing
    api.add_route('/v1/pairing', worker_registration)

    api.add_route('/v1/worker/{worker_id}/status', worker_status)
    api.add_route('/v1/status', workers_status)

    # Tenant Routing
    api.add_route('/v1/tenant', tenant)
    api.add_route('/v1/tenant/{tenant_id}', user)
    api.add_route('/v1/tenant/{tenant_id}/producers', event_producers)
    api.add_route('/v1/tenant/{tenant_id}/producers/{event_producer_id}',
                  event_producer)

    api.add_route('/v1/tenant/{tenant_id}/token', token)

    return application
Beispiel #2
0
def start_up():
    #Common Resource(s)
    versions = VersionResource()

    #Datastore adapter/session manager
    datastore = datasource_handler(COORDINATOR_DB)

    #Tenant Resources
    tenant = TenantResource(datastore)
    user = UserResource(datastore)
    event_producers = EventProducersResource(datastore)
    event_producer = EventProducerResource(datastore)
    token = TokenResource(datastore)

    # Create API
    application = api = falcon.API()

    # Version Routing
    api.add_route('/', versions)

    # Tenant Routing
    api.add_route('/v1/tenant', tenant)
    api.add_route('/v1/tenant/{tenant_id}', user)
    api.add_route('/v1/tenant/{tenant_id}/producers', event_producers)
    api.add_route('/v1/tenant/{tenant_id}/producers/{event_producer_id}',
                  event_producer)
    api.add_route('/v1/tenant/{tenant_id}/token', token)

    celery.conf.CELERYBEAT_SCHEDULE = {
        'worker_stats': {
            'task': 'stats.publish',
            'schedule': timedelta(seconds=publish_stats.WORKER_STATUS_INTERVAL)
        },
    }

    #include blank argument to celery in order for beat to start correctly
    celery_proc = Process(target=celery.worker_main, args=[['', '--beat']])
    celery_proc.start()
    _LOG.info('Celery started as process: {}'.format(celery_proc.pid))

    return application
Beispiel #3
0
def start_up():
    #Common Resource(s)
    versions = VersionResource()

    #Coordinator Resources
    workers_status = WorkersStatusResource()
    worker_status = WorkerStatusResource()

    #Tenant Resources
    tenant = TenantResource()
    user = UserResource()
    event_producers = EventProducersResource()
    event_producer = EventProducerResource()
    token = TokenResource()

    # Create API
    application = api = falcon.API()

    # Common Routing
    api.add_route('/', versions)

    api.add_route('/v1/worker/{hostname}/status', worker_status)
    api.add_route('/v1/status', workers_status)

    # Tenant Routing
    api.add_route('/v1/tenant', tenant)
    api.add_route('/v1/tenant/{tenant_id}', user)
    api.add_route('/v1/tenant/{tenant_id}/producers', event_producers)
    api.add_route('/v1/tenant/{tenant_id}/producers/{event_producer_id}',
                  event_producer)

    api.add_route('/v1/tenant/{tenant_id}/token', token)

    celery_proc = Process(target=celery.worker_main)
    celery_proc.start()
    _LOG.info('Celery started as process: {}'.format(celery_proc.pid))

    return application
Beispiel #4
0
log.setup('meniscus')
_LOG = env.get_logger(__name__)

#Common Resource(s)
versions = VersionResource()

#Coordinator Resources
db_handler = datasource_handler(COORDINATOR_DB)
worker_registration = WorkerRegistrationResource(db_handler)
workers_status = WorkersStatusResource(db_handler)
worker_status = WorkerStatusResource(db_handler)

#Tenant Resources
tenant = TenantResource(db_handler)
user = UserResource(db_handler)
event_producers = EventProducersResource(db_handler)
event_producer = EventProducerResource(db_handler)
token = TokenResource(db_handler)

# Create API
application = api = falcon.API()

# Common Routing
api.add_route('/', versions)

# Coordinator Routing
api.add_route('/v1/pairing', worker_registration)

api.add_route('/v1/worker/{worker_id}/status', worker_status)
api.add_route('/v1/status', workers_status)
Beispiel #5
0
 def _set_resource(self):
     self.resource = UserResource(self.db_handler)
     self.test_route = '/v1/tenant/{tenant_id}'
     self.api.add_route(self.test_route, self.resource)