github.com/guilhermebr/docker@v1.4.2-0.20150428121140-67da055cebca/api/client/rename.go (about)

     1  package client
     2  
     3  import "fmt"
     4  
     5  // CmdRename renames a container.
     6  //
     7  // Usage: docker rename OLD_NAME NEW_NAME
     8  func (cli *DockerCli) CmdRename(args ...string) error {
     9  	cmd := cli.Subcmd("rename", "OLD_NAME NEW_NAME", "Rename a container", true)
    10  	if err := cmd.Parse(args); err != nil {
    11  		return nil
    12  	}
    13  
    14  	if cmd.NArg() != 2 {
    15  		cmd.Usage()
    16  		return nil
    17  	}
    18  	oldName := cmd.Arg(0)
    19  	newName := cmd.Arg(1)
    20  
    21  	if _, _, err := readBody(cli.call("POST", fmt.Sprintf("/containers/%s/rename?name=%s", oldName, newName), nil, nil)); err != nil {
    22  		fmt.Fprintf(cli.err, "%s\n", err)
    23  		return fmt.Errorf("Error: failed to rename container named %s", oldName)
    24  	}
    25  	return nil
    26  }