...
1
2
3 package main
4
5 import (
6 "path/filepath"
7
8 "github.com/Microsoft/hcsshim"
9 "github.com/Microsoft/hcsshim/internal/appargs"
10 "github.com/urfave/cli"
11 )
12
13 var createCommand = cli.Command{
14 Name: "create",
15 Usage: "creates a new writable container layer",
16 Flags: []cli.Flag{
17 cli.StringSliceFlag{
18 Name: "layer, l",
19 Usage: "paths to the read-only parent layers",
20 },
21 },
22 ArgsUsage: "<layer path>",
23 Before: appargs.Validate(appargs.NonEmptyString),
24 Action: func(context *cli.Context) error {
25 path, err := filepath.Abs(context.Args().First())
26 if err != nil {
27 return err
28 }
29
30 layers, err := normalizeLayers(context.StringSlice("layer"), true)
31 if err != nil {
32 return err
33 }
34
35 di := driverInfo
36 return hcsshim.CreateScratchLayer(di, path, layers[len(layers)-1], layers)
37 },
38 }
39
View as plain text