1
0
Fork 0
mirror of https://github.com/moby/moby.git synced 2022-11-09 12:21:53 -05:00
moby--moby/pkg
Anusha Ragunathan fefea805e9 Make graphdrivers work with pluginv2.
As part of making graphdrivers support pluginv2, a PluginGetter
interface was necessary for cleaner separation and avoiding import
cycles.

This commit creates a PluginGetter interface and makes pluginStore
implement it. Then the pluginStore object is created in the daemon
(rather than by the plugin manager) and passed to plugin init as
well as to the different subsystems (eg. graphdrivers, volumedrivers).
A side effect of this change was that some code was moved out of
experimental. This is good, since plugin support will be stable soon.

Signed-off-by: Anusha Ragunathan <anusha@docker.com>
2016-09-20 08:49:48 -07:00
..
aaparser apparmor: do not save profile to /etc/apparmor.d 2016-09-13 16:25:16 +10:00
archive fix racy tests in pkg/archive 2016-09-14 04:17:23 +00:00
authorization Fix AuthZ plugins headers change issue 2016-08-23 21:08:23 -07:00
broadcaster
chrootarchive Use real chroot if daemon is running in a user namespace 2016-08-12 16:31:01 -04:00
devicemapper devmapper: prevent libdevmapper from deleting device symlinks in RemoveDeviceDeferred 2016-08-23 23:58:53 +08:00
directory
discovery
filenotify
fileutils
gitutils
graphdb
homedir
httputils
idtools Don't start daemon in userns mode if graphdir inaccessible 2016-08-24 11:25:30 -04:00
integration fix races in pkg/integration/cmd 2016-09-13 04:23:36 +00:00
ioutils Merge pull request #25523 from dmcgowan/fsync-layer-filestore 2016-09-08 10:03:12 -07:00
jsonlog
jsonmessage Extract stream output handling to a new type. 2016-09-08 12:33:41 -04:00
listeners
locker
longpath
loopback
mount
namesgenerator Add Joan Clarke to name collection 2016-08-24 01:58:48 -07:00
parsers Fix TestUpdateKernelMemoryUninitialized on new kernel version 2016-08-02 13:17:20 +08:00
pidfile
platform Windows: stats support 2016-09-16 11:56:15 -07:00
plugins Make graphdrivers work with pluginv2. 2016-09-20 08:49:48 -07:00
pools
progress progress: Rate limit progress bar output 2016-09-14 17:23:16 -07:00
promise
pubsub
random
reexec make more pkgs support darwin 2016-08-10 22:56:05 +08:00
registrar
signal Replace api/client imports with cli/command in experimental files. 2016-09-08 15:46:48 -04:00
stdcopy
streamformatter
stringid
stringutils Implement stringutils.Ellipsis() 2016-08-11 14:14:06 +02:00
symlink Don't attempt to evaluate drive root on Windows 2016-09-08 13:52:54 -07:00
sysinfo make more pkgs support darwin 2016-08-10 22:56:05 +08:00
system Add system.Stat support for darwin/macOS 2016-08-24 11:25:26 -04:00
tailfile
tarsum add defer file.Close to avoid potential fd leak 2016-08-10 08:36:09 +08:00
term Merge pull request #25578 from rwilliams/conemu 2016-09-08 11:12:33 -04:00
testutil Add testutil/tempfile 2016-08-25 13:09:03 -04:00
tlsconfig tlsconfig: move Clone into proper package 2016-09-09 12:05:17 -07:00
truncindex
urlutil
useragent
README.md

pkg/ is a collection of utility packages used by the Docker project without being specific to its internals.

Utility packages are kept separate from the docker core codebase to keep it as small and concise as possible. If some utilities grow larger and their APIs stabilize, they may be moved to their own repository under the Docker organization, to facilitate re-use by other projects. However that is not the priority.

The directory pkg is named after the same directory in the camlistore project. Since Brad is a core Go maintainer, we thought it made sense to copy his methods for organizing Go code :) Thanks Brad!

Because utility packages are small and neatly separated from the rest of the codebase, they are a good place to start for aspiring maintainers and contributors. Get in touch if you want to help maintain them!