mirror of
https://github.com/distribution/distribution.git
synced 2025-09-24 12:37:00 +00:00
Update registry to use WithName for creating Named values
The registry uses partial Named values which the named parsers no longer support. To allow the registry service to continue to operate without canonicalization, switch to use WithName. In the future, the registry should start using fully canonical values on the backend and WithName should no longer support creating partial values. Signed-off-by: Derek McGowan <derek@mcgstyle.net> (github: dmcgowan)
This commit is contained in:
@@ -24,7 +24,7 @@ import (
|
||||
// obtained using Seek
|
||||
func TestWriteSeek(t *testing.T) {
|
||||
ctx := context.Background()
|
||||
imageName, _ := reference.ParseNamed("foo/bar")
|
||||
imageName, _ := reference.WithName("foo/bar")
|
||||
driver := testdriver.New()
|
||||
registry, err := NewRegistry(ctx, driver, BlobDescriptorCacheProvider(memory.NewInMemoryBlobDescriptorCacheProvider()), EnableDelete, EnableRedirect)
|
||||
if err != nil {
|
||||
@@ -60,7 +60,7 @@ func TestSimpleBlobUpload(t *testing.T) {
|
||||
}
|
||||
|
||||
ctx := context.Background()
|
||||
imageName, _ := reference.ParseNamed("foo/bar")
|
||||
imageName, _ := reference.WithName("foo/bar")
|
||||
driver := testdriver.New()
|
||||
registry, err := NewRegistry(ctx, driver, BlobDescriptorCacheProvider(memory.NewInMemoryBlobDescriptorCacheProvider()), EnableDelete, EnableRedirect)
|
||||
if err != nil {
|
||||
@@ -255,7 +255,7 @@ func TestSimpleBlobUpload(t *testing.T) {
|
||||
// other tests.
|
||||
func TestSimpleBlobRead(t *testing.T) {
|
||||
ctx := context.Background()
|
||||
imageName, _ := reference.ParseNamed("foo/bar")
|
||||
imageName, _ := reference.WithName("foo/bar")
|
||||
driver := testdriver.New()
|
||||
registry, err := NewRegistry(ctx, driver, BlobDescriptorCacheProvider(memory.NewInMemoryBlobDescriptorCacheProvider()), EnableDelete, EnableRedirect)
|
||||
if err != nil {
|
||||
@@ -366,8 +366,8 @@ func TestBlobMount(t *testing.T) {
|
||||
}
|
||||
|
||||
ctx := context.Background()
|
||||
imageName, _ := reference.ParseNamed("foo/bar")
|
||||
sourceImageName, _ := reference.ParseNamed("foo/source")
|
||||
imageName, _ := reference.WithName("foo/bar")
|
||||
sourceImageName, _ := reference.WithName("foo/source")
|
||||
driver := testdriver.New()
|
||||
registry, err := NewRegistry(ctx, driver, BlobDescriptorCacheProvider(memory.NewInMemoryBlobDescriptorCacheProvider()), EnableDelete, EnableRedirect)
|
||||
if err != nil {
|
||||
@@ -518,7 +518,7 @@ func TestBlobMount(t *testing.T) {
|
||||
// TestLayerUploadZeroLength uploads zero-length
|
||||
func TestLayerUploadZeroLength(t *testing.T) {
|
||||
ctx := context.Background()
|
||||
imageName, _ := reference.ParseNamed("foo/bar")
|
||||
imageName, _ := reference.WithName("foo/bar")
|
||||
driver := testdriver.New()
|
||||
registry, err := NewRegistry(ctx, driver, BlobDescriptorCacheProvider(memory.NewInMemoryBlobDescriptorCacheProvider()), EnableDelete, EnableRedirect)
|
||||
if err != nil {
|
||||
|
2
registry/storage/cache/memory/memory.go
vendored
2
registry/storage/cache/memory/memory.go
vendored
@@ -26,7 +26,7 @@ func NewInMemoryBlobDescriptorCacheProvider() cache.BlobDescriptorCacheProvider
|
||||
}
|
||||
|
||||
func (imbdcp *inMemoryBlobDescriptorCacheProvider) RepositoryScoped(repo string) (distribution.BlobDescriptorService, error) {
|
||||
if _, err := reference.ParseNamed(repo); err != nil {
|
||||
if _, err := reference.ParseNormalizedNamed(repo); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
|
2
registry/storage/cache/redis/redis.go
vendored
2
registry/storage/cache/redis/redis.go
vendored
@@ -41,7 +41,7 @@ func NewRedisBlobDescriptorCacheProvider(pool *redis.Pool) cache.BlobDescriptorC
|
||||
|
||||
// RepositoryScoped returns the scoped cache.
|
||||
func (rbds *redisBlobDescriptorService) RepositoryScoped(repo string) (distribution.BlobDescriptorService, error) {
|
||||
if _, err := reference.ParseNamed(repo); err != nil {
|
||||
if _, err := reference.ParseNormalizedNamed(repo); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
|
@@ -68,7 +68,7 @@ func setupFS(t *testing.T) *setupEnv {
|
||||
}
|
||||
|
||||
func makeRepo(ctx context.Context, t *testing.T, name string, reg distribution.Namespace) {
|
||||
named, err := reference.ParseNamed(name)
|
||||
named, err := reference.WithName(name)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
@@ -27,7 +27,7 @@ func MarkAndSweep(ctx context.Context, storageDriver driver.StorageDriver, regis
|
||||
emit(repoName)
|
||||
|
||||
var err error
|
||||
named, err := reference.ParseNamed(repoName)
|
||||
named, err := reference.WithName(repoName)
|
||||
if err != nil {
|
||||
return fmt.Errorf("failed to parse repo name %s: %v", repoName, err)
|
||||
}
|
||||
|
@@ -39,7 +39,7 @@ func makeRepository(t *testing.T, registry distribution.Namespace, name string)
|
||||
ctx := context.Background()
|
||||
|
||||
// Initialize a dummy repository
|
||||
named, err := reference.ParseNamed(name)
|
||||
named, err := reference.WithName(name)
|
||||
if err != nil {
|
||||
t.Fatalf("Failed to parse name %s: %v", name, err)
|
||||
}
|
||||
|
@@ -16,7 +16,7 @@ import (
|
||||
)
|
||||
|
||||
func TestLinkedBlobStoreCreateWithMountFrom(t *testing.T) {
|
||||
fooRepoName, _ := reference.ParseNamed("nm/foo")
|
||||
fooRepoName, _ := reference.WithName("nm/foo")
|
||||
fooEnv := newManifestStoreTestEnv(t, fooRepoName, "thetag")
|
||||
ctx := context.Background()
|
||||
stats, err := mockRegistry(t, fooEnv.registry)
|
||||
@@ -54,7 +54,7 @@ func TestLinkedBlobStoreCreateWithMountFrom(t *testing.T) {
|
||||
}
|
||||
|
||||
// create another repository nm/bar
|
||||
barRepoName, _ := reference.ParseNamed("nm/bar")
|
||||
barRepoName, _ := reference.WithName("nm/bar")
|
||||
barRepo, err := fooEnv.registry.Repository(ctx, barRepoName)
|
||||
if err != nil {
|
||||
t.Fatalf("unexpected error getting repo: %v", err)
|
||||
@@ -94,7 +94,7 @@ func TestLinkedBlobStoreCreateWithMountFrom(t *testing.T) {
|
||||
clearStats(stats)
|
||||
|
||||
// create yet another repository nm/baz
|
||||
bazRepoName, _ := reference.ParseNamed("nm/baz")
|
||||
bazRepoName, _ := reference.WithName("nm/baz")
|
||||
bazRepo, err := fooEnv.registry.Repository(ctx, bazRepoName)
|
||||
if err != nil {
|
||||
t.Fatalf("unexpected error getting repo: %v", err)
|
||||
|
@@ -60,7 +60,7 @@ func TestManifestStorage(t *testing.T) {
|
||||
}
|
||||
|
||||
func testManifestStorage(t *testing.T, options ...RegistryOption) {
|
||||
repoName, _ := reference.ParseNamed("foo/bar")
|
||||
repoName, _ := reference.WithName("foo/bar")
|
||||
env := newManifestStoreTestEnv(t, repoName, "thetag", options...)
|
||||
ctx := context.Background()
|
||||
ms, err := env.repository.Manifests(ctx)
|
||||
|
@@ -22,7 +22,7 @@ func testTagStore(t *testing.T) *tagsTestEnv {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
repoRef, _ := reference.ParseNamed("a/b")
|
||||
repoRef, _ := reference.WithName("a/b")
|
||||
repo, err := reg.Repository(ctx, repoRef)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
|
Reference in New Issue
Block a user