Browse code

remove job from tag Signed-off-by: Simei He <hesimei@zju.edu.cn>

Simei He authored on 2015/04/14 11:46:29
Showing 12 changed files
... ...
@@ -586,9 +586,11 @@ func postImagesTag(eng *engine.Engine, version version.Version, w http.ResponseW
586 586
 		return fmt.Errorf("Missing parameter")
587 587
 	}
588 588
 
589
-	job := eng.Job("tag", vars["name"], r.Form.Get("repo"), r.Form.Get("tag"))
590
-	job.Setenv("force", r.Form.Get("force"))
591
-	if err := job.Run(); err != nil {
589
+	d := getDaemon(eng)
590
+	repo := r.Form.Get("repo")
591
+	tag := r.Form.Get("tag")
592
+	force := toBool(r.Form.Get("force"))
593
+	if err := d.Repositories().Tag(repo, tag, vars["name"], force); err != nil {
592 594
 		return err
593 595
 	}
594 596
 	w.WriteHeader(http.StatusCreated)
... ...
@@ -164,7 +164,7 @@ func (b *BuilderJob) CmdBuild(job *engine.Job) error {
164 164
 	}
165 165
 
166 166
 	if repoName != "" {
167
-		b.Daemon.Repositories().Set(repoName, tag, id, true)
167
+		b.Daemon.Repositories().Tag(repoName, tag, id, true)
168 168
 	}
169 169
 	return nil
170 170
 }
... ...
@@ -101,7 +101,7 @@ func (daemon *Daemon) Commit(container *Container, repository, tag, comment, aut
101 101
 
102 102
 	// Register the image if needed
103 103
 	if repository != "" {
104
-		if err := daemon.repositories.Set(repository, tag, img.ID, true); err != nil {
104
+		if err := daemon.repositories.Tag(repository, tag, img.ID, true); err != nil {
105 105
 			return img, err
106 106
 		}
107 107
 	}
... ...
@@ -82,7 +82,7 @@ func (s *TagStore) CmdImport(job *engine.Job) error {
82 82
 	}
83 83
 	// Optionally register the image at REPO/TAG
84 84
 	if repo != "" {
85
-		if err := s.Set(repo, tag, img.ID, true); err != nil {
85
+		if err := s.Tag(repo, tag, img.ID, true); err != nil {
86 86
 			return err
87 87
 		}
88 88
 	}
... ...
@@ -135,7 +135,7 @@ func TestManifestTarsumCache(t *testing.T) {
135 135
 	if err := store.graph.Register(img, archive); err != nil {
136 136
 		t.Fatal(err)
137 137
 	}
138
-	if err := store.Set(testManifestImageName, testManifestTag, testManifestImageID, false); err != nil {
138
+	if err := store.Tag(testManifestImageName, testManifestTag, testManifestImageID, false); err != nil {
139 139
 		t.Fatal(err)
140 140
 	}
141 141
 
... ...
@@ -249,7 +249,7 @@ func (s *TagStore) pullRepository(r *registry.Session, out io.Writer, repoInfo *
249 249
 		if askedTag != "" && tag != askedTag {
250 250
 			continue
251 251
 		}
252
-		if err := s.Set(repoInfo.LocalName, tag, id, true); err != nil {
252
+		if err := s.Tag(repoInfo.LocalName, tag, id, true); err != nil {
253 253
 			return err
254 254
 		}
255 255
 	}
... ...
@@ -617,7 +617,7 @@ func (s *TagStore) pullV2Tag(eng *engine.Engine, r *registry.Session, out io.Wri
617 617
 		}
618 618
 	} else {
619 619
 		// only set the repository/tag -> image ID mapping when pulling by tag (i.e. not by digest)
620
-		if err = s.Set(repoInfo.LocalName, tag, downloads[0].img.ID, true); err != nil {
620
+		if err = s.Tag(repoInfo.LocalName, tag, downloads[0].img.ID, true); err != nil {
621 621
 			return false, err
622 622
 		}
623 623
 	}
... ...
@@ -12,7 +12,6 @@ import (
12 12
 func (s *TagStore) Install(eng *engine.Engine) error {
13 13
 	for name, handler := range map[string]engine.Handler{
14 14
 		"image_set":      s.CmdSet,
15
-		"tag":            s.CmdTag,
16 15
 		"image_get":      s.CmdGet,
17 16
 		"image_inspect":  s.CmdLookup,
18 17
 		"image_tarlayer": s.CmdTarLayer,
19 18
deleted file mode 100644
... ...
@@ -1,18 +0,0 @@
1
-package graph
2
-
3
-import (
4
-	"fmt"
5
-
6
-	"github.com/docker/docker/engine"
7
-)
8
-
9
-func (s *TagStore) CmdTag(job *engine.Job) error {
10
-	if len(job.Args) != 2 && len(job.Args) != 3 {
11
-		return fmt.Errorf("Usage: %s IMAGE REPOSITORY [TAG]\n", job.Name)
12
-	}
13
-	var tag string
14
-	if len(job.Args) == 3 {
15
-		tag = job.Args[2]
16
-	}
17
-	return s.Set(job.Args[1], tag, job.Args[0], job.GetenvBool("force"))
18
-}
... ...
@@ -224,7 +224,7 @@ func (store *TagStore) Delete(repoName, ref string) (bool, error) {
224 224
 	return deleted, store.save()
225 225
 }
226 226
 
227
-func (store *TagStore) Set(repoName, tag, imageName string, force bool) error {
227
+func (store *TagStore) Tag(repoName, tag, imageName string, force bool) error {
228 228
 	return store.SetLoad(repoName, tag, imageName, force, nil)
229 229
 }
230 230
 
... ...
@@ -72,7 +72,7 @@ func mkTestTagStore(root string, t *testing.T) *TagStore {
72 72
 	if err := graph.Register(img, officialArchive); err != nil {
73 73
 		t.Fatal(err)
74 74
 	}
75
-	if err := store.Set(testOfficialImageName, "", testOfficialImageID, false); err != nil {
75
+	if err := store.Tag(testOfficialImageName, "", testOfficialImageID, false); err != nil {
76 76
 		t.Fatal(err)
77 77
 	}
78 78
 	privateArchive, err := fakeTar()
... ...
@@ -83,7 +83,7 @@ func mkTestTagStore(root string, t *testing.T) *TagStore {
83 83
 	if err := graph.Register(img, privateArchive); err != nil {
84 84
 		t.Fatal(err)
85 85
 	}
86
-	if err := store.Set(testPrivateImageName, "", testPrivateImageID, false); err != nil {
86
+	if err := store.Tag(testPrivateImageName, "", testPrivateImageID, false); err != nil {
87 87
 		t.Fatal(err)
88 88
 	}
89 89
 	if err := store.SetDigest(testPrivateImageName, testPrivateImageDigest, testPrivateImageID); err != nil {
... ...
@@ -761,7 +761,8 @@ func TestDeleteImages(t *testing.T) {
761 761
 
762 762
 	initialImages := getImages(eng, t, true, "")
763 763
 
764
-	if err := eng.Job("tag", unitTestImageName, "test", "test").Run(); err != nil {
764
+	d := getDaemon(eng)
765
+	if err := d.Repositories().Tag("test", "test", unitTestImageName, true); err != nil {
765 766
 		t.Fatal(err)
766 767
 	}
767 768
 
768 769
deleted file mode 100644
... ...
@@ -1,71 +0,0 @@
1
-package docker
2
-
3
-import "testing"
4
-
5
-func TestCreateNumberHostname(t *testing.T) {
6
-	eng := NewTestEngine(t)
7
-	defer mkDaemonFromEngine(eng, t).Nuke()
8
-
9
-	config, _, _, err := parseRun([]string{"-h", "web.0", unitTestImageID, "echo test"})
10
-	if err != nil {
11
-		t.Fatal(err)
12
-	}
13
-
14
-	createTestContainer(eng, config, t)
15
-}
16
-
17
-func TestRunWithTooLowMemoryLimit(t *testing.T) {
18
-	eng := NewTestEngine(t)
19
-	defer mkDaemonFromEngine(eng, t).Nuke()
20
-
21
-	// Try to create a container with a memory limit of 1 byte less than the minimum allowed limit.
22
-	job := eng.Job("create")
23
-	job.Setenv("Image", unitTestImageID)
24
-	job.Setenv("Memory", "524287")
25
-	job.Setenv("CpuShares", "1000")
26
-	job.SetenvList("Cmd", []string{"/bin/cat"})
27
-	if err := job.Run(); err == nil {
28
-		t.Errorf("Memory limit is smaller than the allowed limit. Container creation should've failed!")
29
-	}
30
-}
31
-
32
-func TestImagesFilter(t *testing.T) {
33
-	eng := NewTestEngine(t)
34
-	defer nuke(mkDaemonFromEngine(eng, t))
35
-
36
-	if err := eng.Job("tag", unitTestImageName, "utest", "tag1").Run(); err != nil {
37
-		t.Fatal(err)
38
-	}
39
-
40
-	if err := eng.Job("tag", unitTestImageName, "utest/docker", "tag2").Run(); err != nil {
41
-		t.Fatal(err)
42
-	}
43
-
44
-	if err := eng.Job("tag", unitTestImageName, "utest:5000/docker", "tag3").Run(); err != nil {
45
-		t.Fatal(err)
46
-	}
47
-
48
-	images := getImages(eng, t, false, "utest*/*")
49
-
50
-	if len(images[0].RepoTags) != 2 {
51
-		t.Fatal("incorrect number of matches returned")
52
-	}
53
-
54
-	images = getImages(eng, t, false, "utest")
55
-
56
-	if len(images[0].RepoTags) != 1 {
57
-		t.Fatal("incorrect number of matches returned")
58
-	}
59
-
60
-	images = getImages(eng, t, false, "utest*")
61
-
62
-	if len(images[0].RepoTags) != 1 {
63
-		t.Fatal("incorrect number of matches returned")
64
-	}
65
-
66
-	images = getImages(eng, t, false, "*5000*/*")
67
-
68
-	if len(images[0].RepoTags) != 1 {
69
-		t.Fatal("incorrect number of matches returned")
70
-	}
71
-}