Last active
March 24, 2021 19:55
-
-
Save odinuv/0d50083e5462ea2f00e6c5b2e615b0da to your computer and use it in GitHub Desktop.
test
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env bash | |
set -Eeuo pipefail | |
printf "\nSetting up disk\n" | |
sudo parted /dev/sdc --script mklabel gpt mkpart xfspart xfs 0% 100% | |
sudo mkfs.xfs -f /dev/sdc1 | |
sudo partprobe /dev/sdc1 | |
block_record=$(sudo blkid | grep "xfs") | |
uuid=$(printf "$block_record" | gawk 'match($0, /UUID="([a-zA-Z0-9\-]*)"/, a) {print a[1]}') | |
printf "UUID=$uuid /datadrive xfs defaults,nofail 0 2\n" | sudo tee -a /etc/fstab | |
sudo mkdir /datadrive | |
sudo mount /datadrive | |
# Install docker https://docs.docker.com/engine/install/ubuntu/ | |
printf "\nInstaling docker\n" | |
sudo apt-get update -qq | |
sudo apt-get install -y -qq \ | |
apt-transport-https \ | |
ca-certificates \ | |
curl \ | |
gnupg-agent \ | |
software-properties-common | |
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - | |
sudo add-apt-repository \ | |
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \ | |
$(lsb_release -cs) \ | |
stable" | |
sudo apt-get install -y -qq docker-ce docker-ce-cli containerd.io | |
# Setup docker https://docs.docker.com/engine/install/linux-postinstall/ | |
#sudo groupadd docker | |
sudo usermod -aG docker testadmin | |
printf "{\"data-root\": \"/datadrive/docker\"}" | sudo tee -a /etc/docker/daemon.json | |
printf "\nInstall docker compose\n" | |
# https://docs.docker.com/compose/install/ | |
sudo curl -s -L "https://github.com/docker/compose/releases/download/1.28.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose | |
sudo chmod +x /usr/local/bin/docker-compose | |
# Enable Swap limit capabilities | |
#https://docs.docker.com/engine/install/linux-postinstall/#your-kernel-does-not-support-cgroup-swap-limit-capabilities | |
printf "\nGRUB_CMDLINE_LINUX=\"cgroup_enable=memory swapaccount=1\"\n" | sudo tee -a /etc/default/grub | |
sudo update-grub | |
printf "\nSetting up agent\n" | |
cd /home/testadmin | |
curl -s https://vstsagentpackage.azureedge.net/agent/2.183.1/vsts-agent-linux-x64-2.183.1.tar.gz -o agent.tar.gz | |
mkdir azagent && cd azagent | |
tar zxvf ./../agent.tar.gz > /dev/null | |
rm ../agent.tar.gz | |
sudo chown testadmin /home/testadmin/azagent/ | |
printf "/home/testadmin/azagent/config.sh --unattended --url https://dev.azure.com/keboola-dev/ --auth pat --token $1 --pool default --agent $2 --work /datadrive/_work" > /home/testadmin/azagent/wrap.sh | |
sudo chmod a+x /home/testadmin/azagent/wrap.sh | |
runuser -l testadmin -c '/home/testadmin/azagent/wrap.sh' | |
sudo mkdir /datadrive/_work | |
sudo chown testadmin /datadrive/_work | |
sudo /home/testadmin/azagent/svc.sh install | |
printf "\nFinished successfully\n" | |
sudo shutdown -r +1 "Rebooting." | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment