Browse code

make builder.Run public it now runs only given arguments without sh -c

Guillaume J. Charmes authored on 2013/04/25 04:31:20
Showing 1 changed files
... ...
@@ -17,9 +17,9 @@ func NewBuilder(runtime *Runtime) *Builder {
17 17
 	}
18 18
 }
19 19
 
20
-func (builder *Builder) run(image *Image, cmd string) (*Container, error) {
20
+func (builder *Builder) Run(image *Image, cmd ...string) (*Container, error) {
21 21
 	// FIXME: pass a NopWriter instead of nil
22
-	config, err := ParseRun([]string{"-d", image.Id, "/bin/sh", "-c", cmd}, nil, builder.runtime.capabilities)
22
+	config, err := ParseRun(append([]string{"-d", image.Id}, cmd...), nil, builder.runtime.capabilities)
23 23
 	if config.Image == "" {
24 24
 		return nil, fmt.Errorf("Image not specified")
25 25
 	}
... ...
@@ -94,7 +94,7 @@ func (builder *Builder) Build(dockerfile io.Reader, stdout io.Writer) error {
94 94
 			}
95 95
 
96 96
 			// Create the container and start it
97
-			c, err := builder.run(image, tmp[1])
97
+			c, err := builder.Run(image, "/bin/sh", "-c", tmp[1])
98 98
 			if err != nil {
99 99
 				return err
100 100
 			}