Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/bbriggs/bitbot
A golang IRC bot
https://github.com/bbriggs/bitbot
Last synced: about 1 month ago
JSON representation
A golang IRC bot
- Host: GitHub
- URL: https://github.com/bbriggs/bitbot
- Owner: bbriggs
- License: mit
- Created: 2018-08-30T02:03:50.000Z (about 6 years ago)
- Default Branch: dev
- Last Pushed: 2023-10-11T22:09:55.000Z (about 1 year ago)
- Last Synced: 2024-10-03T09:53:16.790Z (about 2 months ago)
- Language: Go
- Size: 5.54 MB
- Stars: 13
- Watchers: 7
- Forks: 15
- Open Issues: 17
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Codeowners: .github/CODEOWNERS
- Authors: AUTHORS.md
Awesome Lists containing this project
README
# Bitbot
A minimal IRC bot that was built for me, not you.
### Installation
#### Direct install
`go get github.com/bbriggs/bitbot && go install github.com/bbriggs/bitbot`#### Docker
`docker run --rm -it bbriggs/bitbot --help`
_note_: For persistent data you may want to mount a volume to `/tmp` or whatever path you specify for the embedded DB. For certain plugins to load, bitbot expects a postgres DB.
Also remember that if you're running in Docker, your Prometheus bind address must be 0.0.0.0 + some port and you must publish that port using `-p`#### docker-compose
See the [example deployment](docker-compose.yml)
#### Helm
See the [helm chart](https://artifacthub.io/packages/helm/bbriggs/bitbot)
### Usage
```
A Golang IRC bot powered by HellabotUsage:
bitbot [flags]Flags:
-c, --channels strings channels to join
--config string config file (default is ./config.yaml)
--dbHost string Postgresql host
--dbName string Postgresql database name
--dbPass string Postgresql password
--dbPort string Postgresql port
--dbSSLMode string Postgresql SSL Mode
--dbUser string Postgresql user
--embedded-db string The path to the embedded DB
-h, --help help for bitbot
-n, --nick string nickname
--nickserv string nickserv password
--operPass string oper password
--operUser string oper username
--prom enable prometheus
--promAddr string Prometheus metrics address and port
-s, --server string target server
--ssl enable ssl
```All flags are also supported as config file parameters.
```yaml
---
server: "irc.secops.space:6697"
nickServ: "hunter2"
operUser: "your-oper-username"
operPass: "correct-horse-battery-staple"
channels:
- "#main"
- "#bots"
- "#bitbot"
nick: "bitbot"
ssl: "true"
prom: "true"
promAddr: "127.0.0.0.1:8080"
admins:
"[email protected]"
prom: "true"
promAddr: "0.0.0.0:8080"
dbuser: "bitbot"
dbpass: "bitbot"
dbhost: "127.0.0.1"
dbport: "5432"
dbsslmode: "disable"
# Plugins available to load are defined in cmd/bot.go
plugins:
- "roll"
- "skip"
- "info"
- "shrug"
- "urlReader"
```### Contributing
See our [contributing guide](CONTRIBUTING.md)
### License
Bitbot is available under the [MIT License](LICENSE)