Files
fn-serverless/api/runner/task.go
2016-08-21 19:40:08 -03:00

44 lines
1.2 KiB
Go

package runner
import (
"io"
dockercli "github.com/fsouza/go-dockerclient"
"github.com/iron-io/titan/runner/tasker"
)
type containerTask struct {
auth tasker.Auther
cfg *Config
}
func (t *containerTask) Command() string { return "" }
func (t *containerTask) EnvVars() map[string]string {
env := map[string]string{
"PAYLOAD": t.cfg.Payload,
"REQUEST_URL": t.cfg.RequestURL,
}
return env
}
func (t *containerTask) Labels() map[string]string {
return map[string]string{
"LogName": t.cfg.AppName,
}
}
func (t *containerTask) Id() string { return t.cfg.ID }
func (t *containerTask) Group() string { return "" }
func (t *containerTask) Image() string { return t.cfg.Route.Image }
func (t *containerTask) Timeout() uint { return uint(t.cfg.Timeout.Seconds()) }
func (t *containerTask) Logger() (stdout, stderr io.Writer) { return t.cfg.Stdout, t.cfg.Stderr }
func (t *containerTask) Volumes() [][2]string { return [][2]string{} }
func (t *containerTask) WorkDir() string { return "" }
func (t *containerTask) Close() {}
func (t *containerTask) DockerAuth() []dockercli.AuthConfiguration {
return t.auth.Auth(t.Image())
}