Documentation
¶
Overview ¶
Package platform contains interface and implementation to run a Handel node on multiple platforms. Such implementations include Localhost (run your test locally).
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Command ¶
Command is a wrapper around Go's Cmd that can also output the log on demand
func NewCommand ¶
NewCommand returns a command that can outputs its stdout and stderr
func (*Command) LineOutput ¶
LineOutput continuously reads the stdout + stderr buffer and sends line by line output on the channel
type Platform ¶
type Platform interface { // + the initial configuration of all structures needed for the platform // + building the binaries if needed and deploying them if needed Configure(*lib.Config) error // Makes sure that there is no part of the application still running Cleanup() error // Start runs an experiment from this run config, which is at the given // index in the Config. Both informations are redundant however it avoids // one useless step for each platform. Any implementations MUST perform this // experiment a number of times as defined in the Config struct field // Retrials. It must be a blocking call that returns only when the // experiment is finished. Start(idx int, rc *lib.RunConfig) error }
Platform interface that has to be implemented to add another simulation- platform.
func NewLocalhost ¶
func NewLocalhost() Platform
NewLocalhost returns a Platform that is executing binaries on localhost
func NewPlatform ¶
NewPlatform returns the appropriate platform [deterlab,localhost] and setups the Cleanup call in case of a signal interruption