Roboherd
Roboherd is a framework for building Fediverse bots using the Cattle Drive Protocol.
For more information, see the documentation or the repository.
Developping with cattle_grid
In your catle_grid config directory add a roboherd user, e.g.
a file testing.toml with content
[testing]
enable = true
[[testing.accounts]]
name = "herd"
password = "pass"
permissions = ["admin"]
Configure roboherd via roboherd.toml, e.g.
base_url = "http://abel"
connection_string = "ws://herd:pass@localhost:3000/ws/"
[cow.rooster]
bot = "roboherd.examples.rooster:bot"
This will trigger a periodic message to cattle_grid.
nginx for cattle_grid
The nginx in the cattle_grid configuration should forward the path /ws/ to
rabbitmq (supporting mqtt over websockets)
server {
listen 80;
location /ws/ {
proxy_pass http://rabbitmq:15675;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
proxy_read_timeout 86400; # neccessary to avoid websocket timeout disconnect
proxy_send_timeout 86400; # neccessary to avoid websocket timeout disconnect
proxy_redirect off;
proxy_buffering off;
}
}
similarly nginx should forward port 80 to 3000 (in the docker compose file).
BDD Tests
Start the pasture currently from containers. Run a runner container via
docker run --rm -it -e UV_PROJECT_ENVIRONMENT=/tmp/venv\
-v .:/app --workdir /app\
--network fediverse-pasture\
ghcr.io/astral-sh/uv:alpine /bin/sh
Then run
uv sync --group bdd
uv run behave
Metadata
Release files for roboherd 0.1.14
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| roboherd-0.1.14.tar.gz | 344.6 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| roboherd-0.1.14-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 376.1 kB
Release files / roboherd-0.1.14.tar.gz
| Download URL | roboherd-0.1.14.tar.gz |
|---|---|
| Size | 344.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
160e7edf83769988af7d9951df27f6625e7101c02d74cca932f576ed2da87362
|
|
BLAKE2b-256 checksum How to use checksums |
2a1e5796d22091a2373ead5fefcaf6867d121ae2d6c156b011e2374a85e2d41d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.9.5
|
Release files / roboherd-0.1.14-py3-none-any.whl
| Download URL | roboherd-0.1.14-py3-none-any.whl |
|---|---|
| Size | 31.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d1c6bc20101f2c6888bbd3544b3340db6fcf772a691e88f8c2809794c280276b
|
|
BLAKE2b-256 checksum How to use checksums |
0113a183476afa31c83cb60aa41f907b5f628ea57205002137cdfaa58f670d9b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.9.5
|
Security for roboherd 0.1.14
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.