diff --git a/handlers/home.go b/handlers/home.go index d0af8a5..ee29e62 100644 --- a/handlers/home.go +++ b/handlers/home.go @@ -17,6 +17,7 @@ func Home(w http.ResponseWriter, r *http.Request) { return } if s.Stack != "" { + s.Host = r.Host go core.SessionDeployStack(s) } diff --git a/handlers/session_setup.go b/handlers/session_setup.go index a72dba5..fa96c88 100644 --- a/handlers/session_setup.go +++ b/handlers/session_setup.go @@ -26,6 +26,7 @@ func SessionSetup(rw http.ResponseWriter, req *http.Request) { return } + s.Host = req.Host err := core.SessionSetup(s, body) if err != nil { log.Println(err) diff --git a/pwd/instance_test.go b/pwd/instance_test.go index a97e1b8..fefed06 100644 --- a/pwd/instance_test.go +++ b/pwd/instance_test.go @@ -234,7 +234,7 @@ func TestInstanceAllowedImages(t *testing.T) { p := NewPWD(dock, tasks, broadcast, storage) - expectedImages := []string{config.GetDindImageName(), "franela/dind:overlay2-dev"} + expectedImages := []string{config.GetDindImageName(), "franela/dind:overlay2-dev", "franela/ucp:2.4.1"} assert.Equal(t, expectedImages, p.InstanceAllowedImages()) } diff --git a/pwd/session.go b/pwd/session.go index e584dc4..4f41d90 100644 --- a/pwd/session.go +++ b/pwd/session.go @@ -46,6 +46,7 @@ type Session struct { Stack string `json:"stack"` StackName string `json:"stack_name"` ImageName string `json:"image_name"` + Host string `json:"host"` closingTimer *time.Timer `json:"-"` scheduled bool `json:"-"` clients []*Client `json:"-"` @@ -163,7 +164,7 @@ func (p *pwd) SessionDeployStack(s *Session) error { s.Ready = false p.broadcast.BroadcastTo(s.Id, "session ready", false) - i, err := p.InstanceNew(s, InstanceConfig{ImageName: s.ImageName}) + i, err := p.InstanceNew(s, InstanceConfig{ImageName: s.ImageName, Host: s.Host}) if err != nil { log.Printf("Error creating instance for stack [%s]: %s\n", s.Stack, err) return err @@ -249,6 +250,7 @@ func (p *pwd) SessionSetup(session *Session, conf SessionSetupConf) error { instanceConf := InstanceConfig{ ImageName: conf.Image, Hostname: conf.Hostname, + Host: session.Host, } i, err := p.InstanceNew(session, instanceConf) if err != nil {