Update README
All checks were successful
CI / CI (push) Successful in 3m54s

This commit is contained in:
2025-07-30 01:02:19 -07:00
parent ffd977b6d5
commit 02837b00fe

View File

@@ -11,11 +11,17 @@ Currently-supported Gitlab event types:
* Merge request events
* Pipeline events (only publishes on failure for now)
It can also watch for new messages in a mailing list (assuming that
mailing list is tracked by [The Mail
Archive](https://mail-archive.com/)), and publish notifications of new
messages to Matrix.
## Building
Bebot is written in Rust, and requires a Rust toolchain in order to
build. The usual `cargo build` or `cargo build --release` will do the
trick.
build. I'm actually not sure what Bebot's MSRV is, but as of this
writing, 1.72 worked. The usual `cargo build` or `cargo build
--release` will do the trick.
You can also build and install the latest released version of Bebot by
running `cargo install bebot`.
@@ -26,6 +32,8 @@ Bebot requires a configuration file in YAML format. See
`sample-config.yaml` for all existing configuration options, as well as
documentation on what each option does.
### Gitlab Hooks
When setting up the webhook in Gitlab, use the same `token` from the
configuration file in the webhook's "Secret token" field. You should
only select "Push events", "Tag push events", "Issues events", "Merge
@@ -42,6 +50,18 @@ output to stdout a YAML snippet that goes under the `repo_configs`
section of the configuration file. If you run the script with no
arguments, it will print out usage details.
### `mail-archive.com`
If you want Bebot to publish a Matrix message when a new email hits one
of your configured mailing lists, you need to provide a directory for
Bebot to store state, so it can keep track of what emails it has already
sent a Matrix message for. Otherwise, it will re-publish messages every
time you restart Bebot.
Remember that if you are running Bebot in a Docker container, you'll
need to mount a volume to store state so it persists across container
restarts and upgrades.
## Running
After you've done all that, simply run Bebot:
@@ -57,7 +77,18 @@ logging verbosity. (Try `debug`, `info`, `warn` `error`, or `off`.)
A `Dockerfile` is also provided. When running the container it builds,
mount the configuration file so it appears inside the container as
`/bebot/config/bebot.yaml`.
`/bebot/config/bebot.yaml`. If you are publishing from
`mail-archive.com`, also remember to mount a state storage directory or
volume wherever you've specified in the configuration file.
Release images are [published to Docker
Hub](https://hub.docker.com/r/kelnos/bebot).
## Contributing
I currently host Bebot on my [private Gitea
server](https://git.spurint.org/brian/bebot). Since I don't want to
deal with spam, I don't enable user registrations. If you'd like to
submit issues and/or merge requests, please [message me on
Matrix](https://matrix.to/#/@brian:tarricone.org) with your email
address and preferred username, and I'll create an account for you.