...
1 package types
2
3 import (
4 "strings"
5
6 whv1 "edge-infra.dev/pkg/f8n/warehouse/k8s/apis/v1alpha1"
7 )
8
9 const (
10 DefaultVersionTag = "latest"
11 )
12
13
14
15 type ArtifactVersion struct {
16 Name string `json:"name"`
17 Version string `json:"version"`
18 }
19
20 func FromBaseArtifact(a whv1.BaseArtifact) ArtifactVersion {
21 av := ArtifactVersion{
22 Name: a.Name,
23 Version: a.Digest,
24 }
25
26 if av.Version == "" {
27 av.Version = a.Tag
28 }
29
30 return av
31 }
32
33 func (a ArtifactVersion) ToBaseArtifact() whv1.BaseArtifact {
34 ba := whv1.BaseArtifact{
35 Name: a.Name,
36 }
37 if strings.Contains(a.Version, ":") {
38
39 ba.Digest = a.Version
40 } else {
41
42 ba.Tag = a.Version
43 }
44 return ba
45 }
46
View as plain text