mirror of
				https://github.com/moby/moby.git
				synced 2022-11-09 12:21:53 -05:00 
			
		
		
		
	Remove deprecated cli flags
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
This commit is contained in:
		
							parent
							
								
									cf824d9749
								
							
						
					
					
						commit
						7929888214
					
				
					 21 changed files with 42 additions and 121 deletions
				
			
		| 
						 | 
				
			
			@ -18,8 +18,8 @@ import (
 | 
			
		|||
// Usage: docker attach [OPTIONS] CONTAINER
 | 
			
		||||
func (cli *DockerCli) CmdAttach(args ...string) error {
 | 
			
		||||
	cmd := Cli.Subcmd("attach", []string{"CONTAINER"}, Cli.DockerCommands["attach"].Description, true)
 | 
			
		||||
	noStdin := cmd.Bool([]string{"#nostdin", "-no-stdin"}, false, "Do not attach STDIN")
 | 
			
		||||
	proxy := cmd.Bool([]string{"#sig-proxy", "-sig-proxy"}, true, "Proxy all received signals to the process")
 | 
			
		||||
	noStdin := cmd.Bool([]string{"-no-stdin"}, false, "Do not attach STDIN")
 | 
			
		||||
	proxy := cmd.Bool([]string{"-sig-proxy"}, true, "Proxy all received signals to the process")
 | 
			
		||||
 | 
			
		||||
	cmd.Require(flag.Exact, 1)
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -52,8 +52,8 @@ func (cli *DockerCli) CmdBuild(args ...string) error {
 | 
			
		|||
	flTags := opts.NewListOpts(validateTag)
 | 
			
		||||
	cmd.Var(&flTags, []string{"t", "-tag"}, "Name and optionally a tag in the 'name:tag' format")
 | 
			
		||||
	suppressOutput := cmd.Bool([]string{"q", "-quiet"}, false, "Suppress the verbose output generated by the containers")
 | 
			
		||||
	noCache := cmd.Bool([]string{"#no-cache", "-no-cache"}, false, "Do not use cache when building the image")
 | 
			
		||||
	rm := cmd.Bool([]string{"#rm", "-rm"}, true, "Remove intermediate containers after a successful build")
 | 
			
		||||
	noCache := cmd.Bool([]string{"-no-cache"}, false, "Do not use cache when building the image")
 | 
			
		||||
	rm := cmd.Bool([]string{"-rm"}, true, "Remove intermediate containers after a successful build")
 | 
			
		||||
	forceRm := cmd.Bool([]string{"-force-rm"}, false, "Always remove intermediate containers")
 | 
			
		||||
	pull := cmd.Bool([]string{"-pull"}, false, "Always attempt to pull a newer version of the image")
 | 
			
		||||
	dockerfileName := cmd.String([]string{"f", "-file"}, "", "Name of the Dockerfile (Default is 'PATH/Dockerfile')")
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -21,11 +21,11 @@ func (cli *DockerCli) CmdCommit(args ...string) error {
 | 
			
		|||
	cmd := Cli.Subcmd("commit", []string{"CONTAINER [REPOSITORY[:TAG]]"}, Cli.DockerCommands["commit"].Description, true)
 | 
			
		||||
	flPause := cmd.Bool([]string{"p", "-pause"}, true, "Pause container during commit")
 | 
			
		||||
	flComment := cmd.String([]string{"m", "-message"}, "", "Commit message")
 | 
			
		||||
	flAuthor := cmd.String([]string{"a", "#author", "-author"}, "", "Author (e.g., \"John Hannibal Smith <hannibal@a-team.com>\")")
 | 
			
		||||
	flAuthor := cmd.String([]string{"a", "-author"}, "", "Author (e.g., \"John Hannibal Smith <hannibal@a-team.com>\")")
 | 
			
		||||
	flChanges := opts.NewListOpts(nil)
 | 
			
		||||
	cmd.Var(&flChanges, []string{"c", "-change"}, "Apply Dockerfile instruction to the created image")
 | 
			
		||||
	// FIXME: --run is deprecated, it will be replaced with inline Dockerfile commands.
 | 
			
		||||
	flConfig := cmd.String([]string{"#run", "#-run"}, "", "This option is deprecated and will be removed in a future version in favor of inline Dockerfile-compatible commands")
 | 
			
		||||
	flConfig := cmd.String([]string{"#-run"}, "", "This option is deprecated and will be removed in a future version in favor of inline Dockerfile-compatible commands")
 | 
			
		||||
	cmd.Require(flag.Max, 2)
 | 
			
		||||
	cmd.Require(flag.Min, 1)
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -16,7 +16,7 @@ import (
 | 
			
		|||
// Usage: docker events [OPTIONS]
 | 
			
		||||
func (cli *DockerCli) CmdEvents(args ...string) error {
 | 
			
		||||
	cmd := Cli.Subcmd("events", nil, Cli.DockerCommands["events"].Description, true)
 | 
			
		||||
	since := cmd.String([]string{"#since", "-since"}, "", "Show all events created since timestamp")
 | 
			
		||||
	since := cmd.String([]string{"-since"}, "", "Show all events created since timestamp")
 | 
			
		||||
	until := cmd.String([]string{"-until"}, "", "Stream events until this timestamp")
 | 
			
		||||
	flFilter := opts.NewListOpts(nil)
 | 
			
		||||
	cmd.Var(&flFilter, []string{"f", "-filter"}, "Filter output based on conditions provided")
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -23,7 +23,7 @@ func (cli *DockerCli) CmdHistory(args ...string) error {
 | 
			
		|||
	cmd := Cli.Subcmd("history", []string{"IMAGE"}, Cli.DockerCommands["history"].Description, true)
 | 
			
		||||
	human := cmd.Bool([]string{"H", "-human"}, true, "Print sizes and dates in human readable format")
 | 
			
		||||
	quiet := cmd.Bool([]string{"q", "-quiet"}, false, "Only show numeric IDs")
 | 
			
		||||
	noTrunc := cmd.Bool([]string{"#notrunc", "-no-trunc"}, false, "Don't truncate output")
 | 
			
		||||
	noTrunc := cmd.Bool([]string{"-no-trunc"}, false, "Don't truncate output")
 | 
			
		||||
	cmd.Require(flag.Exact, 1)
 | 
			
		||||
 | 
			
		||||
	cmd.ParseFlags(args, true)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -25,7 +25,7 @@ func (cli *DockerCli) CmdImages(args ...string) error {
 | 
			
		|||
	cmd := Cli.Subcmd("images", []string{"[REPOSITORY[:TAG]]"}, Cli.DockerCommands["images"].Description, true)
 | 
			
		||||
	quiet := cmd.Bool([]string{"q", "-quiet"}, false, "Only show numeric IDs")
 | 
			
		||||
	all := cmd.Bool([]string{"a", "-all"}, false, "Show all images (default hides intermediate images)")
 | 
			
		||||
	noTrunc := cmd.Bool([]string{"#notrunc", "-no-trunc"}, false, "Don't truncate output")
 | 
			
		||||
	noTrunc := cmd.Bool([]string{"-no-trunc"}, false, "Don't truncate output")
 | 
			
		||||
	showDigests := cmd.Bool([]string{"-digests"}, false, "Show digests")
 | 
			
		||||
 | 
			
		||||
	flFilter := opts.NewListOpts(nil)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -26,7 +26,7 @@ var funcMap = template.FuncMap{
 | 
			
		|||
// Usage: docker inspect [OPTIONS] CONTAINER|IMAGE [CONTAINER|IMAGE...]
 | 
			
		||||
func (cli *DockerCli) CmdInspect(args ...string) error {
 | 
			
		||||
	cmd := Cli.Subcmd("inspect", []string{"CONTAINER|IMAGE [CONTAINER|IMAGE...]"}, Cli.DockerCommands["inspect"].Description, true)
 | 
			
		||||
	tmplStr := cmd.String([]string{"f", "#format", "-format"}, "", "Format the output using the given go template")
 | 
			
		||||
	tmplStr := cmd.String([]string{"f", "-format"}, "", "Format the output using the given go template")
 | 
			
		||||
	inspectType := cmd.String([]string{"-type"}, "", "Return JSON for specified type, (e.g image or container)")
 | 
			
		||||
	size := cmd.Bool([]string{"s", "-size"}, false, "Display total file sizes if the type is container")
 | 
			
		||||
	cmd.Require(flag.Min, 1)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -27,10 +27,10 @@ func (cli *DockerCli) CmdPs(args ...string) error {
 | 
			
		|||
		quiet    = cmd.Bool([]string{"q", "-quiet"}, false, "Only display numeric IDs")
 | 
			
		||||
		size     = cmd.Bool([]string{"s", "-size"}, false, "Display total file sizes")
 | 
			
		||||
		all      = cmd.Bool([]string{"a", "-all"}, false, "Show all containers (default shows just running)")
 | 
			
		||||
		noTrunc  = cmd.Bool([]string{"#notrunc", "-no-trunc"}, false, "Don't truncate output")
 | 
			
		||||
		noTrunc  = cmd.Bool([]string{"-no-trunc"}, false, "Don't truncate output")
 | 
			
		||||
		nLatest  = cmd.Bool([]string{"l", "-latest"}, false, "Show the latest created container, include non-running")
 | 
			
		||||
		since    = cmd.String([]string{"#sinceId", "#-since-id", "-since"}, "", "Show created since Id or Name, include non-running")
 | 
			
		||||
		before   = cmd.String([]string{"#beforeId", "#-before-id", "-before"}, "", "Show only container created before Id or Name")
 | 
			
		||||
		since    = cmd.String([]string{"-since"}, "", "Show created since Id or Name, include non-running")
 | 
			
		||||
		before   = cmd.String([]string{"-before"}, "", "Show only container created before Id or Name")
 | 
			
		||||
		last     = cmd.Int([]string{"n"}, -1, "Show n last created containers, include non-running")
 | 
			
		||||
		format   = cmd.String([]string{"-format"}, "", "Pretty-print containers using a Go template")
 | 
			
		||||
		flFilter = opts.NewListOpts(nil)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -15,7 +15,7 @@ import (
 | 
			
		|||
func (cli *DockerCli) CmdRm(args ...string) error {
 | 
			
		||||
	cmd := Cli.Subcmd("rm", []string{"CONTAINER [CONTAINER...]"}, Cli.DockerCommands["rm"].Description, true)
 | 
			
		||||
	v := cmd.Bool([]string{"v", "-volumes"}, false, "Remove the volumes associated with the container")
 | 
			
		||||
	link := cmd.Bool([]string{"l", "#link", "-link"}, false, "Remove the specified link")
 | 
			
		||||
	link := cmd.Bool([]string{"l", "-link"}, false, "Remove the specified link")
 | 
			
		||||
	force := cmd.Bool([]string{"f", "-force"}, false, "Force the removal of a running container (uses SIGKILL)")
 | 
			
		||||
	cmd.Require(flag.Min, 1)
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -27,10 +27,9 @@ func (r ByStars) Less(i, j int) bool { return r[i].StarCount < r[j].StarCount }
 | 
			
		|||
// Usage: docker search [OPTIONS] TERM
 | 
			
		||||
func (cli *DockerCli) CmdSearch(args ...string) error {
 | 
			
		||||
	cmd := Cli.Subcmd("search", []string{"TERM"}, Cli.DockerCommands["search"].Description, true)
 | 
			
		||||
	noTrunc := cmd.Bool([]string{"#notrunc", "-no-trunc"}, false, "Don't truncate output")
 | 
			
		||||
	trusted := cmd.Bool([]string{"#t", "#trusted", "#-trusted"}, false, "Only show trusted builds")
 | 
			
		||||
	noTrunc := cmd.Bool([]string{"-no-trunc"}, false, "Don't truncate output")
 | 
			
		||||
	automated := cmd.Bool([]string{"-automated"}, false, "Only show automated builds")
 | 
			
		||||
	stars := cmd.Uint([]string{"s", "#stars", "-stars"}, 0, "Only displays with at least x stars")
 | 
			
		||||
	stars := cmd.Uint([]string{"s", "-stars"}, 0, "Only displays with at least x stars")
 | 
			
		||||
	cmd.Require(flag.Exact, 1)
 | 
			
		||||
 | 
			
		||||
	cmd.ParseFlags(args, true)
 | 
			
		||||
| 
						 | 
				
			
			@ -64,7 +63,7 @@ func (cli *DockerCli) CmdSearch(args ...string) error {
 | 
			
		|||
	w := tabwriter.NewWriter(cli.out, 10, 1, 3, ' ', 0)
 | 
			
		||||
	fmt.Fprintf(w, "NAME\tDESCRIPTION\tSTARS\tOFFICIAL\tAUTOMATED\n")
 | 
			
		||||
	for _, res := range results {
 | 
			
		||||
		if (*automated && !res.IsAutomated) || (int(*stars) > res.StarCount) || (*trusted && !res.IsTrusted) {
 | 
			
		||||
		if (*automated && !res.IsAutomated) || (int(*stars) > res.StarCount) {
 | 
			
		||||
			continue
 | 
			
		||||
		}
 | 
			
		||||
		desc := strings.Replace(res.Description, "\n", " ", -1)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -14,7 +14,7 @@ import (
 | 
			
		|||
// Usage: docker tag [OPTIONS] IMAGE[:TAG] [REGISTRYHOST/][USERNAME/]NAME[:TAG]
 | 
			
		||||
func (cli *DockerCli) CmdTag(args ...string) error {
 | 
			
		||||
	cmd := Cli.Subcmd("tag", []string{"IMAGE[:TAG] [REGISTRYHOST/][USERNAME/]NAME[:TAG]"}, Cli.DockerCommands["tag"].Description, true)
 | 
			
		||||
	force := cmd.Bool([]string{"f", "#force", "-force"}, false, "Force")
 | 
			
		||||
	force := cmd.Bool([]string{"f", "-force"}, false, "Force")
 | 
			
		||||
	cmd.Require(flag.Exact, 2)
 | 
			
		||||
 | 
			
		||||
	cmd.ParseFlags(args, true)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -33,34 +33,9 @@ import (
 | 
			
		|||
const daemonUsage = "       docker daemon [ --help | ... ]\n"
 | 
			
		||||
 | 
			
		||||
var (
 | 
			
		||||
	flDaemon              = flag.Bool([]string{"#d", "#-daemon"}, false, "Enable daemon mode (deprecated; use docker daemon)")
 | 
			
		||||
	daemonCli cli.Handler = NewDaemonCli()
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// TODO: remove once `-d` is retired
 | 
			
		||||
func handleGlobalDaemonFlag() {
 | 
			
		||||
	// This block makes sure that if the deprecated daemon flag `--daemon` is absent,
 | 
			
		||||
	// then all daemon-specific flags are absent as well.
 | 
			
		||||
	if !*flDaemon && daemonFlags != nil {
 | 
			
		||||
		flag.CommandLine.Visit(func(fl *flag.Flag) {
 | 
			
		||||
			for _, name := range fl.Names {
 | 
			
		||||
				name := strings.TrimPrefix(name, "#")
 | 
			
		||||
				if daemonFlags.Lookup(name) != nil {
 | 
			
		||||
					// daemon flag was NOT specified, but daemon-specific flags were
 | 
			
		||||
					// so let's error out
 | 
			
		||||
					fmt.Fprintf(os.Stderr, "docker: the daemon flag '-%s' must follow the 'docker daemon' command.\n", name)
 | 
			
		||||
					os.Exit(1)
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		})
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	if *flDaemon {
 | 
			
		||||
		daemonCli.(*DaemonCli).CmdDaemon(flag.Args()...)
 | 
			
		||||
		os.Exit(0)
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func presentInHelp(usage string) string { return usage }
 | 
			
		||||
func absentFromHelp(string) string      { return "" }
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -154,10 +129,7 @@ func (cli *DaemonCli) CmdDaemon(args ...string) error {
 | 
			
		|||
	// warn from uuid package when running the daemon
 | 
			
		||||
	uuid.Loggerf = logrus.Warnf
 | 
			
		||||
 | 
			
		||||
	if *flDaemon {
 | 
			
		||||
		// allow legacy forms `docker -D -d` and `docker -d -D`
 | 
			
		||||
		logrus.Warn("please use 'docker daemon' instead.")
 | 
			
		||||
	} else if !commonFlags.FlagSet.IsEmpty() || !clientFlags.FlagSet.IsEmpty() {
 | 
			
		||||
	if !commonFlags.FlagSet.IsEmpty() || !clientFlags.FlagSet.IsEmpty() {
 | 
			
		||||
		// deny `docker -D daemon`
 | 
			
		||||
		illegalFlag := getGlobalFlag()
 | 
			
		||||
		fmt.Fprintf(os.Stderr, "invalid flag '-%s'.\nSee 'docker daemon --help'.\n", illegalFlag.Names[0])
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -8,9 +8,6 @@ const daemonUsage = ""
 | 
			
		|||
 | 
			
		||||
var daemonCli cli.Handler
 | 
			
		||||
 | 
			
		||||
// TODO: remove once `-d` is retired
 | 
			
		||||
func handleGlobalDaemonFlag() {}
 | 
			
		||||
 | 
			
		||||
// notifySystem sends a message to the host when the server is ready to be used
 | 
			
		||||
func notifySystem() {
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -57,8 +57,6 @@ func main() {
 | 
			
		|||
		return
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	// TODO: remove once `-d` is retired
 | 
			
		||||
	handleGlobalDaemonFlag()
 | 
			
		||||
	clientCli := client.NewDockerCli(stdin, stdout, stderr, clientFlags)
 | 
			
		||||
 | 
			
		||||
	c := cli.New(clientCli, daemonCli)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -70,7 +70,6 @@ are deprecated and replaced with double-dash options (`--opt`):
 | 
			
		|||
    docker ps -sinceId
 | 
			
		||||
    docker rm -link
 | 
			
		||||
    docker run -cidfile
 | 
			
		||||
    docker run -cpuset
 | 
			
		||||
    docker run -dns
 | 
			
		||||
    docker run -entrypoint
 | 
			
		||||
    docker run -expose
 | 
			
		||||
| 
						 | 
				
			
			@ -87,6 +86,7 @@ are deprecated and replaced with double-dash options (`--opt`):
 | 
			
		|||
 | 
			
		||||
The following double-dash options are deprecated and have no replacement:
 | 
			
		||||
 | 
			
		||||
    docker run --cpuset
 | 
			
		||||
    docker run --networking
 | 
			
		||||
    docker ps --since-id
 | 
			
		||||
    docker ps --before-id
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -16,7 +16,7 @@ func (s *DockerSuite) TestInspectApiCpusetInConfigPre120(c *check.C) {
 | 
			
		|||
	testRequires(c, cgroupCpuset)
 | 
			
		||||
 | 
			
		||||
	name := "cpusetinconfig-pre120"
 | 
			
		||||
	dockerCmd(c, "run", "--name", name, "--cpuset", "0-1", "busybox", "true")
 | 
			
		||||
	dockerCmd(c, "run", "--name", name, "--cpuset-cpus", "0-1", "busybox", "true")
 | 
			
		||||
 | 
			
		||||
	status, body, err := sockRequest("GET", fmt.Sprintf("/v1.19/containers/%s/json", name), nil)
 | 
			
		||||
	c.Assert(status, check.Equals, http.StatusOK)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -404,37 +404,6 @@ func (s *DockerDaemonSuite) TestDaemonLogLevelWrong(c *check.C) {
 | 
			
		|||
	c.Assert(s.d.Start("--log-level=bogus"), check.NotNil, check.Commentf("Daemon shouldn't start with wrong log level"))
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (s *DockerSuite) TestDaemonStartWithBackwardCompatibility(c *check.C) {
 | 
			
		||||
 | 
			
		||||
	var validCommandArgs = [][]string{
 | 
			
		||||
		{"--selinux-enabled", "-l", "info"},
 | 
			
		||||
		{"--insecure-registry", "daemon"},
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	var invalidCommandArgs = [][]string{
 | 
			
		||||
		{"--selinux-enabled", "--storage-opt"},
 | 
			
		||||
		{"-D", "-b"},
 | 
			
		||||
		{"--config", "/tmp"},
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	for _, args := range validCommandArgs {
 | 
			
		||||
		d := NewDaemon(c)
 | 
			
		||||
		d.Command = "--daemon"
 | 
			
		||||
		if err := d.Start(args...); err != nil {
 | 
			
		||||
			c.Fatalf("Daemon should have started successfully with --daemon %v: %v", args, err)
 | 
			
		||||
		}
 | 
			
		||||
		d.Stop()
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	for _, args := range invalidCommandArgs {
 | 
			
		||||
		d := NewDaemon(c)
 | 
			
		||||
		if err := d.Start(args...); err == nil {
 | 
			
		||||
			d.Stop()
 | 
			
		||||
			c.Fatalf("Daemon should have failed to start with %v", args)
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (s *DockerSuite) TestDaemonStartWithDaemonCommand(c *check.C) {
 | 
			
		||||
 | 
			
		||||
	type kind int
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -6,15 +6,14 @@ import (
 | 
			
		|||
	"os"
 | 
			
		||||
	"os/exec"
 | 
			
		||||
	"path/filepath"
 | 
			
		||||
	"sort"
 | 
			
		||||
	"strconv"
 | 
			
		||||
	"strings"
 | 
			
		||||
	"time"
 | 
			
		||||
 | 
			
		||||
	"github.com/docker/docker/pkg/integration/checker"
 | 
			
		||||
	"github.com/go-check/check"
 | 
			
		||||
	"sort"
 | 
			
		||||
 | 
			
		||||
	"github.com/docker/docker/pkg/stringid"
 | 
			
		||||
	"github.com/go-check/check"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
func (s *DockerSuite) TestPsListContainersBase(c *check.C) {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -163,15 +163,6 @@ func (s *DockerSuite) TestRunWithoutNetworking(c *check.C) {
 | 
			
		|||
	if exitCode != 1 {
 | 
			
		||||
		c.Errorf("--net=none should've disabled the network; the container shouldn't have been able to ping 8.8.8.8")
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	// And then with the short form -n
 | 
			
		||||
	out, exitCode, err = dockerCmdWithError("run", "-n=false", image, "ping", count, "1", "8.8.8.8")
 | 
			
		||||
	if err != nil && exitCode != 1 {
 | 
			
		||||
		c.Fatal(out, err)
 | 
			
		||||
	}
 | 
			
		||||
	if exitCode != 1 {
 | 
			
		||||
		c.Errorf("-n=false should've disabled the network; the container shouldn't have been able to ping 8.8.8.8")
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
//test --link use container name to link target
 | 
			
		||||
| 
						 | 
				
			
			@ -209,10 +200,9 @@ func (s *DockerSuite) TestRunLinksContainerWithContainerId(c *check.C) {
 | 
			
		|||
 | 
			
		||||
// Issue 9677.
 | 
			
		||||
func (s *DockerSuite) TestRunWithDaemonFlags(c *check.C) {
 | 
			
		||||
	out, _, err := dockerCmdWithError("--exec-opt", "foo=bar", "run", "-i", "-t", "busybox", "true")
 | 
			
		||||
	out, _, err := dockerCmdWithError("--exec-opt", "foo=bar", "run", "-i", "busybox", "true")
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		if !strings.Contains(out, "must follow the 'docker daemon' command") && // daemon
 | 
			
		||||
			!strings.Contains(out, "flag provided but not defined: --exec-opt") { // no daemon (client-only)
 | 
			
		||||
		if !strings.Contains(out, "flag provided but not defined: --exec-opt") { // no daemon (client-only)
 | 
			
		||||
			c.Fatal(err, out)
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -189,11 +189,6 @@ func (s *DockerSuite) TestRunEchoStdoutWithCPUSharesAndMemoryLimit(c *check.C) {
 | 
			
		|||
	c.Assert(out, checker.Equals, "test\n", check.Commentf("container should've printed 'test'"))
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (s *DockerSuite) TestRunWithCpuset(c *check.C) {
 | 
			
		||||
	testRequires(c, cgroupCpuset)
 | 
			
		||||
	dockerCmd(c, "run", "--cpuset", "0", "busybox", "true")
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (s *DockerSuite) TestRunWithCpusetCpus(c *check.C) {
 | 
			
		||||
	testRequires(c, cgroupCpuset)
 | 
			
		||||
	dockerCmd(c, "run", "--cpuset-cpus", "0", "busybox", "true")
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -72,16 +72,15 @@ func Parse(cmd *flag.FlagSet, args []string) (*Config, *HostConfig, *flag.FlagSe
 | 
			
		|||
		flSecurityOpt       = opts.NewListOpts(nil)
 | 
			
		||||
		flLabelsFile        = opts.NewListOpts(nil)
 | 
			
		||||
		flLoggingOpts       = opts.NewListOpts(nil)
 | 
			
		||||
		flNetwork           = cmd.Bool([]string{"#n", "#-networking"}, true, "Enable networking for this container")
 | 
			
		||||
		flPrivileged        = cmd.Bool([]string{"#privileged", "-privileged"}, false, "Give extended privileges to this container")
 | 
			
		||||
		flPrivileged        = cmd.Bool([]string{"-privileged"}, false, "Give extended privileges to this container")
 | 
			
		||||
		flPidMode           = cmd.String([]string{"-pid"}, "", "PID namespace to use")
 | 
			
		||||
		flUTSMode           = cmd.String([]string{"-uts"}, "", "UTS namespace to use")
 | 
			
		||||
		flPublishAll        = cmd.Bool([]string{"P", "-publish-all"}, false, "Publish all exposed ports to random ports")
 | 
			
		||||
		flStdin             = cmd.Bool([]string{"i", "-interactive"}, false, "Keep STDIN open even if not attached")
 | 
			
		||||
		flTty               = cmd.Bool([]string{"t", "-tty"}, false, "Allocate a pseudo-TTY")
 | 
			
		||||
		flOomKillDisable    = cmd.Bool([]string{"-oom-kill-disable"}, false, "Disable OOM Killer")
 | 
			
		||||
		flContainerIDFile   = cmd.String([]string{"#cidfile", "-cidfile"}, "", "Write the container ID to the file")
 | 
			
		||||
		flEntrypoint        = cmd.String([]string{"#entrypoint", "-entrypoint"}, "", "Overwrite the default ENTRYPOINT of the image")
 | 
			
		||||
		flContainerIDFile   = cmd.String([]string{"-cidfile"}, "", "Write the container ID to the file")
 | 
			
		||||
		flEntrypoint        = cmd.String([]string{"-entrypoint"}, "", "Overwrite the default ENTRYPOINT of the image")
 | 
			
		||||
		flHostname          = cmd.String([]string{"h", "-hostname"}, "", "Container host name")
 | 
			
		||||
		flMemoryString      = cmd.String([]string{"m", "-memory"}, "", "Memory limit")
 | 
			
		||||
		flMemoryReservation = cmd.String([]string{"-memory-reservation"}, "", "Memory soft limit")
 | 
			
		||||
| 
						 | 
				
			
			@ -92,7 +91,7 @@ func Parse(cmd *flag.FlagSet, args []string) (*Config, *HostConfig, *flag.FlagSe
 | 
			
		|||
		flCPUShares         = cmd.Int64([]string{"#c", "-cpu-shares"}, 0, "CPU shares (relative weight)")
 | 
			
		||||
		flCPUPeriod         = cmd.Int64([]string{"-cpu-period"}, 0, "Limit CPU CFS (Completely Fair Scheduler) period")
 | 
			
		||||
		flCPUQuota          = cmd.Int64([]string{"-cpu-quota"}, 0, "Limit CPU CFS (Completely Fair Scheduler) quota")
 | 
			
		||||
		flCpusetCpus        = cmd.String([]string{"#-cpuset", "-cpuset-cpus"}, "", "CPUs in which to allow execution (0-3, 0,1)")
 | 
			
		||||
		flCpusetCpus        = cmd.String([]string{"-cpuset-cpus"}, "", "CPUs in which to allow execution (0-3, 0,1)")
 | 
			
		||||
		flCpusetMems        = cmd.String([]string{"-cpuset-mems"}, "", "MEMs in which to allow execution (0-3, 0,1)")
 | 
			
		||||
		flBlkioWeight       = cmd.Uint16([]string{"-blkio-weight"}, 0, "Block IO (relative weight), between 10 and 1000")
 | 
			
		||||
		flSwappiness        = cmd.Int64([]string{"-memory-swappiness"}, -1, "Tuning container memory swappiness (0 to 100)")
 | 
			
		||||
| 
						 | 
				
			
			@ -111,19 +110,19 @@ func Parse(cmd *flag.FlagSet, args []string) (*Config, *HostConfig, *flag.FlagSe
 | 
			
		|||
	cmd.Var(&flAttach, []string{"a", "-attach"}, "Attach to STDIN, STDOUT or STDERR")
 | 
			
		||||
	cmd.Var(&flBlkioWeightDevice, []string{"-blkio-weight-device"}, "Block IO weight (relative device weight)")
 | 
			
		||||
	cmd.Var(&flVolumes, []string{"v", "-volume"}, "Bind mount a volume")
 | 
			
		||||
	cmd.Var(&flLinks, []string{"#link", "-link"}, "Add link to another container")
 | 
			
		||||
	cmd.Var(&flLinks, []string{"-link"}, "Add link to another container")
 | 
			
		||||
	cmd.Var(&flDevices, []string{"-device"}, "Add a host device to the container")
 | 
			
		||||
	cmd.Var(&flLabels, []string{"l", "-label"}, "Set meta data on a container")
 | 
			
		||||
	cmd.Var(&flLabelsFile, []string{"-label-file"}, "Read in a line delimited file of labels")
 | 
			
		||||
	cmd.Var(&flEnv, []string{"e", "-env"}, "Set environment variables")
 | 
			
		||||
	cmd.Var(&flEnvFile, []string{"-env-file"}, "Read in a file of environment variables")
 | 
			
		||||
	cmd.Var(&flPublish, []string{"p", "-publish"}, "Publish a container's port(s) to the host")
 | 
			
		||||
	cmd.Var(&flExpose, []string{"#expose", "-expose"}, "Expose a port or a range of ports")
 | 
			
		||||
	cmd.Var(&flDNS, []string{"#dns", "-dns"}, "Set custom DNS servers")
 | 
			
		||||
	cmd.Var(&flExpose, []string{"-expose"}, "Expose a port or a range of ports")
 | 
			
		||||
	cmd.Var(&flDNS, []string{"-dns"}, "Set custom DNS servers")
 | 
			
		||||
	cmd.Var(&flDNSSearch, []string{"-dns-search"}, "Set custom DNS search domains")
 | 
			
		||||
	cmd.Var(&flDNSOptions, []string{"-dns-opt"}, "Set DNS options")
 | 
			
		||||
	cmd.Var(&flExtraHosts, []string{"-add-host"}, "Add a custom host-to-IP mapping (host:ip)")
 | 
			
		||||
	cmd.Var(&flVolumesFrom, []string{"#volumes-from", "-volumes-from"}, "Mount volumes from the specified container(s)")
 | 
			
		||||
	cmd.Var(&flVolumesFrom, []string{"-volumes-from"}, "Mount volumes from the specified container(s)")
 | 
			
		||||
	cmd.Var(&flCapAdd, []string{"-cap-add"}, "Add Linux capabilities")
 | 
			
		||||
	cmd.Var(&flCapDrop, []string{"-cap-drop"}, "Drop Linux capabilities")
 | 
			
		||||
	cmd.Var(&flGroupAdd, []string{"-group-add"}, "Add additional groups to join")
 | 
			
		||||
| 
						 | 
				
			
			@ -312,12 +311,15 @@ func Parse(cmd *flag.FlagSet, args []string) (*Config, *HostConfig, *flag.FlagSe
 | 
			
		|||
	}
 | 
			
		||||
 | 
			
		||||
	config := &Config{
 | 
			
		||||
		Hostname:        hostname,
 | 
			
		||||
		Domainname:      domainname,
 | 
			
		||||
		ExposedPorts:    ports,
 | 
			
		||||
		User:            *flUser,
 | 
			
		||||
		Tty:             *flTty,
 | 
			
		||||
		NetworkDisabled: !*flNetwork,
 | 
			
		||||
		Hostname:     hostname,
 | 
			
		||||
		Domainname:   domainname,
 | 
			
		||||
		ExposedPorts: ports,
 | 
			
		||||
		User:         *flUser,
 | 
			
		||||
		Tty:          *flTty,
 | 
			
		||||
		// TODO: deprecated, it comes from -n, --networking
 | 
			
		||||
		// it's still needed internally to set the network to disabled
 | 
			
		||||
		// if e.g. bridge is none in daemon opts, and in inspect
 | 
			
		||||
		NetworkDisabled: false,
 | 
			
		||||
		OpenStdin:       *flStdin,
 | 
			
		||||
		AttachStdin:     attachStdin,
 | 
			
		||||
		AttachStdout:    attachStdout,
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue