gvisor/tools/vm
Adin Scannell 90021e775a Add bzl_library rules for .bzl files without one.
PiperOrigin-RevId: 325280924
2020-08-06 12:10:49 -07:00
..
ubuntu1604 optimize size and time using "--no-cache-dir" 2020-07-25 13:26:52 +05:30
ubuntu1804 Add a functional vm_test for root_test. 2020-04-20 15:48:27 -07:00
BUILD Add bzl_library rules for .bzl files without one. 2020-08-06 12:10:49 -07:00
README.md Fix errors not getting caught when building vm image. 2020-07-15 12:20:23 -07:00
build.sh Update vm scripts to handle existing kbuilder user. 2020-05-15 10:09:54 -07:00
defs.bzl Fix errors not getting caught when building vm image. 2020-07-15 12:20:23 -07:00
execute.sh Add a functional vm_test for root_test. 2020-04-20 15:48:27 -07:00
test.cc Add a functional vm_test for root_test. 2020-04-20 15:48:27 -07:00
zone.sh Add a functional vm_test for root_test. 2020-04-20 15:48:27 -07:00

README.md

VM Images & Tests

All commands in this directory require the gcloud project to be set.

For example: gcloud config set project gvisor-kokoro-testing.

Images can be generated by using the vm_image rule. This rule will generate a binary target that builds an image in an idempotent way, and can be referenced from other rules.

For example:

vm_image(
    name = "ubuntu",
    project = "ubuntu-1604-lts",
    family = "ubuntu-os-cloud",
    scripts = [
        "script.sh",
        "other.sh",
    ],
)

These images can be built manually by executing the target. The output on stdout will be the image id (in the current project).

For example:

$ bazel build :ubuntu

Images are always named per the hash of all the hermetic input scripts. This allows images to be memoized quickly and easily.

The vm_test rule can be used to execute a command remotely. This is still under development however, and will likely change over time.

For example:

vm_test(
    name = "mycommand",
    image = ":ubuntu",
    targets = [":test"],
)