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.
|
3b39a84c
Keenan Nemetz
14d ago
|
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 |