Sync branch magefile with main #104308
@ -18,10 +18,12 @@ This is an example `flamenco-manager.yaml` file:
|
|||||||
```yaml
|
```yaml
|
||||||
_meta:
|
_meta:
|
||||||
version: 3
|
version: 3
|
||||||
|
|
||||||
manager_name: Flamenco Manager
|
manager_name: Flamenco Manager
|
||||||
database: flamenco-manager.sqlite
|
database: flamenco-manager.sqlite
|
||||||
listen: :8080
|
listen: :8080
|
||||||
autodiscoverable: true
|
autodiscoverable: true
|
||||||
|
|
||||||
local_manager_storage_path: ./flamenco-manager-storage
|
local_manager_storage_path: ./flamenco-manager-storage
|
||||||
shared_storage_path: /path/to/storage
|
shared_storage_path: /path/to/storage
|
||||||
shaman:
|
shaman:
|
||||||
@ -30,10 +32,12 @@ shaman:
|
|||||||
period: 24h0m0s
|
period: 24h0m0s
|
||||||
maxAge: 744h0m0s
|
maxAge: 744h0m0s
|
||||||
extraCheckoutPaths: []
|
extraCheckoutPaths: []
|
||||||
|
|
||||||
task_timeout: 10m0s
|
task_timeout: 10m0s
|
||||||
worker_timeout: 1m0s
|
worker_timeout: 1m0s
|
||||||
blocklist_threshold: 3
|
blocklist_threshold: 3
|
||||||
task_fail_after_softfail_count: 3
|
task_fail_after_softfail_count: 3
|
||||||
|
|
||||||
variables:
|
variables:
|
||||||
blender:
|
blender:
|
||||||
values:
|
values:
|
||||||
@ -47,9 +51,26 @@ variables:
|
|||||||
values:
|
values:
|
||||||
- platform: all
|
- platform: all
|
||||||
value: -b -y
|
value: -b -y
|
||||||
|
|
||||||
|
mqtt: # See 'MQTT Configuration' below.
|
||||||
|
client:
|
||||||
|
broker: "tcp://mqttserver.local:1883"
|
||||||
|
username: "username"
|
||||||
|
password: "your-password-here"
|
||||||
|
topic_prefix: flamenco
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
The usual way to create a configuration file is simply by starting Flamenco
|
The usual way to create a configuration file is simply by starting Flamenco
|
||||||
Manager. If there is no config file yet, it will start the setup assistant to
|
Manager. If there is no config file yet, it will start the setup assistant to
|
||||||
create one. If for any reasons the setup assistant is not usable for you, you
|
create one. If for any reasons the setup assistant is not usable for you, you
|
||||||
can use the above example to create `flamenco-manager.yaml` yourself.
|
can use the above example to create `flamenco-manager.yaml` yourself.
|
||||||
|
|
||||||
|
## MQTT Configuration
|
||||||
|
|
||||||
|
The `mqtt` section is completely optional. If you do not know what it's for, just leave it out.
|
||||||
|
|
||||||
|
For more information about the built-in MQTT client, see
|
||||||
|
[Manager Configuration: MQTT][mqtt].
|
||||||
|
|
||||||
|
[mqtt]: {{< ref "usage/manager-configuration/mqtt.md" >}}
|
||||||
|
@ -0,0 +1,66 @@
|
|||||||
|
---
|
||||||
|
title: "Manager Configuration: MQTT"
|
||||||
|
titleTOC: MQTT
|
||||||
|
---
|
||||||
|
|
||||||
|
Flamenco Manager can send its internal events to an [MQTT][mqtt] broker. Other
|
||||||
|
MQTT clients can listen to those events, in order to respond to what happens on
|
||||||
|
the render farm.
|
||||||
|
|
||||||
|
[mqtt]: https://en.wikipedia.org/wiki/MQTT
|
||||||
|
|
||||||
|
*MQTT support was introduced in Flamenco 3.5.*
|
||||||
|
|
||||||
|
## Configuration
|
||||||
|
|
||||||
|
To enable MQTT functionality, place a section like this in your
|
||||||
|
`flamenco-manager.yaml` file and restart Flamenco Manager:
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
mqtt:
|
||||||
|
client:
|
||||||
|
broker: "tcp://mqttserver.local:1883"
|
||||||
|
username: "username"
|
||||||
|
password: "your-password-here"
|
||||||
|
topic_prefix: flamenco
|
||||||
|
```
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<style>
|
||||||
|
.gdoc-markdown dl dt {
|
||||||
|
margin-top: 0.1rem;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
||||||
|
`broker`
|
||||||
|
: The URL of the MQTT Broker. Supports `tcp://` and `ws://` URLs.
|
||||||
|
|
||||||
|
`username` & `password`
|
||||||
|
: The credentials used to connect to the MQTT Broker. For anonymous access, just
|
||||||
|
remove those two keys.
|
||||||
|
|
||||||
|
`topic_prefix`
|
||||||
|
: Topic prefix for the MQTT events sent to the broker. Defaults to `flamenco`.
|
||||||
|
For example, job updates are sent to the `flamenco/jobs` topic.
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
## MQTT Topics
|
||||||
|
|
||||||
|
The following topics will be used by Flamenco:
|
||||||
|
|
||||||
|
| Description | MQTT topic | JSON event payload |
|
||||||
|
|----------------------------------|----------------------------------|---------------------------|
|
||||||
|
| Manager startup/shutdown | `/lifecycle` | `EventLifeCycle` |
|
||||||
|
| Farm status | `/status` | `EventFarmStatus` |
|
||||||
|
| Job update | `/jobs` | `EventJobUpdate` |
|
||||||
|
| Task update | `/jobs/{job UUID}` | `EventTaskUpdate` |
|
||||||
|
| Worker update | `/workers` | `EventWorkerUpdate` |
|
||||||
|
| Worker Tag update | `/workertags` | `EventWorkerTagUpdate` |
|
||||||
|
| Last rendered image | `/last-rendered` | `EventLastRenderedUpdate` |
|
||||||
|
| Job-specific last rendered image | `/jobs/{job UUID}/last-rendered` | `EventLastRenderedUpdate` |
|
||||||
|
|
||||||
|
For the specification of the JSON sent in the MQTT events, use the above table
|
||||||
|
and then look up the type description in the [OpenAPI specification][oapi].
|
||||||
|
|
||||||
|
[oapi]: https://projects.blender.org/studio/flamenco/src/branch/main/pkg/api/flamenco-openapi.yaml
|
Loading…
Reference in New Issue
Block a user