grim/hgkeeper

21e7408ca1a0
Add `go 1.11` to the bottom of go.mod and run `go mod tidy`
# hgkeeper
hgkeeper is an server for [mercurial](https://www.mercurial-scm.org/)
repositories. It provides access control for SSH access.
# License
hgkeeper is licensed under the GNU AFFERO GENERAL PUBLIC LICENSE version 3.
# Status
This project is brand new and not even functional yet... But if you're
interested in helping, please do!!
# Usage
hgkeeper has a couple modes of operation but `serve` is the main mode.
## setup
The `setup` command is used to bootstrap hgkeeper. It will create the
directory for the repositores, the hgkeeper repository, and create an initial
`access.yml`.
## serve
The `serve` command is the main mode of operation which is to provide access to
the repositories.
# Access Control
Access control is defined in the `hgkeeper` repository that is created via the
`hgkeeper setup` command. It is implemented via [casbin](https://casbin.org)
using the RBAC with deny-override model as a base. More information can be
found in the [files](setup/resources/) that are placed in the `hgkeeper`
repository.