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(...)
```
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
Built Distribution
Close
Hashes for nautilus_registry-0.1.7-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | afa106e52584f0f3a7f23b2ed38c9f0867fea83e9cc0dd81cdfddde597cddbab |
|
MD5 | 513cba45c454b977242d45ecf155474a |
|
BLAKE2b-256 | 1b9643564e7162f5817d9f3c9fd5ceac6c7e6797186744648b5f8ad4c72bf116 |