Skip to main content

Manage running Airspeed Velocity (asv) benchmarks in a lightweight

Project description

Manage running asv benchmarks in a lightweight Bubblewrap sandbox on Linux.

Collects results and HTML output to a Git repository, which is optionally pushed to a remote location.

Example

user$ asv-bwrap --sample-config > config.toml
user$ vi config.toml
user$ asv-bwrap config.toml run master^!

# echo 'su -c "asv-bwrap config.toml run NEW" - user' > /etc/cron.daily/run-benchmarks
# chmod +x /etc/cron.daily/run-benchmarks

Configuration

To get a sample configuration file, run asv-bwrap --sample-config > config.toml.

It contains settings for the work directory, sandboxing, etc., and the shell scripts to run inside the sandbox. asv-bwrap comes with a set of default scripts, which work for the most common configurations.

Sandboxing

asv-bwrap builds a lightweight sandbox using Bubblewrap.

It launches the worker scripts in a new filesystem namespace, which exposes /usr, /lib etc. common locations as read-only. Directories for storing json result files and html output are available read-write.

The sandbox container is likely difficult to escape from, and can protect against mistakes in benchmark scripts, without affecting performance as much as a virtual machine.

However, the net namespace is not unshared, so processes inside the sandbox can access also local network resoures. If you want to use this to run untrusted code, you need to review firewall rules and other aspects of the configuration.

asv-bwrap should not be run as root.

All operations on the results repository are done outside the sandbox, including uploading.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

asv-bwrap-0.1.tar.gz (9.0 kB view details)

Uploaded Source

Built Distribution

asv_bwrap-0.1-py3-none-any.whl (22.4 kB view details)

Uploaded Python 3

File details

Details for the file asv-bwrap-0.1.tar.gz.

File metadata

  • Download URL: asv-bwrap-0.1.tar.gz
  • Upload date:
  • Size: 9.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.7.3

File hashes

Hashes for asv-bwrap-0.1.tar.gz
Algorithm Hash digest
SHA256 58ad2fa8cccaf3a5e2dc450d06209f3ea8f6b8cd1c45fce412382bb44eb5b999
MD5 b0912e1b4b715155200af40f7ca4b6e1
BLAKE2b-256 fa3a991eb7056daeb242092195fe4101d8da21c1218f2105096c7aa87aa00905

See more details on using hashes here.

Provenance

File details

Details for the file asv_bwrap-0.1-py3-none-any.whl.

File metadata

  • Download URL: asv_bwrap-0.1-py3-none-any.whl
  • Upload date:
  • Size: 22.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.21.0

File hashes

Hashes for asv_bwrap-0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 232e520544f3f38db07bbb3ab7aa82d3d8286519b6b18233c659fd3d9d8cca57
MD5 b538466e1030df2d5133be5bd5f812e1
BLAKE2b-256 cf6305f9dec080275706dea7c50e200781066c727732b691209b21b5755d510e

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page