Ansible playbook for CPython WASM Buildbot
- Ansible (ansible-playbook, ansible-galaxy)
- https://galaxy.ansible.com/staticdev/pyenv
Playbook assumes that the host is an Ubuntu 20.04 system and provisioning user can become root without sudo password.
We install all buildbot and buildenv files on a persistent disk, not on the
operating system disk. A fresh data disk has no partition table and file
system. The playbook mounts the disk to /datadrive
and bind-mounts
/opt
to /datadrive/opt
.
parted /dev/disk/azure/scsi1/lun0 mklabel gpt mkpart xfspart xfs 0% 100%
mkfs.xfs /dev/disk/azure/scsi1/lun0-part1
partprobe /dev/disk/azure/scsi1/lun0-part1
- copy
inventory.example
toinventory
and adjust the file - run
./ansible.sh
The playbook does not start the buildbot service.
# systemctl start buildbot.service
Emscripten version, WASI SDK version, wasmtime version, and core dev user
accounts are configured in group_vars/*
. Core dev SSH keys are gathered
from GitHub.
The playbook can update and downgrade EMSDK, WASI-SDK, WASIX, and wasmtime.
It is recommended to check the
buildbot UI first
and then stop the buildbot worker with systemctl stop buildbot.service
once the worker is idle. The buildbot server must be started manually after
the update is done.
The buildbot host is running netdata on local HTTP port 19999.
ssh -C -L 19999:127.0.0.1:19999 azureuser@HOST