aboutsummaryrefslogtreecommitdiffstats
path: root/vm/vmimpl
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2017-11-29 13:23:42 +0100
committerDmitry Vyukov <dvyukov@google.com>2017-11-30 14:50:50 +0100
commit5153aeaffd096514c1f2652c69cd0fc0d298b1d3 (patch)
tree5eb5155a43d5a0d43adca8a9e7c0c78ed0f43f6a /vm/vmimpl
parentd5bd1f79fd780a53ab078b0302f972eb9560bf98 (diff)
syz-ci: test images before using them
Boot and minimally test images before declaring them as good and switching to using them. If image build/boot/test fails, upload report about this to dashboard.
Diffstat (limited to 'vm/vmimpl')
-rw-r--r--vm/vmimpl/vmimpl.go10
1 files changed, 10 insertions, 0 deletions
diff --git a/vm/vmimpl/vmimpl.go b/vm/vmimpl/vmimpl.go
index 617f9bc0f..81f798d26 100644
--- a/vm/vmimpl/vmimpl.go
+++ b/vm/vmimpl/vmimpl.go
@@ -56,6 +56,16 @@ type Env struct {
Config []byte // json-serialized VM-type-specific config
}
+// BootError is returned by Pool.Create when VM does not boot.
+type BootError struct {
+ Title string
+ Output []byte
+}
+
+func (err BootError) Error() string {
+ return fmt.Sprintf("%v\n%s", err.Title, err.Output)
+}
+
// Create creates a VM type that can be used to create individual VMs.
func Create(typ string, env *Env) (Pool, error) {
ctor := ctors[typ]