Bladeren bron

Modify repository name regex to match index

Michael Crosby 11 jaren geleden
bovenliggende
commit
5867f9e761
2 gewijzigde bestanden met toevoegingen van 13 en 3 verwijderingen
  1. 1 1
      registry/registry.go
  2. 12 2
      registry/registry_test.go

+ 1 - 1
registry/registry.go

@@ -70,7 +70,7 @@ func validateRepositoryName(repositoryName string) error {
 	if !validNamespace.MatchString(namespace) {
 		return fmt.Errorf("Invalid namespace name (%s), only [a-z0-9_] are allowed, size between 4 and 30", namespace)
 	}
-	validRepo := regexp.MustCompile(`^([a-zA-Z0-9-_.]+)$`)
+	validRepo := regexp.MustCompile(`^([a-z0-9-_.]+)$`)
 	if !validRepo.MatchString(name) {
 		return fmt.Errorf("Invalid repository name (%s), only [a-zA-Z0-9-_.] are allowed", name)
 	}

+ 12 - 2
registry/registry_test.go

@@ -159,11 +159,11 @@ func TestPushRegistryTag(t *testing.T) {
 func TestPushImageJSONIndex(t *testing.T) {
 	r := spawnTestRegistry(t)
 	imgData := []*ImgData{
-		&ImgData{
+		{
 			ID:       "77dbf71da1d00e3fbddc480176eac8994025630c6590d11cfc8fe1209c2a1d20",
 			Checksum: "sha256:1ac330d56e05eef6d438586545ceff7550d3bdcb6b19961f12c5ba714ee1bb37",
 		},
-		&ImgData{
+		{
 			ID:       "42d718c941f5c532ac049bf0b0ab53f0062f09a03afd4aa4a02c098e46032b9d",
 			Checksum: "sha256:bea7bf2e4bacd479344b737328db47b18880d09096e6674165533aa994f5e9f2",
 		},
@@ -196,3 +196,13 @@ func TestSearchRepositories(t *testing.T) {
 	}
 	assertEqual(t, results.NumResults, 0, "Expected 0 search results")
 }
+
+func TestValidRepositoryName(t *testing.T) {
+	if err := validateRepositoryName("docker/docker"); err != nil {
+		t.Fatal(err)
+	}
+	if err := validateRepositoryName("docker/Docker"); err == nil {
+		t.Log("Repository name should be invalid")
+		t.Fail()
+	}
+}