diff options
Diffstat (limited to 'init')
| -rwxr-xr-x | init | 44 |
1 files changed, 0 insertions, 44 deletions
@@ -1,44 +0,0 @@ -#!/usr/bin/env fish - -argparse 'u/users=+' 'r/repos=+' -- $argv -or exit 1; - -# create users and copy keys in correct location, set permissions -for user in (string split ',' $_flag_u) - echo "Setting up user: $user" - set -l HOME "/home/$user" - adduser --home $HOME -D "$user" - mkdir "$HOME/.ssh" - cp "/var/keys/$user/authorized_keys" "$HOME/.ssh/" - chown -R $user "$HOME" - chmod -R 700 "$HOME" -end - -for repoConfig in (string split ',' $_flag_r) - set -l parsedConfig (string split ':' $repoConfig) - set -l repo $parsedConfig[1] - - # we assume all repos to be in /srv/repos - set -l repoDir "/srv/repos/$repo" - echo "Setting up repo: $repo" - addgroup "$repo" - - # assign groups to user - for user in $parsedConfig[2..] - adduser "$user" "$repo" - id "$user" - end - - # setup repo dir - if not test -d $repoDir - mkdir -p $repoDir - git init --bare $repoDir -b trunk - end - chgrp -R "$repo" "$repoDir" -end - -echo "Setting up server" -# generate host keys in case -mkdir -p /var/keys/etc/ssh/ && ssh-keygen -A -f /var/keys -# run ssh daemon -/usr/sbin/sshd -D -e |
