Skip to main content

Hopeit Apps Client Plugin

Project description

# hopeit.engine apps-client plugin


This library is part of hopeit.engine:

> check: https://github.com/hopeit-git/hopeit.engine


### Install using hopeit.engine extras [apps-client]:

```
pip install hopeit.engine[apps-client]
```

### Config app_connection section in your app to use this client implementation:

Configre a connection in `app_connections` section and specify which events to invoke
inside `event.connections` section:

```
...
"app_connections": {
"target-app-conn": {
"name": "target-app",
"version": "1.0",
"client": "hopeit.apps_client.AppsClient"
}
},
...

"events": {
"my-event": {
...
"connections": [
{
"app_connection": "target-app-conn",
"event": "target-event",
"type": "GET"
}
],
...
}
}
```

To configure `apps-client` add a settings section like this to app config file:
```
...

"settings": {
"simple_example_conn": {
"connection_str": "http://host1,http://host2"
}
}

```

The only required setting is `connection_str` but many other values can be configured:

```
...

"settings": {
"simple_example_conn": {
"connection_str": "${HOPEIT_SIMPLE_EXAMPLE_HOSTS}",
"circuit_breaker_open_failures": 10,
"circuit_breaker_failure_reset_seconds": 90.0,
"circuit_breaker_open_seconds": 60.0,
"retries": 2,
"retry_backoff_ms": 10,
"ssl": true,
"max_connections": 100,
"max_connections_per_host": 0,
"dns_cache_ttl": 10,
"routes_override": {
"__list-somethings": "simple-example/${HOPEIT_APPS_ROUTE_VERSION}/list-somethings"
}
}
}
```

### Usage

Invoking target-app target-event from your application code:

```
from hopeit.app.client import app_call

...

def my_event(payload: ..., context: EventContext) -> ...:
response = await app_call(
"target-app-conn", event="target-event",
datatype=ResposeDataType, payload=..., context=context
)
...

```

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

hopeit_apps_client-0.25.4.tar.gz (9.0 kB view details)

Uploaded Source

Built Distribution

hopeit.apps_client-0.25.4-py3-none-any.whl (7.7 kB view details)

Uploaded Python 3

File details

Details for the file hopeit_apps_client-0.25.4.tar.gz.

File metadata

  • Download URL: hopeit_apps_client-0.25.4.tar.gz
  • Upload date:
  • Size: 9.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for hopeit_apps_client-0.25.4.tar.gz
Algorithm Hash digest
SHA256 d8bfe9c7a1fce8b9e368c95bdf57ce284c402be1c9af41f026378ba4db6b9f5f
MD5 5d53e1b8f6d5993de6a4c28a73aa81d6
BLAKE2b-256 812ee3266ad48e7254706c8e39be06f8e0c06025358dd3b8faf5ef312540636b

See more details on using hashes here.

File details

Details for the file hopeit.apps_client-0.25.4-py3-none-any.whl.

File metadata

File hashes

Hashes for hopeit.apps_client-0.25.4-py3-none-any.whl
Algorithm Hash digest
SHA256 b53ade2b66a433f38d28454ad2f7f0f57c3b201a1643584a64d900522624e5fd
MD5 7f32e412aa999b47b8939aa6d0c56bea
BLAKE2b-256 75e7e3915977d345bf3e071a48ee4f6d6681a496f9c360a5e46c3037c57c25d5

See more details on using hashes here.

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