diff --git a/graph/tags.go b/graph/tags.go index ec3596476e..1c2dd36a20 100644 --- a/graph/tags.go +++ b/graph/tags.go @@ -19,7 +19,7 @@ import ( const DEFAULTTAG = "latest" var ( - validTagName = regexp.MustCompile(`^[\w][\w.-]{1,29}$`) + validTagName = regexp.MustCompile(`^[\w][\w.-]{0,29}$`) ) type TagStore struct { diff --git a/graph/tags_unit_test.go b/graph/tags_unit_test.go index e8cedb46c3..918880c755 100644 --- a/graph/tags_unit_test.go +++ b/graph/tags_unit_test.go @@ -114,3 +114,21 @@ func TestLookupImage(t *testing.T) { t.Errorf("Expected 1 image, none found") } } + +func TestValidTagName(t *testing.T) { + validTags := []string{"9", "foo", "foo-test", "bar.baz.boo"} + for _, tag := range validTags { + if err := validateTagName(tag); err != nil { + t.Errorf("'%s' should've been a valid tag", tag) + } + } +} + +func TestInvalidTagName(t *testing.T) { + validTags := []string{"-9", ".foo", "-test", ".", "-"} + for _, tag := range validTags { + if err := validateTagName(tag); err == nil { + t.Errorf("'%s' shouldn't have been a valid tag", tag) + } + } +}