Reviewers: mp+122950_code.launchpad.net,
Message: Please take a look.
Description: store: publish branch digest on charm-info as well
https://code.launchpad.net/~niemeyer/juju-core/digest-on-charm-info/+merge/122950
(do not edit description out of merge proposal)
Please review this at https://codereview.appspot.com/6500083/
Affected files: A [revision details] M charm/repo.go M store/server.go M store/server_test.go
Index: [revision details] === added file '[revision details]' --- [revision details] 2012-01-01 00:00:00 +0000 +++ [revision details] 2012-01-01 00:00:00 +0000 @@ -0,0 +1,2 @@ +Old revision: <email address hidden> +New revision: <email address hidden>
Index: charm/repo.go === modified file 'charm/repo.go' --- charm/repo.go 2012-06-21 20:40:39 +0000 +++ charm/repo.go 2012-09-05 21:08:26 +0000 @@ -19,6 +19,7 @@ type InfoResponse struct { Revision int `json:"revision"` // Zero is valid. Can't omitempty. Sha256 string `json:"sha256,omitempty"` + Digest string `json:"digest,omitempty"` Errors []string `json:"errors,omitempty"` Warnings []string `json:"warnings,omitempty"` }
Index: store/server.go === modified file 'store/server.go' --- store/server.go 2012-07-25 08:59:06 +0000 +++ store/server.go 2012-09-05 21:08:26 +0000 @@ -85,6 +85,7 @@ skey = charmStatsKey(curl, "charm-info") c.Sha256 = info.BundleSha256() c.Revision = info.Revision() + c.Digest = info.Digest() } else { if err == ErrNotFound { skey = charmStatsKey(curl, "charm-missing")
Index: store/server_test.go === modified file 'store/server_test.go' --- store/server_test.go 2012-06-21 20:40:39 +0000 +++ store/server_test.go 2012-09-05 21:08:26 +0000 @@ -30,10 +30,10 @@ req, err := http.NewRequest("GET", "/charm-info", nil) c.Assert(err, IsNil)
- var tests = []struct{ url, sha, err string }{ - {curl.String(), fakeRevZeroSha, ""}, - {"cs:oneiric/non-existent", "", "entry not found"}, - {"cs:bad", "", `charm URL without series: "cs:bad"`}, + var tests = []struct{ url, sha, digest, err string }{ + {curl.String(), fakeRevZeroSha, "some-digest", ""}, + {"cs:oneiric/non-existent", "", "", "entry not found"}, + {"cs:bad", "", "", `charm URL without series: "cs:bad"`}, }
for _, t := range tests { @@ -46,6 +46,7 @@ expected[t.url] = map[string]interface{}{ "revision": float64(0), "sha256": t.sha, + "digest": t.digest, } } else { expected[t.url] = map[string]interface{}{
« Back to merge proposal
Reviewers: mp+122950_ code.launchpad. net,
Message:
Please take a look.
Description:
store: publish branch digest on charm-info as well
https:/ /code.launchpad .net/~niemeyer/ juju-core/ digest- on-charm- info/+merge/ 122950
(do not edit description out of merge proposal)
Please review this at https:/ /codereview. appspot. com/6500083/
Affected files: test.go
A [revision details]
M charm/repo.go
M store/server.go
M store/server_
Index: [revision details]
=== added file '[revision details]'
--- [revision details] 2012-01-01 00:00:00 +0000
+++ [revision details] 2012-01-01 00:00:00 +0000
@@ -0,0 +1,2 @@
+Old revision: <email address hidden>
+New revision: <email address hidden>
Index: charm/repo.go sha256, omitempty" ` digest, omitempty" ` errors, omitempty" ` warnings, omitempty" `
=== modified file 'charm/repo.go'
--- charm/repo.go 2012-06-21 20:40:39 +0000
+++ charm/repo.go 2012-09-05 21:08:26 +0000
@@ -19,6 +19,7 @@
type InfoResponse struct {
Revision int `json:"revision"` // Zero is valid. Can't omitempty.
Sha256 string `json:"
+ Digest string `json:"
Errors []string `json:"
Warnings []string `json:"
}
Index: store/server.go
=== modified file 'store/server.go'
--- store/server.go 2012-07-25 08:59:06 +0000
+++ store/server.go 2012-09-05 21:08:26 +0000
@@ -85,6 +85,7 @@
skey = charmStatsKey(curl, "charm-info")
c.Sha256 = info.BundleSha256()
c.Revision = info.Revision()
+ c.Digest = info.Digest()
} else {
if err == ErrNotFound {
skey = charmStatsKey(curl, "charm-missing")
Index: store/server_ test.go server_ test.go' test.go 2012-06-21 20:40:39 +0000 test.go 2012-09-05 21:08:26 +0000 ("GET", "/charm-info", nil)
=== modified file 'store/
--- store/server_
+++ store/server_
@@ -30,10 +30,10 @@
req, err := http.NewRequest
c.Assert(err, IsNil)
- var tests = []struct{ url, sha, err string }{ non-existent" , "", "entry not found"}, non-existent" , "", "", "entry not found"},
- {curl.String(), fakeRevZeroSha, ""},
- {"cs:oneiric/
- {"cs:bad", "", `charm URL without series: "cs:bad"`},
+ var tests = []struct{ url, sha, digest, err string }{
+ {curl.String(), fakeRevZeroSha, "some-digest", ""},
+ {"cs:oneiric/
+ {"cs:bad", "", "", `charm URL without series: "cs:bad"`},
}
for _, t := range tests { t.url] = map[string] interface{ }{ t.url] = map[string] interface{ }{
@@ -46,6 +46,7 @@
expected[
"revision": float64(0),
"sha256": t.sha,
+ "digest": t.digest,
}
} else {
expected[