diff options
Diffstat (limited to 'tasks/initial-user-setup')
-rw-r--r-- | tasks/initial-user-setup | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/tasks/initial-user-setup b/tasks/initial-user-setup new file mode 100644 index 0000000..fb402bb --- /dev/null +++ b/tasks/initial-user-setup @@ -0,0 +1,53 @@ +#!/bin/bash + +function task_exec() { + source /etc/os-release + case $ID in + arch) + pacman -Sy + INSTALL_CMD="pacman --noconfirm -S";; + debian) + apt update + INSTALL_CMD="apt-get install -y" + esac + + PACKAGES="sudo vim git" + [ ! -z "$INSTALL_CMD" ] && $INSTALL_CMD $PACKAGES + + groupadd sudo + useradd -s /bin/bash -d /home/server -m -U -G sudo server + + tee /etc/sudoers.d/autosetup_sudoconf << EOF +# Configured by lTask +%sudo ALL=(ALL) NOPASSWD: ALL +EOF + su server << EOF +cd +mkdir .ssh; cd .ssh +touch authorized_keys +EOF + + cat id_user.pub >> /home/server/.ssh/authorized_keys + cat id_jenkins.pub >> /home/server/.ssh/authorized_keys + + echo > /etc/motd +} + +function task_setup() { + # Available environment variables + # $ASSET_DIR + # $TOOL_DIR + + SSH_USER=root + #SSH_IDENTITY_FILE=$ASSET_DIR/id_jenkins + + FILES+=("$ASSET_DIR/id_user.pub" "$ASSET_DIR/id_jenkins.pub") + + TASK_ISSET="yes" +} + +if [ -z $HOSTMODE ]; then + task_exec +else + task_setup +fi |