Middleware for the Fediverse
Project description
cattle_grid
THIS README needs to be updated for cattle_grid 0.2.0
cattle_grid is meant to simplify handling authentication in server to server communication of the Fediverse. cattle_grid checks the HTTP signatures based on the headers. For this public keys are retrieved and cached.
For installation instructions see the documentation.
Running
After creating a configuration file, one can run cattle_grid via
poetry run uvicorn cattle_grid:create_app
Development
One can run the pytest tests via
poetry install
poetry run pytest
Development with Fediverse pasture
In your Funfedi.dev directory (see here for details), run
cd fediverse-pasture
docker compose --file pasture.yml up pasture_verify_actor
Now in the cattle grid directory, run
poetry run python -mcattle_grid.config --actor_id http://cattle_grid/actor
to create a cattle_grid.toml file. Then start the docker containers via
docker compose up
By opening http://localhost:2909/?actor_uri=jskitten@cattle_grid_demo, you should then be able to view the verify actor result. By refreshing the page and inspecting the log files, you can also check that the requests only ran once.
Creating an user
By running
docker compose run runner
one can start a shell in the docker environment. By then running in it
curl abel/admin/create -X POST -F username=name -F password=secret
one can create the user with handle @name@abel.
Running GUI tests with the pasture
Start mastodon accessible through your browser
cd fediverse-pasture
docker compose --file mastodon42.yml --profile nginx up
See Fun Fediverse Development for instructions.
Then you can open mastodon42web and lookup jskitten@cattle_grid_demo.
When you send a message to this kitten, it should reply with a meow, e.g.
Project details
Release history Release notifications | RSS feed
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 cattle_grid-0.3.3.tar.gz.
File metadata
- Download URL: cattle_grid-0.3.3.tar.gz
- Upload date:
- Size: 316.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.5.25
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d507a5ef2228a1310a7de4f4a68f7c5f52760cf2915fe25f7d176939d9fd7537
|
|
| MD5 |
aa845fef17c0f5702b555e1977009f62
|
|
| BLAKE2b-256 |
15ebc527632408d2e30853b6e2222e3df9b047744bd180851084e0d588d5e723
|
File details
Details for the file cattle_grid-0.3.3-py3-none-any.whl.
File metadata
- Download URL: cattle_grid-0.3.3-py3-none-any.whl
- Upload date:
- Size: 160.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.5.25
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f6a95906840f2f5c465932f98a7fe6b0f17d5144f3f2a9401fed0a4bb5bcdb88
|
|
| MD5 |
3bd11b3606e198be41009c7cbc695ae0
|
|
| BLAKE2b-256 |
3647bfa5dcaed4980c0a06f899b12ecb3ca3b525c7dc02b2c67d7348659dc514
|