vm

package
v0.0.0-...-95d512c Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 11, 2018 License: Apache-2.0 Imports: 13 Imported by: 0

Documentation

Overview

Package vm provides an abstract test machine (VM, physical machine, etc) interface for the rest of the system. For convenience test machines are subsequently collectively called VMs. Package wraps vmimpl package interface with some common functionality and higher-level interface.

Index

Constants

This section is empty.

Variables

View Source
var (
	Shutdown   = vmimpl.Shutdown
	ErrTimeout = vmimpl.ErrTimeout
)

Functions

func MonitorExecution

func MonitorExecution(outc <-chan []byte, errc <-chan error, reporter report.Reporter, canExit bool) (
	rep *report.Report)

MonitorExecution monitors execution of a program running inside of a VM. It detects kernel oopses in output, lost connections, hangs, etc. outc/errc is what vm.Instance.Run returns, reporter parses kernel output for oopses. If canExit is false and the program exits, it is treated as an error. Returns a non-symbolized crash report, or nil if no error happens.

Types

type BootErrorer

type BootErrorer interface {
	BootError() (string, []byte)
}

type Env

type Env vmimpl.Env

type Instance

type Instance struct {
	// contains filtered or unexported fields
}

func (*Instance) Close

func (inst *Instance) Close()

func (*Instance) Copy

func (inst *Instance) Copy(hostSrc string) (string, error)

func (*Instance) Forward

func (inst *Instance) Forward(port int) (string, error)

func (*Instance) Run

func (inst *Instance) Run(timeout time.Duration, stop <-chan bool, command string) (
	outc <-chan []byte, errc <-chan error, err error)

type Pool

type Pool struct {
	// contains filtered or unexported fields
}

func Create

func Create(typ string, env *Env) (*Pool, error)

func (*Pool) Count

func (pool *Pool) Count() int

func (*Pool) Create

func (pool *Pool) Create(index int) (*Instance, error)

Directories

Path Synopsis
Package gce allows to use Google Compute Engine (GCE) virtual machines as VMs.
Package gce allows to use Google Compute Engine (GCE) virtual machines as VMs.
Package kvm provides VMs based on lkvm (kvmtool) virtualization.
Package kvm provides VMs based on lkvm (kvmtool) virtualization.
Package vmimpl provides an abstract test machine (VM, physical machine, etc) interface for the rest of the system.
Package vmimpl provides an abstract test machine (VM, physical machine, etc) interface for the rest of the system.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL