Commit Graph
324 Commits
Author SHA1 Message Date
Madhu Venugopal 44d165415d Added Network Watch support
Signed-off-by: Madhu Venugopal <madhu@docker.com>
2015-05-25 16:29:39 -07:00
Madhu Venugopal 83916aeab7 Initial kv store integration and datastore implementation
Signed-off-by: Madhu Venugopal <madhu@docker.com>
2015-05-25 16:29:34 -07:00
Madhu Venugopal d9f944560b Updating Godep to reuse Swarm discovery and store packages
Signed-off-by: Madhu Venugopal <madhu@docker.com>
2015-05-25 16:03:33 -07:00
Jana Radhakrishnan 4949f4c4ed Merge pull request #213 from baoyonglei/bugfix
Fix createTestNetwork bug
2015-05-25 10:14:40 -07:00
Jana Radhakrishnan 013837b129 Merge pull request #215 from fmzhen/test-dev
fixed some typos
2015-05-25 10:08:08 -07:00
Mingzhen Feng f6a2b78035 fixed some typos
Signed-off-by: Mingzhen Feng <fmzhen@zju.edu.cn>
2015-05-25 21:08:53 +08:00
Jana Radhakrishnan 8a1576caad Merge pull request #209 from mavenugo/fixapi
Added API support for both /vx.x/networks & /networks
2015-05-24 21:37:41 -07:00
Jana Radhakrishnan 472d0dec73 Merge pull request #172 from junxu/master
Fix RemoveInterface in sandbox
2015-05-24 20:12:24 -07:00
junxu ea5cfb6cf6 Fix RemoveInterface in sandbox
The networkNamespace will record all interfaces joined into this sandbox.
While RremoveInterface func does't remove the leaved interfaces.

Signed-off-by: junxu <xujun@cmss.chinamobile.com>
2015-05-25 01:53:24 +00:00
Jana Radhakrishnan 738d8b4cb0 Merge pull request #210 from aboch/lb
In bridge, network config to be validated last
2015-05-24 16:40:34 -07:00
Madhu Venugopal e621f0760b Added API support for both /vx.x/networks & /networks
In one of the previous commit, we went to the extreme of supporting just
the /{version}/networks. Though that satisfied the requirements for UI
integration, it is not fully consistent with Docker APIs.
Docker API supports both /{version}/resource and /resource and hence we
must add the same support for networks resource.

Also fixed a silly bug in api.go

Signed-off-by: Madhu Venugopal <madhu@docker.com>
2015-05-24 15:17:47 -07:00
Alessandro Boch fe8d356dde In bridge, network config to be validated last
- Currently validation is run before the processing
  of well-known labels is completed.

Signed-off-by: Alessandro Boch <aboch@docker.com>
2015-05-24 12:01:55 -07:00
Madhu Venugopal 7c289ef5f4 Merge pull request #202 from aboch/mn
Bridge driver to support multiple networks
2015-05-24 08:21:19 -07:00
Alessandro Boch cb73df3d60 Bridge driver to support multiple networks
Signed-off-by: Alessandro Boch <aboch@docker.com>
2015-05-24 07:59:34 -07:00
Jana Radhakrishnan 42dcd5a878 Merge pull request #199 from aboch/rest
Support network options in rest api
2015-05-23 22:06:21 -07:00
Alessandro Boch 9f2286349b Support network options in rest api
- Also unexporting configuration structures in bridge
- Changes in dnet/network.go to set bridge name = network name

Signed-off-by: Alessandro Boch <aboch@docker.com>
2015-05-23 20:12:29 -07:00
Jana Radhakrishnan 3561640373 Merge pull request #200 from codergr/orthographic-corrections2
Proofing design and bridge documentations
2015-05-23 18:04:51 -07:00
Jana Radhakrishnan 6743808072 Merge pull request #206 from mavenugo/experimental
Moved all the service commands under experimental build tag
2015-05-23 18:02:57 -07:00
Jana Radhakrishnan 8b61195508 Merge pull request #205 from mavenugo/api_version
Added a catch-all root hierarchy for the API path
2015-05-23 18:02:10 -07:00
Madhu Venugopal 74c93b8c68 UI formatting applied on top of Experimental Service PR
Thanks to @nerdalert for the contribution via #203.

Signed-off-by: Madhu Venugopal <madhu@docker.com>
2015-05-23 16:00:42 -07:00
Madhu Venugopal ed7cba986e Moved all the service commands under experimental build tag
In order to support the docker experimental feature build, moving the
service commands under experimental tag. Please refer to :
https://github.com/docker/docker/pull/13338/ for more information

Signed-off-by: Madhu Venugopal <madhu@docker.com>
2015-05-23 13:05:48 -07:00
Madhu Venugopal 377066c62c Added a catch-all root hierarchy for the API path
Though libnetwork api is supposed to handle the sub router, it is given
the entire URL to deal with. But the current api.go assumes the network/
to be in the root path.
We need this patch to make it work seamlessly with docker & dnet UI & API

Signed-off-by: Madhu Venugopal <madhu@docker.com>
2015-05-23 12:20:30 -07:00
Madhu Venugopal ba22b50a6a Merge pull request #195 from LK4D4/dummyproxy
Add dummy proxy on port map
2015-05-22 13:53:15 -07:00
Alexander Morozov 198f0ef7cf Add dummy proxy on port map
It is needed in cases when mapped port is already bound, or another
application bind mapped port. All this will be undetected because we use
iptables and not net.Listen.

Signed-off-by: Alexander Morozov <lk4d4@docker.com>
2015-05-22 12:38:28 -07:00
Sotiris Salloumis 6b76c267d5 Orthographic corrections
Signed-off-by: Sotiris Salloumis <sotiris.salloumis@gmail.com>

Added notes from dave-tucker

Signed-off-by: Sotiris Salloumis <sotiris.salloumis@gmail.com>

Added Proofing design documentation input from dereckson

Signed-off-by: Sotiris Salloumis <sotiris.salloumis@gmail.com>
2015-05-22 20:19:34 +02:00
Jana Radhakrishnan 429678548b Merge pull request #196 from mavenugo/api-changes
Modified Client to make use of the corrected REST API & service endpoint support
2015-05-22 11:02:07 -07:00
Madhu Venugopal 3892c2db42 Service endpoint UI support
Signed-off-by: Madhu Venugopal <madhu@docker.com>
2015-05-22 09:53:24 -07:00
Madhu Venugopal 1f0f737948 Adding support for network/id/endpoints in api
Signed-off-by: Madhu Venugopal <madhu@docker.com>
2015-05-22 09:53:19 -07:00
Madhu Venugopal 17bfe1f3f5 Modified Client to make use of the corrected REST API
Also supporting name, id & partial-id lookups for all the network
commands

Signed-off-by: Madhu Venugopal <madhu@docker.com>
2015-05-21 17:38:40 -07:00
Jana Radhakrishnan 3253d89aed Merge pull request #194 from aboch/rest
REST API: Support query by partial id
2015-05-21 14:56:46 -07:00
Alessandro Boch 3dec1a68e0 REST API: Support query by partial id
- for networks and endpoints

Signed-off-by: Alessandro Boch <aboch@docker.com>
2015-05-21 14:37:21 -07:00
Madhu Venugopal bc56eb5053 Merge pull request #193 from mrjana/cnm
Modify driver Join api to only allow dst prefix
2015-05-21 13:58:22 -07:00
Jana Radhakrishnan 647975a330 Modify driver Join api to only allow dst prefix
Currently the driver api allows the driver to specify the
full interface name for the interface inside the container.
This is not appropriate since the driver does not have the full
view of the sandbox to correcly allocate an unambiguous interface
name. Instead with this PR the driver will be allowed to specify
a prefix for the name and libnetwork and sandbox layers will
disambiguate it with an appropriate suffix.

Signed-off-by: Jana Radhakrishnan <mrjana@docker.com>
2015-05-21 20:17:44 +00:00
Madhu Venugopal eb8273e466 Merge pull request #162 from squaremo/net-plugin
Implement remote driver
2015-05-21 12:10:56 -07:00
Michael Bridgen b18eff4940 Remote driver implementation
In essense, this just involves marshalling structs back and forth to a
remote process, via the plugin client. There are a couple of types
that don't JSONify well, notably `net.IPNet`, so there is some
translation to be done.

To conform to the driverapi interface, we must give the list of
endpoint interfaces to the remote process, and let it puzzle out what
it's supposed to do; including the possibility of returning an error.

The constraints on EndpointInfo are enforced by the remote driver
implementation; namely:

 * It can't be nil

 * If it's got non-empty Interfaces(), the remote process can't put
   more in

In the latter case, or if we fail to add an interface for some
(future) reason, we try to roll the endpoint creation back. Likewise
for join -- if we fail to set the fields of the JoinInfo, we roll the
join back by leaving.

Signed-off-by: Michael Bridgen <mikeb@squaremobius.net>
2015-05-21 19:32:41 +01:00
Jana Radhakrishnan 6a48128ebc Merge pull request #191 from mavenugo/master
Revert "Added more test coverage for portmapper package."
2015-05-21 10:57:21 -07:00
Madhu Venugopal 7c707bc574 Revert "Added more test coverage for portmapper package."
This reverts commit 1d34250950.

Signed-off-by: Madhu Venugopal <madhu@docker.com>
2015-05-21 10:39:14 -07:00
Jana Radhakrishnan 9909a379b9 Merge pull request #190 from aboch/rest
Fix test failure in api
2015-05-21 10:22:24 -07:00
Alessandro Boch 1bf2e96b08 Fix test failure in api
- Happened during merge

Signed-off-by: Alessandro Boch <aboch@docker.com>
2015-05-21 09:59:35 -07:00
Jana Radhakrishnan 4a6f3c2377 Merge pull request #163 from aboch/eorr
Provide interface to categorize errors
2015-05-21 09:09:15 -07:00
Madhu Venugopal fc02890e06 Merge pull request #179 from aboch/rest
Changes in rest api
2015-05-21 03:51:51 -07:00
Madhu Venugopal 9fa618958a Merge pull request #153 from nerdalert/brent-link-fix
fixing a link in design.md
2015-05-21 01:39:28 -07:00
Alessandro Boch 50964c9948 Provide interface to categorize errors
- Package types to define the interfaces libnetwork errors
  may implement, so that caller can categorize them.

Signed-off-by: Alessandro Boch <aboch@docker.com>
2015-05-20 22:29:29 -07:00
Alessandro Boch 39888c3836 Changes in rest api
- Fix POST to collection
- Only resource ID in URI, search by name as query parameter
- Fix URLs, consistency and restrict regex

Signed-off-by: Alessandro Boch <aboch@docker.com>
2015-05-20 16:44:06 -07:00
Madhu Venugopal e2bdf92d6b Merge pull request #187 from mrjana/cross
Move network types to types package
2015-05-20 14:03:52 -07:00
Jana Radhakrishnan 7783fcd13f Move network types to types package
This is need to decouple types from netutils which has linux
dependencies. This way the client code which needs network types
can just pull in types package which makes client code platform
agnostic.

Signed-off-by: Jana Radhakrishnan <mrjana@docker.com>
2015-05-20 20:28:46 +00:00
Madhu Venugopal b39597744b Merge pull request #182 from mrjana/cnm_integ
Fix /etc/resolv.conf permission issue
2015-05-19 22:57:58 -07:00
Jana Radhakrishnan a5ed1b5bd4 Fix /etc/resolv.conf permission issue
The container's /etc/resolv.conf permission was getting setup
as 0600 while it should be 0644 for every user inside the
container to be able to read it. The tempfile that we create
initially to populate the resolvconf content is getting created
with 0600 mode. Changed it to 0644 once it is created since there
is noway to pass mode option to ioutil.Tempfile

Signed-off-by: Jana Radhakrishnan <mrjana@docker.com>
2015-05-20 05:46:30 +00:00
Jana Radhakrishnan a02aac8e0b Merge pull request #178 from mavenugo/master
Porting https://github.com/docker/docker/pull/12437
v0.2
2015-05-19 15:35:30 -07:00
Madhu Venugopal 7308fd4489 Porting https://github.com/docker/docker/pull/12437
Signed-off-by: Madhu Venugopal <madhu@docker.com>
2015-05-19 15:28:48 -07:00