Olivier Gambier
5cd308f829
Merge pull request #1 from icecrime/import-next-generation
...
Import docker-registry/next-generation branch
2014-12-23 15:54:09 -08:00
Arnaud Porterie
ae55a8232f
Import next-generation branch
...
Signed-off-by: Arnaud Porterie <arnaud.porterie@docker.com>
2014-12-23 15:32:00 -08:00
Olivier Gambier
5176c3e6b4
Initial commit
2014-12-22 15:49:26 -08:00
Olivier Gambier
e8650d20a1
Merge pull request #867 from stevvooe/next-generation
...
Ensure that unset Context.Name only allowed on base route
2014-12-18 17:35:39 -08:00
Stephen J Day
b1f36c3fe5
Ensure that unset Context.Name only allowed on base route
...
If Context.Name is not set, the acceess controller may allow an unintended
request through. By only allowing a request to proceed without a name on the
base route, we provide some protection if future bugs forget to set the context
properly.
2014-12-18 17:25:06 -08:00
Olivier Gambier
e50fcc0ab9
Merge pull request #862 from jlhawn/ng_auth_package
...
Refactor token verification to support x5c header
2014-12-18 15:18:07 -08:00
Olivier Gambier
5b23de4177
Merge pull request #865 from stevvooe/next-generation
...
Integrate auth.AccessController into registry app
2014-12-18 15:04:55 -08:00
Stephen J Day
d0a9e9b475
Integrate auth.AccessController into registry app
...
This changeset integrates the AccessController into the main registry app. This
includes support for configuration and a test implementation, called "silly"
auth. Auth is only enabled if the configuration is present but takes measure to
ensure that configuration errors don't allow the appserver to start with open
access.
2014-12-18 12:34:56 -08:00
Stephen Day
3b8847f489
Merge pull request #863 from BrianBland/ng-storagedriver
...
Fixes filesystem storage driver List semantics for nonexistent directory
2014-12-18 10:47:31 -08:00
Stephen Day
e20c6ea4fb
Merge pull request #861 from BrianBland/ng-configuration
...
Genericizes the yaml+environment versioned configuration parser
2014-12-18 10:44:25 -08:00
Stephen Day
e847c27b80
Merge pull request #858 from docker/CI
...
Multi-go test
2014-12-18 10:39:21 -08:00
Brian Bland
030b0ff310
Allows storagedriver parameter values to be of type interface{}
...
This enables use of nil, booleans, numeric types, and even complex structures for parameter values, assuming they can be parsed from yaml.
2014-12-17 19:06:55 -08:00
Olivier Gambier
e600f7ccb7
Erm
2014-12-17 18:14:25 -08:00
Brian Bland
bc8ab9b392
Fixes filesystem storage driver List semantics for nonexistent directory
...
Now returns a PathNotFoundError
2014-12-17 17:00:18 -08:00
Josh Hawn
4c42477abf
Refactored out usage of strconv.Quote()
...
Docker-DCO-1.1-Signed-off-by: Josh Hawn <josh.hawn@docker.com> (github: jlhawn)
2014-12-17 16:16:02 -08:00
Josh Hawn
2e3af8efcf
Refactor token verification to support x5c header
...
Docker-DCO-1.1-Signed-off-by: Josh Hawn <josh.hawn@docker.com> (github: jlhawn)
2014-12-17 16:12:57 -08:00
Brian Bland
f9b119974d
Genericizes the yaml+environment versioned configuration parser
...
Registry configuration parsing uses the new parser with a single version
declaration and an environment prefix of "REGISTRY"
2014-12-17 14:22:02 -08:00
Stephen Day
3c0dbe2595
Merge pull request #859 from jlhawn/ng_auth_package
...
Adds auth package with token auth backend
2014-12-17 14:03:30 -08:00
Josh Hawn
b54bf450dc
Fixes typo on auth/token VerifyOptions field
...
Docker-DCO-1.1-Signed-off-by: Josh Hawn <josh.hawn@docker.com> (github: jlhawn)
2014-12-17 12:16:32 -08:00
Stephen Day
d92a6cc12e
Merge pull request #860 from BrianBland/next-generation
...
Fixes Dockerfile "go get" command
2014-12-17 12:08:54 -08:00
Brian Bland
454d4e918a
Fixes Dockerfile "go get" command
...
Now pulls down all dependencies for registry sub-packages
2014-12-17 12:04:18 -08:00
Josh Hawn
d30a8321d8
Address auth package comments from stevvooe
...
Docker-DCO-1.1-Signed-off-by: Josh Hawn <josh.hawn@docker.com> (github: jlhawn)
2014-12-17 11:35:35 -08:00
Stephen Day
b3b5b48b88
Merge pull request #856 from BrianBland/ng-hooks
...
Adds pre-commit hook, hook config script, and relevant README
2014-12-17 11:11:23 -08:00
Stephen Day
0261fe4e21
Merge pull request #857 from BrianBland/ng-benchmarks
...
Adds benchmarks for Put/Get, WriteStream/ReadStream, List, and Delete
2014-12-17 11:09:55 -08:00
Josh Hawn
88de2e11fb
Refactor auth stringSet into common.StringSet
...
Docker-DCO-1.1-Signed-off-by: Josh Hawn <josh.hawn@docker.com> (github: jlhawn)
2014-12-17 10:57:05 -08:00
Josh Hawn
56f685c0dd
Adds auth package with token auth backend
...
Docker-DCO-1.1-Signed-off-by: Josh Hawn <josh.hawn@docker.com> (github: jlhawn)
2014-12-16 23:14:12 -08:00
Olivier Gambier
26d5bece6b
Multi-go test
2014-12-16 16:56:10 -08:00
Brian Bland
a7b8e4fda0
Adds benchmarks for Put/Get, WriteStream/ReadStream, List, and Delete
...
Also fixes an open fd leak in the filesystem driver that these
benchmarks revealed.
2014-12-16 13:00:29 -08:00
Stephen Day
15ecd3b3e9
Merge pull request #855 from BrianBland/ng-configuration
...
Allows HTTP bind address to be overridden by an environment variable
2014-12-15 18:27:20 -08:00
Brian Bland
1a6893dbb6
Adds pre-commit hook, hook config script, and a README
...
The pre-commit hook will automatically gofmt code in place, warning you
about any changes. It will also fail to commit if either golint or go
vet fails.
2014-12-15 18:09:11 -08:00
Olivier Gambier
049bf61912
Fix test
2014-12-15 17:41:30 -08:00
Brian Bland
c51ea97234
Allows HTTP bind address to be overridden by an environment variable
...
Uses REGISTRY_HTTP_ADDR
2014-12-15 14:17:51 -08:00
Olivier Gambier
a35273a0db
Merge pull request #854 from stevvooe/next-generation
...
NG: Use filesystem driver in default configuration
2014-12-15 13:53:53 -08:00
Stephen J Day
6e846d6b29
Use filesystem driver in default configuration
2014-12-15 11:53:52 -08:00
Olivier Gambier
55b49254a0
Merge pull request #848 from stevvooe/next-generation
...
Relax requirement for size argument during blob upload
2014-12-13 15:59:04 -08:00
Stephen J Day
fc7b47cdae
Port client to use URLBuilder to create urls
...
This change ports the client use the URLBuilder to create urls. Without this,
it produces broken urls for certain use cases. The client has also been updated
to no longer use the size argument to complete blob uploads. Much of this work
has been done after testing with the staging registry instance.
2014-12-12 19:09:26 -08:00
Stephen J Day
a4f42b8eea
Relax requirement for size argument during blob upload
...
During client implementation, it was found that requiring the size argument
made client implementation more complex. The original benefit of the size
argument was to provide an additional check alongside of tarsum to validate
incoming data. For the purposes of the registry, it has been determined that
tarsum should be enough to validate incoming content.
At this time, the size check is optional but we may consider removing it
completely.
2014-12-12 19:08:50 -08:00
Stephen Day
8fd47c1c18
Merge pull request #849 from BrianBland/ng-error-reporting
...
Adds bugsnag and newrelic metrics and error reporting
2014-12-12 18:29:25 -08:00
Brian Bland
cd057fd120
Updates configuration tests for bugsnag and newrelic params
2014-12-12 18:05:37 -08:00
Brian Bland
43a50b5e82
Adds bugsnag and newrelic metrics and error reporting
...
Configuration variables are added under the REGISTRY_REPORTING
namespace, for example REGISTRY_REPORTING_BUGSNAG_APIKEY
2014-12-12 17:49:06 -08:00
Olivier Gambier
d726630ad0
Merge pull request #846 from stevvooe/next-generation
...
Consolidate routes and error codes into v2 package
2014-12-12 17:17:24 -08:00
Stephen J Day
3916938481
Add tests for URLBuilder
2014-12-12 15:48:41 -08:00
Stephen J Day
bb300231d0
Allow variadic url values for BuildBlobUploadURL
...
URL values may be required to complete an upload in a single POST request,
which may include digest and size. This is not implemented in the server side,
yet, but is part of the HTTP API specification.
2014-12-12 15:36:16 -08:00
Stephen J Day
d08f0edcf1
Migrate references to consolidated v2 package
...
Routes and errors are now all referenced from a single v2 package. This
packages exports are acceptable for use in the server side as well as
integration into docker core.
2014-12-12 15:36:15 -08:00
Stephen J Day
5abfc91021
Merge errors and urls package into unified v2 package
...
To provide a single package with v2 API definitions, the locked down portions
of the API have been merged into a single package. References to exported items
will appear as v2.XXX, indicating their origin. The definitions in this package
will soon be locked down for change, acceppting only additions that will not
change protocol behavior.
2014-12-12 15:36:15 -08:00
Stephen J Day
92dca269f0
Change errors export from Descriptors to ErrorDescriptors
2014-12-12 15:36:15 -08:00
Stephen J Day
e14e5d14b1
Correct documentation errors in urls package
2014-12-12 15:36:15 -08:00
Stephen J Day
83f882b427
Migrate webapp to use exported urls.URLBuilder package
2014-12-12 15:36:15 -08:00
Stephen J Day
9b872ca150
Prepare urls.URLBuilder package for export
...
The URLBuilder is now exported with documentation for its behavior. Its a light
wrapper around gorilla mux that avoids one having to remember exact arguments
take by each route.
2014-12-12 15:36:15 -08:00
Stephen J Day
e5b6da80d0
Move urls.go into urls package
2014-12-12 15:36:15 -08:00