From 6c9a47f01c583e9c22b831eb426192148d29d792 Mon Sep 17 00:00:00 2001 From: Michael Crosby Date: Thu, 27 Mar 2014 09:04:54 +0000 Subject: [PATCH] Update native driver to use labels from opts Docker-DCO-1.1-Signed-off-by: Michael Crosby (github: crosbymichael) --- runtime/execdriver/native/create.go | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/runtime/execdriver/native/create.go b/runtime/execdriver/native/create.go index 7e663f055..976416a8c 100644 --- a/runtime/execdriver/native/create.go +++ b/runtime/execdriver/native/create.go @@ -2,6 +2,7 @@ package native import ( "fmt" + "github.com/dotcloud/docker/pkg/label" "github.com/dotcloud/docker/pkg/libcontainer" "github.com/dotcloud/docker/runtime/execdriver" "github.com/dotcloud/docker/runtime/execdriver/native/configuration" @@ -37,6 +38,9 @@ func (d *driver) createContainer(c *execdriver.Command) (*libcontainer.Container if err := d.setupMounts(container, c); err != nil { return nil, err } + if err := d.setupLabels(container, c); err != nil { + return nil, err + } if err := configuration.ParseConfiguration(container, d.activeContainers, c.Config["native"]); err != nil { return nil, err } @@ -94,3 +98,16 @@ func (d *driver) setupMounts(container *libcontainer.Container, c *execdriver.Co } return nil } + +func (d *driver) setupLabels(container *libcontainer.Container, c *execdriver.Command) error { + labels := c.Config["label"] + if len(labels) > 0 { + process, mount, err := label.GenLabels(labels[0]) + if err != nil { + return err + } + container.Context["mount_label"] = mount + container.Context["process_label"] = process + } + return nil +}