|
6 | 6 | "errors" |
7 | 7 | "fmt" |
8 | 8 | "reflect" |
9 | | - "strings" |
10 | 9 |
|
11 | 10 | "github.com/blang/semver/v4" |
12 | 11 | metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" |
@@ -37,15 +36,10 @@ func (p Property) String() string { |
37 | 36 | return fmt.Sprintf("type: %q, value: %q", p.Type, p.Value) |
38 | 37 | } |
39 | 38 |
|
40 | | -type Release struct { |
41 | | - Label string `json:"label"` |
42 | | - Version semver.Version `json:"version"` |
43 | | -} |
44 | | - |
45 | 39 | type Package struct { |
46 | | - PackageName string `json:"packageName"` |
47 | | - Version string `json:"version"` |
48 | | - Release *Release `json:"release,omitempty"` |
| 40 | + PackageName string `json:"packageName"` |
| 41 | + Version string `json:"version"` |
| 42 | + Release semver.PRVersion `json:"release,omitzero"` |
49 | 43 | } |
50 | 44 |
|
51 | 45 | // NOTICE: The Channel properties are for internal use only. |
@@ -255,8 +249,15 @@ func jsonMarshal(p interface{}) ([]byte, error) { |
255 | 249 | func MustBuildPackage(name, version string) Property { |
256 | 250 | return MustBuild(&Package{PackageName: name, Version: version}) |
257 | 251 | } |
258 | | -func MustBuildPackageRelease(name, version, relLabel, relVersion string) Property { |
259 | | - return MustBuild(&Package{PackageName: name, Version: version, Release: &Release{Label: relLabel, Version: semver.MustParse(relVersion)}}) |
| 252 | +func MustBuildPackageReleaseVersion(relVersion string) semver.PRVersion { |
| 253 | + val, err := semver.NewPRVersion(relVersion) |
| 254 | + if err != nil { |
| 255 | + panic(err) |
| 256 | + } |
| 257 | + return val |
| 258 | +} |
| 259 | +func MustBuildPackageRelease(name, version, relVersion string) Property { |
| 260 | + return MustBuild(&Package{PackageName: name, Version: version, Release: MustBuildPackageReleaseVersion(relVersion)}) |
260 | 261 | } |
261 | 262 | func MustBuildPackageRequired(name, versionRange string) Property { |
262 | 263 | return MustBuild(&PackageRequired{name, versionRange}) |
@@ -297,14 +298,3 @@ func MustBuildCSVMetadata(csv v1alpha1.ClusterServiceVersion) Property { |
297 | 298 | func MustBuildChannelPriority(name string, priority int) Property { |
298 | 299 | return MustBuild(&Channel{ChannelName: name, Priority: priority}) |
299 | 300 | } |
300 | | - |
301 | | -func (r *Release) String() string { |
302 | | - segments := []string{} |
303 | | - if r.Label != "" { |
304 | | - segments = append(segments, r.Label) |
305 | | - } |
306 | | - if r.Version.Major != 0 || r.Version.Minor != 0 || r.Version.Patch != 0 { |
307 | | - segments = append(segments, r.Version.String()) |
308 | | - } |
309 | | - return strings.Join(segments, "-") |
310 | | -} |
0 commit comments