Commit Graph

22 Commits

Author SHA1 Message Date
93c2a19d83 Add user namespace (mapping) support to the Docker engine
Adds support for the daemon to handle user namespace maps as a
per-daemon setting.

Support for handling uid/gid mapping is added to the builder,
archive/unarchive packages and functions, all graphdrivers (except
Windows), and the test suite is updated to handle user namespace daemon
rootgraph changes.

Docker-DCO-1.1-Signed-off-by: Phil Estes <estesp@linux.vnet.ibm.com> (github: estesp)
Upstream-commit: 442b45628ee12ebd8e8bd08497896d5fa8eec4bd
Component: engine
2015-10-09 17:47:37 -04:00
f079e61160 Merge pull request #16493 from cpuguy83/doc_plugin_rpcgen
Add README for pluginrpc-gen
Upstream-commit: 8f7f0f8deb95804eef95b572c53721ea1d0199d9
Component: engine
2015-09-23 15:36:05 -04:00
b761cfeb67 Add README for pluginrpc-gen
Signed-off-by: Brian Goff <cpuguy83@gmail.com>
Upstream-commit: 7acd3ca79d2b13500ca3f53a567cb87fddd4a543
Component: engine
2015-09-22 19:34:44 -04:00
5a458f78ee Move volume ref counting store to a package.
- Add unit tests to make sure the functionality is correct.
- Add FilterByDriver to allow filtering volumes by driver, for future
  `volume ls` filtering and whatnot.

Signed-off-by: David Calavera <david.calavera@gmail.com>
Upstream-commit: 72bb56618b522fc3cece7cfd706c56296824673d
Component: engine
2015-09-21 12:46:49 -04:00
9f76426e0b Windows: Enabled docker volume
Signed-off-by: John Howard <jhoward@microsoft.com>
Upstream-commit: 42a46ed1a4cd1a6116b3bc5018c29c80db93f928
Component: engine
2015-09-16 14:33:13 -07:00
8ad4ad2e7a Unexport VolumeDriver.
This is not a public interface and users are trying to use it.
We only use it to be able to generate the rpc protocol to talk with a plugin.

Signed-off-by: David Calavera <david.calavera@gmail.com>
Upstream-commit: 69dde5c0759a9ce686d9b10eb160e6d561322409
Component: engine
2015-09-11 18:19:38 -04:00
52da61961a Ignore stat errors on volume rm.
Underlying volume data may have been removed by some other tool.
Ignore and remove the reference in this case.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
Upstream-commit: 8d27417bfeff316346d00c07a456b0e1b056e788
Component: engine
2015-09-08 22:01:02 -04:00
bfe1bbc7d2 Add volume API/CLI
Signed-off-by: Brian Goff <cpuguy83@gmail.com>
Upstream-commit: b3b7eb2723461b1eb4be692f4bced0ae8ea9cb58
Component: engine
2015-08-26 13:37:52 -04:00
a8c00ae391 Change return value for ValidateMountMode
1. rename it from ValidateMountMode to ValidMountMode
Because it's a function simply check mount mode is valid or not.
2. remove the rw check return value
It's not supposed to be combined into this function, and we already
have a function for that check.

Signed-off-by: Qiang Huang <h.huangqiang@huawei.com>
Upstream-commit: c99ed5ae5d0a9167ead73a798b02600ad40651f2
Component: engine
2015-08-24 17:28:19 +08:00
3ee024f425 Don't globally lock on driver initialization
This patch makes it such that plugin initialization is synchronized
based on the plugin name and not globally

Signed-off-by: Darren Shepherd <darren@rancher.com>
Upstream-commit: 164208fde5f1d4bcc4d75333e3309b678edac985
Component: engine
2015-08-18 22:25:30 -07:00
cdd8f67046 lint fixes for volume/*
- comments on exported values
 - constant string replaced by constant reference
 - unexport implementation details of VolumeDriver 'local'
 - add fixed packages to linter list

Signed-off-by: Morgan Bauer <mbauer@us.ibm.com>
Upstream-commit: 9af963aba032d65bb37eafbbe7cafedfc234edf6
Component: engine
2015-07-28 10:40:44 -07:00
9ec8332d92 Fix read-write check for volumes.
Signed-off-by: David Calavera <david.calavera@gmail.com>
Upstream-commit: 82a54001fdbd3d0c9bcdab1b5caf0a6c6c8079be
Component: engine
2015-07-14 15:50:43 -07:00
22ed49846c Add test coverage to opts and refactor
- Refactor opts.ValidatePath and add an opts.ValidateDevice
  ValidePath will now accept : containerPath:mode, hostPath:containerPath:mode
  and hostPath:containerPath.
  ValidateDevice will have the same behavior as current.

- Refactor opts.ValidateEnv, opts.ParseEnvFile
  Environment variables will now be validated with the following
  definition :
  > Environment variables set by the user must have a name consisting
  > solely of alphabetics, numerics, and underscores - the first of
  > which must not be numeric.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Upstream-commit: dfc6c04fa3f7dcb0e78e9dd5e8e4dd285b98546d
Component: engine
2015-07-12 10:33:30 +02:00
33df474b64 Merge pull request #13835 from cpuguy83/gen-prc
generate plugin clients via template
Upstream-commit: 806b3fa14529a97dfad8fad8ed2a21b26de94492
Component: engine
2015-07-07 17:17:39 -07:00
7b3bea6e05 Plugins JSON spec.
Allow full configuration of external plugins via a JSON document.

Signed-off-by: David Calavera <david.calavera@gmail.com>
Upstream-commit: 333ac3a3eb09c29c42fe2cea1680621700b67b2f
Component: engine
2015-06-29 10:32:18 -07:00
8ebaf0bd05 use go-generate to build volume/driver/proxy.go
Signed-off-by: Brian Goff <cpuguy83@gmail.com>
Upstream-commit: 88e4dff9a966485413d4acc1ecd99de6a6574e10
Component: engine
2015-06-10 11:42:15 -04:00
438dab23c9 Merge pull request #13699 from calavera/volume_backwards
Allow to downgrade local volumes from > 1.7 to 1.6.
Upstream-commit: 55bdb51659b3982ae78cd24ed0823f6b8d0bb9b2
Component: engine
2015-06-09 19:51:06 -07:00
416f8a0f5b Allow to downgrade local volumes from > 1.7 to 1.6.
Signed-off-by: David Calavera <david.calavera@gmail.com>
Upstream-commit: bd9814f0db9c8a087e42b66eabb8413bf1b2ab66
Component: engine
2015-06-09 18:04:59 -07:00
1552ac1282 Fix volume plugin serialization.
Unmarshal errors into strings.
Fix `omit` typos.

Signed-off-by: David Calavera <david.calavera@gmail.com>
Upstream-commit: 30448166deca62e1f3a43f8e86cd02244b499344
Component: engine
2015-06-09 10:39:46 -07:00
fd9e9a6b5b Propagate unmount events to the external volume drivers.
Signed-off-by: David Calavera <david.calavera@gmail.com>
Upstream-commit: d592778f4a75d36745aaffaf73c0775ecd420545
Component: engine
2015-05-22 16:43:34 -07:00
778241cd3a Make API volume-driver dependent on 'experimental'
Signed-off-by: Arnaud Porterie <arnaud.porterie@docker.com>
Upstream-commit: 2653c7c16cf87029c7e2e35427fbd1c83a0c96ba
Component: engine
2015-05-21 20:34:17 -07:00
89782c55eb Volumes refactor and external plugin implementation.
Signed by all authors:

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
Signed-off-by: Arnaud Porterie <arnaud.porterie@docker.com>
Signed-off-by: David Calavera <david.calavera@gmail.com>
Signed-off-by: Jeff Lindsay <progrium@gmail.com>
Signed-off-by: Alexander Morozov <lk4d4@docker.com>
Signed-off-by: Luke Marsden <luke@clusterhq.com>
Signed-off-by: David Calavera <david.calavera@gmail.com>
Upstream-commit: 81fa9feb0cdc0773eff99d7393c16271e84aac08
Component: engine
2015-05-21 20:34:17 -07:00