diff options
Diffstat (limited to 'tools/vm/README.md')
-rw-r--r-- | tools/vm/README.md | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/tools/vm/README.md b/tools/vm/README.md new file mode 100644 index 000000000..1e9859e66 --- /dev/null +++ b/tools/vm/README.md @@ -0,0 +1,48 @@ +# 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"], +) +``` |