Files
gvisor/tools/vm/README.md
T
Ting-Yu Wang 1d11c40378 Fix errors not getting caught when building vm image.
`set -e` does not catch errors in bash command substituions like
`echo $(bad cmd)` so bazel thinks it succeeded and cached the result.

PiperOrigin-RevId: 321412327
2020-07-15 12:20:23 -07:00

1.0 KiB

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"],
)