Github Actions Agent VM on DigitalOcean

While we are investigating, agreed to spinup VM on DigitalOcean to see how it goes

In DO create new droplet

Distribution: Ubuntu 20.04 Plan: Basic CPU Options: Regular Intel with SSD VM: $40/mo 4cpu, 8ram, 160ssd Region: Frankfurt SSH keys: check Hostname: gha-do-1

Create droplet, wait for it to spin up and connect

ssh root@167.71.38.43

First of all we need user, because agent can not be run under root

adduser github

Note: password set to github (we are logging in by ssh keys, and after all that's temporary server), everything else - next, next, finish

Install software

apt -qq update && apt install -y build-essential python

Install docker

curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
rm get-docker.sh
sudo usermod -aG docker $USER

Grant permissions

echo github ALL=NOPASSWD: ALL | sudo tee /etc/sudoers.d/github
sudo usermod -aG docker github

Switch to github user

su - github

Download agent

mkdir actions-runner && cd actions-runner
curl -o actions-runner-linux-x64-2.280.1.tar.gz -L https://github.com/actions/runner/releases/download/v2.280.1/actions-runner-linux-x64-2.280.1.tar.gz
tar xzf ./actions-runner-linux-x64-2.280.1.tar.gz
rm actions-runner-linux-x64-2.280.1.tar.gz
./config.sh --url https://github.com/rabotaua/alliance --token xxxxxxxxx

Note: last string can be found here https://github.com/rabotaua/alliance/settings/actions/runners/new?arch=x64&os=linu open it, then next, next, finish

Register and start service

sudo ./svc.sh install
sudo ./svc.sh start

Add to .path :/home/github/.yarn/bin