From 8f247794bb3089a7160fc5f393cf8832d114cef7 Mon Sep 17 00:00:00 2001 From: "Jonathan Leibiusky @xetorthio" Date: Wed, 14 Jun 2017 19:02:07 -0300 Subject: [PATCH] Add PWD_HOST_FQDN env variable to instances. --- docker/docker.go | 2 ++ handlers/new_instance.go | 2 +- pwd/instance.go | 2 ++ pwd/instance_test.go | 3 ++- 4 files changed, 7 insertions(+), 2 deletions(-) diff --git a/docker/docker.go b/docker/docker.go index 1bf793d..08876c7 100644 --- a/docker/docker.go +++ b/docker/docker.go @@ -206,6 +206,7 @@ type CreateContainerOpts struct { ServerKey []byte CACert []byte Privileged bool + HostFQDN string } func (d *docker) CreateContainer(opts CreateContainerOpts) (string, error) { @@ -256,6 +257,7 @@ func (d *docker) CreateContainer(opts CreateContainerOpts) (string, error) { h.Resources.OomKillDisable = &t env = append(env, fmt.Sprintf("PWD_IP_ADDRESS=%s", opts.PwdIpAddress)) + env = append(env, fmt.Sprintf("PWD_HOST_FQDN=%s", opts.HostFQDN)) cf := &container.Config{Hostname: opts.Hostname, Image: opts.Image, Tty: true, diff --git a/handlers/new_instance.go b/handlers/new_instance.go index 08ad7ff..94470db 100644 --- a/handlers/new_instance.go +++ b/handlers/new_instance.go @@ -13,7 +13,7 @@ func NewInstance(rw http.ResponseWriter, req *http.Request) { vars := mux.Vars(req) sessionId := vars["sessionId"] - body := pwd.InstanceConfig{} + body := pwd.InstanceConfig{Host: req.Host} json.NewDecoder(req.Body).Decode(&body) diff --git a/pwd/instance.go b/pwd/instance.go index 25ac1d0..d079929 100644 --- a/pwd/instance.go +++ b/pwd/instance.go @@ -66,6 +66,7 @@ type InstanceConfig struct { CACert []byte Cert []byte Key []byte + Host string } func (i *Instance) setUsedPort(port uint16) { @@ -223,6 +224,7 @@ func (p *pwd) InstanceNew(session *Session, conf InstanceConfig) (*Instance, err ServerKey: conf.ServerKey, CACert: conf.CACert, Privileged: false, + HostFQDN: conf.Host, } for _, imageName := range p.InstanceAllowedImages() { diff --git a/pwd/instance_test.go b/pwd/instance_test.go index 10ffcad..73b89fe 100644 --- a/pwd/instance_test.go +++ b/pwd/instance_test.go @@ -57,7 +57,7 @@ func TestInstanceNew(t *testing.T) { assert.Nil(t, err) - instance, err := p.InstanceNew(session, InstanceConfig{}) + instance, err := p.InstanceNew(session, InstanceConfig{Host: "something.play-with-docker.com"}) assert.Nil(t, err) @@ -83,6 +83,7 @@ func TestInstanceNew(t *testing.T) { ServerKey: nil, CACert: nil, Privileged: true, + HostFQDN: "something.play-with-docker.com", } assert.Equal(t, expectedContainerOpts, containerOpts) }