Skip to main content

A module for powering a nautilus application with a service registry.

Project description

# nautilus-registry
A module to support an "impure" nautilus architecture, taking advantage of a service registry

## Installing
`nautilus_registry` can be installed from pip:

```bash
pip install nautilus_registry
```


## Connecting a service to consul
Currently, `nautilus_registry` only supports consul and does so through a
service mixin:

```python
import nautilus
from nautilus_registry import RegisterMixin

class MyService(RegisterMixin, nautilus.Service):
# ...

```


This mixin registers the service with consul when the service starts and
handles the removal of the service from consul aswell.


## Referring to the registry in an API
Schemas that are executed from services with this mixin can access various utility functions through the context:

```python
class MyObjectType(graphene.ObjectType):

field = Field(...)

@graphene.with_content
@graphene.resolve_only_args
def resolve_field(self, context=None):
# query the api for some data
data = context.service.query_api(...)
```

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nautilus-registry-0.1.7.tar.gz (7.7 kB view hashes)

Uploaded Source

Built Distribution

nautilus_registry-0.1.7-py3-none-any.whl (19.9 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page