Skip to content

Commit 3a71c40

Browse files
committed
oci: Split refhandler to support history
1 parent 797e5e8 commit 3a71c40

2 files changed

Lines changed: 12 additions & 7 deletions

File tree

internal/explore/explore.go

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1530,22 +1530,26 @@ func headerData(ref name.Reference, desc v1.Descriptor) *HeaderData {
15301530
sep = "&"
15311531
}
15321532

1533-
if _, ok := ref.(name.Tag); ok {
1534-
if ref.Context().RegistryStr() == "cgr.dev" {
1535-
handler = "?history="
1536-
}
1537-
}
1538-
return &HeaderData{
1533+
hdr := &HeaderData{
15391534
Repo: ref.Context().String(),
15401535
Reference: ref.String(),
15411536
CosignTags: []CosignTag{},
15421537
Descriptor: &desc,
1538+
RefHandler: handler,
15431539
Handler: handler,
15441540
QuerySep: sep,
15451541
EscapedMediaType: url.QueryEscape(string(desc.MediaType)),
15461542
MediaTypeLink: getLink(string(desc.MediaType)),
15471543
HumanSize: humanizeSize(desc.Size),
15481544
}
1545+
1546+
if _, ok := ref.(name.Tag); ok {
1547+
if ref.Context().RegistryStr() == "cgr.dev" {
1548+
hdr.RefHandler = "?history="
1549+
}
1550+
}
1551+
1552+
return hdr
15491553
}
15501554

15511555
func humanizeSize(size int64) string {

internal/explore/templates.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -293,7 +293,7 @@ input ~ .tab { /* grey line between tab and contents */
293293
<div>
294294
<h1><a class="top" href="/"><img class="crane" src="/favicon.svg"/> <span class="link">Registry Explorer</span></a></h1>
295295
{{ if .Up }}
296-
<h2>{{ if and (ne .Up.Parent "docker.io") (ne .Up.Parent "index.docker.io") }}<a class="mt" href="/?repo={{.Up.Parent}}">{{.Up.Parent}}</a>{{else}}{{.Up.Parent}}{{end}}{{.Up.Separator}}{{if .Handler }}<a class="mt" href="/{{.Handler}}{{.Reference}}{{if .EscapedMediaType}}{{.QuerySep}}mt={{.EscapedMediaType}}{{end}}">{{.Up.Child}}</a>{{else}}{{.Up.Child}}{{end}}{{ range .CosignTags }} (<a href="/?image={{$.Repo}}:{{.Tag}}">{{.Short}}</a>){{end}}{{if .Referrers}} <a href="/?referrers={{$.Repo}}@{{$.Descriptor.Digest}}">(referrers)</a>{{end}}</h2>
296+
<h2>{{ if and (ne .Up.Parent "docker.io") (ne .Up.Parent "index.docker.io") }}<a class="mt" href="/?repo={{.Up.Parent}}">{{.Up.Parent}}</a>{{else}}{{.Up.Parent}}{{end}}{{.Up.Separator}}{{if .RefHandler }}<a class="mt" href="/{{.RefHandler}}{{.Reference}}{{if .EscapedMediaType}}{{.QuerySep}}mt={{.EscapedMediaType}}{{end}}">{{.Up.Child}}</a>{{else}}{{.Up.Child}}{{end}}{{ range .CosignTags }} (<a href="/?image={{$.Repo}}:{{.Tag}}">{{.Short}}</a>){{end}}{{if .Referrers}} <a href="/?referrers={{$.Repo}}@{{$.Descriptor.Digest}}">(referrers)</a>{{end}}</h2>
297297
{{ else }}
298298
<h2>{{.Reference}}{{ range .CosignTags }} (<a href="/?image={{$.Repo}}:{{.Tag}}">{{.Short}}</a>){{end}}{{if .Referrers}} <a href="/?referrers={{$.Repo}}@{{$.Descriptor.Digest}}">(referrers)</a>{{end}}</h2>
299299
{{ end }}
@@ -356,6 +356,7 @@ type HeaderData struct {
356356
Reference string
357357
Up *RepoParent
358358
Descriptor *v1.Descriptor
359+
RefHandler string
359360
Handler string
360361
EscapedMediaType string
361362
QuerySep string

0 commit comments

Comments
 (0)