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
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file nautilus-registry-0.1.7.tar.gz.
File metadata
- Download URL: nautilus-registry-0.1.7.tar.gz
- Upload date:
- Size: 7.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c0a63b5ee96f9ca4dc5bce9117ab2bd9764c676ea762f68fcf4135237b51d3aa
|
|
| MD5 |
1885a5d9eec8b74e6e4c4a11f00d53e1
|
|
| BLAKE2b-256 |
33794aef2c47c63eadd4c5d3c8b8e21d32e0d64a2420f28f7d842ff6bc7fe188
|
File details
Details for the file nautilus_registry-0.1.7-py3-none-any.whl.
File metadata
- Download URL: nautilus_registry-0.1.7-py3-none-any.whl
- Upload date:
- Size: 19.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
afa106e52584f0f3a7f23b2ed38c9f0867fea83e9cc0dd81cdfddde597cddbab
|
|
| MD5 |
513cba45c454b977242d45ecf155474a
|
|
| BLAKE2b-256 |
1b9643564e7162f5817d9f3c9fd5ceac6c7e6797186744648b5f8ad4c72bf116
|