vole
Clone
Read only, no credentials:
https://rodent.software/vole.git
Write over SSH with a registered key:
git clone ssh://git@rodent.software:2222/vole.git
A free and open-source forge that lives in your Git repo.
| 1 | #!/bin/sh |
| 2 | # Runs after install and after every upgrade, as root, for both .deb and .rpm. |
| 3 | # |
| 4 | # It creates the service account and prepares the instance the shipped config |
| 5 | # names. It does not create an administrator or start the service: on Debian the |
| 6 | # package manager starts enabled units itself, and on RHEL the unit is not enabled |
| 7 | # until an operator does it. Either way, who may administer the instance is the |
| 8 | # operator's decision, not the package's. |
| 9 | set -e |
| 10 | |
| 11 | if ! getent group vole >/dev/null 2>&1; then |
| 12 | groupadd --system vole |
| 13 | fi |
| 14 | if ! getent passwd vole >/dev/null 2>&1; then |
| 15 | useradd --system --gid vole --home-dir /var/lib/vole --no-create-home \ |
| 16 | --shell /usr/sbin/nologin --comment "Vole software forge" vole |
| 17 | fi |
| 18 | |
| 19 | install -d -o vole -g vole -m 0750 /var/lib/vole |
| 20 | |
| 21 | # Init is idempotent: it leaves an existing config, repository tree, and database |
| 22 | # alone. Running it as the service account keeps the data it creates writable by |
| 23 | # the service, and a failed upgrade never leaves root-owned state behind. |
| 24 | su -s /bin/sh vole -c 'umask 0027; /usr/bin/vole admin init --config /etc/vole/vole.toml' </dev/null |
| 25 | |
| 26 | exit 0 |
| 27 |