Skip to content

Ansible playbook for WASM Buildbot

License

Notifications You must be signed in to change notification settings

tiran/ansible-wasm-buildbot

Repository files navigation

ansible-wasm-buildbot

Ansible playbook for CPython WASM Buildbot

Dependencies

Azure provisioning

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

Ansible provisioning

  • copy inventory.example to inventory and adjust the file
  • run ./ansible.sh

Post installation

The playbook does not start the buildbot service.

# systemctl start buildbot.service

Configuration

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.

Updates

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.

Monitoring

The buildbot host is running netdata on local HTTP port 19999.

ssh -C -L 19999:127.0.0.1:19999  azureuser@HOST

About

Ansible playbook for WASM Buildbot

Resources

License

Stars

Watchers

Forks

Packages

No packages published