Files
docker-cli/components/cli
Sebastiaan van Stijn 6979911095 Fix --network-add adding duplicate networks
When adding a network using `docker service update --network-add`,
the new network was added by _name_.

Existing entries in a service spec are listed by network ID, which
resulted in the CLI not detecting duplicate entries for the same
network.

This patch changes the behavior to always use the network-ID,
so that duplicate entries are correctly caught.

Before this change;

    $ docker network create -d overlay foo
    $ docker service create --name=test --network=foo nginx:alpine
    $ docker service update --network-add foo test
    $ docker service inspect --format '{{ json .Spec.TaskTemplate.Networks}}' test
    [
      {
        "Target": "9ot0ieagg5xv1gxd85m7y33eq"
      },
      {
        "Target": "9ot0ieagg5xv1gxd85m7y33eq"
      }
    ]

After this change:

    $ docker network create -d overlay foo
    $ docker service create --name=test --network=foo nginx:alpine
    $ docker service update --network-add foo test
    service is already attached to network foo

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Upstream-commit: e6ebaf55dd
Component: cli
2018-01-09 20:42:09 +01:00
..
2017-11-02 16:50:38 +01:00
2018-01-03 10:23:32 +01:00
2017-12-26 11:22:32 +01:00
2018-01-03 10:23:32 +01:00
2017-10-31 15:21:51 +05:00
2017-10-12 11:48:51 -04:00
2018-01-02 17:00:22 +01:00
2018-01-02 17:00:22 +01:00
2018-01-02 17:00:22 +01:00
2017-12-26 11:22:32 +01:00
2018-01-03 10:23:32 +01:00
2017-07-28 11:33:19 -07:00
2018-01-02 17:00:22 +01:00
2017-08-16 10:46:43 -04:00
2017-11-02 16:50:38 +01:00
2018-01-02 17:00:22 +01:00
2017-09-15 15:08:28 +02:00
2017-08-24 14:45:50 -04:00
2017-12-07 13:58:06 -08:00

build status Build Status

docker/cli

This repository is the home of the cli used in the Docker CE and Docker EE products.

Development

docker/cli is developed using Docker.

Build a linux binary:

$ make -f docker.Makefile binary

Build binaries for all supported platforms:

$ make -f docker.Makefile cross

Run all linting:

$ make -f docker.Makefile lint

List all the available targets:

$ make help

In-container development environment

Start an interactive development environment:

$ make -f docker.Makefile shell

In the development environment you can run many tasks, including build binaries:

$ make binary

Legal

Brought to you courtesy of our legal counsel. For more context, please see the NOTICE document in this repo.

Use and transfer of Docker may be subject to certain restrictions by the United States and other governments.

It is your responsibility to ensure that your use and/or transfer does not violate applicable laws.

For more information, please see https://www.bis.doc.gov

Licensing

docker/cli is licensed under the Apache License, Version 2.0. See LICENSE for the full license text.