summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoffrey F <joffrey@docker.com>2014-10-02 17:37:13 +0200
committerJoffrey F <joffrey@docker.com>2014-10-02 17:37:13 +0200
commitaabba9801a63228bb2e5144c8688b60e4d429ac2 (patch)
treeacc25116cb5145a9e86a8b74cc8577b1402994e2
parent7304c09ecc8cd7c97ca1a30e97f8e2a206e8b737 (diff)
downloaddocker-6969-reponame-rest-api.tar.gz
Added validity checks for repo name and tag in build job.6969-reponame-rest-api
Signed-off-by: Joffrey F <joffrey@docker.com>
-rw-r--r--builder/job.go12
1 files changed, 12 insertions, 0 deletions
diff --git a/builder/job.go b/builder/job.go
index 1558fa3dab..555232c9ae 100644
--- a/builder/job.go
+++ b/builder/job.go
@@ -9,6 +9,7 @@ import (
"github.com/docker/docker/daemon"
"github.com/docker/docker/engine"
+ "github.com/docker/docker/graph"
"github.com/docker/docker/pkg/archive"
"github.com/docker/docker/pkg/parsers"
"github.com/docker/docker/registry"
@@ -42,7 +43,18 @@ func (b *BuilderJob) CmdBuild(job *engine.Job) engine.Status {
)
job.GetenvJson("authConfig", authConfig)
job.GetenvJson("configFile", configFile)
+
repoName, tag = parsers.ParseRepositoryTag(repoName)
+ if repoName != "" {
+ if _, _, err := registry.ResolveRepositoryName(repoName); err != nil {
+ return job.Error(err)
+ }
+ if len(tag) > 0 {
+ if err := graph.ValidateTagName(tag); err != nil {
+ return job.Error(err)
+ }
+ }
+ }
if remoteURL == "" {
context = ioutil.NopCloser(job.Stdin)