Files
visor/tools/vm
Kevin KrakauerandgVisor bot b6e28912f1 Enable docker IPv6 in kokoro
We need docker IPv6 for ip6tables tests. Docker has spotty IPv6 support, so just
enabling IPv6 in daemon.json breaks the Ruby image test (AFAICT it breaks
anything that tries to use IPv6 to reach the internet). An ip6tables NAT rule is
added to handle this.

We could make these changes as part of scripts/, but these would overwrite
global values and possibly break users' systems.

PiperOrigin-RevId: 318508209
2020-06-26 11:19:12 -07:00
..
2020-06-26 11:19:12 -07:00
2020-04-20 15:48:27 -07:00

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).

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