bolt/vm_automation/alpine/tasks/install_packages.sh

28 lines
1.2 KiB
Bash

#!/bin/bash
# Task to Install Packages on an Alpine VM (alpine::install_packages)
# Input Variables
STAGING_IP="${PT_staging_ip}"
USERNAME="${PT_username:-moeny}"
# Uncomment to enable community repository
ssh -o StrictHostKeyChecking=no root@${STAGING_IP} "sed -i '3s/^#//' /etc/apk/repositories"
# Install required packages
ssh -o StrictHostKeyChecking=no root@${STAGING_IP} "apk update && apk add --no-cache vim curl git fping htop sudo bash mtr rsync tmux"
# Change default shell to bash
ssh -o StrictHostKeyChecking=no root@${STAGING_IP} "sed -i -E '/^(root|'${USERNAME}'):/ s:/bin/sh$:/bin/bash:' /etc/passwd"
# Set mouse for vim
ssh -o StrictHostKeyChecking=no root@${STAGING_IP} "sed -i '1i let skip_defaults_vim = 1\nset mouse=' /etc/vim/vimrc"
# Add user to sudo group
ssh -o StrictHostKeyChecking=no root@${STAGING_IP} "addgroup sudo;addgroup '${USERNAME}' sudo"
# Set no password to sudo group
ssh -o StrictHostKeyChecking=no root@${STAGING_IP} "echo '%sudo ALL=(ALL) NOPASSWD: ALL' | tee -a /etc/sudoers.d/nopasswd_sudo_group"
# Aliases for ll and la
ssh -o StrictHostKeyChecking=no root@${STAGING_IP} "sudo sed -i '1i # set ls -l and ls -a aliases\nalias ll='\''ls -l'\''\nalias la='\''ls -a'\''\n' /etc/bash/bashrc"