Browse Source

Repositories and tags can't have ':' in their name (to allow parsing the REPO:TAG notation)

Solomon Hykes 12 years ago
parent
commit
49a78929c6
1 changed files with 8 additions and 0 deletions
  1. 8 0
      tags.go

+ 8 - 0
tags.go

@@ -2,9 +2,11 @@ package docker
 
 import (
 	"encoding/json"
+	"fmt"
 	"io/ioutil"
 	"os"
 	"path/filepath"
+	"strings"
 )
 
 type TagStore struct {
@@ -60,6 +62,12 @@ func (store *TagStore) Reload() error {
 }
 
 func (store *TagStore) Set(repoName, tag, revision string) error {
+	if strings.Contains(repoName, ":") {
+		return fmt.Errorf("Illegal repository name: %s", repoName)
+	}
+	if strings.Contains(repoName, ":") {
+		return fmt.Errorf("Illegal tag name: %s", tag)
+	}
 	if err := store.Reload(); err != nil {
 		return err
 	}