checker

package
v0.0.0-...-8c31c7c Latest Latest
Warning

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

Go to latest
Published: Jan 30, 2017 License: Apache-2.0 Imports: 18 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Init

func Init(cfg *Configuration) (err error)

Types

type Checker

type Checker struct {
	Docker           *docker.Client
	Config           *Configuration
	Queue            chan *Task
	Close            chan struct{}
	CollectorUpdater chan bool
	// contains filtered or unexported fields
}

func Get

func Get() *Checker

func (*Checker) CheckTest

func (c *Checker) CheckTest(test *model.Test)

func (*Checker) NewTask

func (c *Checker) NewTask(challenge *model.Challenge, test *model.Test) *Task

func (*Checker) PingDocker

func (c *Checker) PingDocker() error

func (*Checker) Stop

func (c *Checker) Stop()

type Configuration

type Configuration struct {
	Endpoint       string        // docker socket path
	Timeout        time.Duration // docker run timeout in milliseconds
	Threads        int           // docker runs in one time
	ChallengesPath string        // path to etc/challenges folder
	ImagesPath     string        // path to etc/challenges folder
}

type LocalChallengeSettings

type LocalChallengeSettings struct {
	Name       string
	Image      string
	Cmd        string
	Points     int64
	TargetPath string
	Inject     string
}

type Task

type Task struct {
	Docker    *docker.Client
	Test      *model.Test
	Challenge *model.Challenge
	Container *docker.Container
	Result    struct {
		ExitCode int
		Stdout   bytes.Buffer
		Stderr   bytes.Buffer
	}
}

func (*Task) Do

func (task *Task) Do(ctx context.Context) (err error)

Jump to

Keyboard shortcuts

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