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.

Files for nautilus-registry, version 0.1.7
Filename, size File type Python version Upload date Hashes
Filename, size nautilus_registry-0.1.7-py3-none-any.whl (19.9 kB) File type Wheel Python version py3 Upload date Hashes View hashes
Filename, size nautilus-registry-0.1.7.tar.gz (7.7 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page