https://github.com/emersion/hottub
A CI bridge from GitHub to SourceHut
https://github.com/emersion/hottub
Last synced: about 1 year ago
JSON representation
A CI bridge from GitHub to SourceHut
- Host: GitHub
- URL: https://github.com/emersion/hottub
- Owner: emersion
- License: agpl-3.0
- Created: 2025-03-15T11:18:22.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2025-03-15T11:29:43.000Z (over 1 year ago)
- Last Synced: 2025-05-06T15:18:22.390Z (about 1 year ago)
- Language: Go
- Homepage:
- Size: 134 KB
- Stars: 5
- Watchers: 1
- Forks: 0
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# hottub
A CI bridge from GitHub to SourceHut.
A [public instance] is available.
## Building
go build
## Installation
1. Follow the [GitHub guide] to register an app suitable for the Checks API:
- Open the [Register a new app](https://github.com/settings/apps/new) page
- Set a name and homepage URL
- Leave the callback URL empty
- Set the setup URL to `https:///post-install`
- Set the webhook URL to `https:///webhook`
- In *Repository permissions*, select:
- Checks: Read and write
- Commit statuses: Read and write
- Contents: Read-only
- Metadata: Read-only
- Pull requests: Read-only
- In *Subscribe to events*, check:
- Check run
- Check suite
- Pull request
2. Grab the GitHub app ID and webhook secret (optional for local development).
Download a new PEM private key.
3. Start hottub:
hottub -gh-app-id -gh-private-key -gh-webhook-secret
Optionally, to improve the authorization flow, you can [register an sr.ht
OAuth2 client] (setting the Redirection URI to
`https:///authorize-srht`) and pass its credentials with
`-metasrht-client-id` and `-metasrht-client-secret`.
## License
AGPLv3, see LICENSE.
Copyright (C) 2022 Simon Ser
[GitHub guide]: https://docs.github.com/en/developers/apps/guides/creating-ci-tests-with-the-checks-api
[register an sr.ht OAuth2 client]: https://meta.sr.ht/oauth2/client-registration
[public instance]: https://hottub.emersion.fr/