Skip to content

Commit 939f2ba

Browse files
committed
extend compatibility check for patch versions
1 parent 0a4f2ae commit 939f2ba

File tree

2 files changed

+7
-7
lines changed

2 files changed

+7
-7
lines changed

internal/kubernetes/operator/features/crds.go

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -77,13 +77,13 @@ type resource struct {
7777
patcher Patcher
7878
}
7979

80-
func majorVersion(version string) string {
80+
func parseSemver(version string) string {
8181
v := semver.MustParse(version)
82-
return semver.New(v.Major(), v.Minor(), 0, "", "").String()
82+
return semver.New(v.Major(), v.Minor(), v.Patch(), "", "").String()
8383
}
8484

8585
func GetResourcesForVersion(version string) ([]string, bool) {
86-
resources, ok := versionsToResourcesMap[majorVersion(version)]
86+
resources, ok := versionsToResourcesMap[parseSemver(version)]
8787
if !ok {
8888
return nil, false
8989
}
@@ -120,7 +120,7 @@ func CRDCompatibleVersion(operatorVersion string) (string, error) {
120120
return semver.New(
121121
operatorVersionSem.Major(),
122122
operatorVersionSem.Minor(),
123-
0,
123+
operatorVersionSem.Patch(),
124124
"",
125125
"").String(), nil
126126
}
@@ -146,7 +146,7 @@ func (a *AtlasCRDs) Patch(obj runtime.Object) error {
146146
}
147147

148148
func NewAtlasCRDs(crdProvider crds.AtlasOperatorCRDProvider, version string) (*AtlasCRDs, error) {
149-
resources, versionFound := versionsToResourcesMap[majorVersion(version)]
149+
resources, versionFound := versionsToResourcesMap[parseSemver(version)]
150150
if !versionFound {
151151
return nil, fmt.Errorf(ErrVersionNotSupportedFmt, version)
152152
}

internal/kubernetes/operator/features/crds_test.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -277,7 +277,7 @@ func Test_CRDCompatibleVersion(t *testing.T) {
277277
require.NoError(t, err)
278278
operatorVersion := semver.New(latestOperatorSemver.Major()-1, latestOperatorSemver.Minor(), 2, "", "")
279279

280-
expected := fmt.Sprintf("%d.%d.0", operatorVersion.Major(), operatorVersion.Minor())
280+
expected := fmt.Sprintf("%d.%d.2", operatorVersion.Major(), operatorVersion.Minor())
281281
compatibleVersion, err := CRDCompatibleVersion(operatorVersion.String())
282282
require.NoError(t, err)
283283
assert.Equal(t, expected, compatibleVersion)
@@ -288,7 +288,7 @@ func Test_CRDCompatibleVersion(t *testing.T) {
288288
require.NoError(t, err)
289289
operatorVersion := semver.New(latestOperatorSemver.Major(), latestOperatorSemver.Minor(), latestOperatorSemver.Patch(), "", "")
290290

291-
expected := fmt.Sprintf("%d.%d.0", operatorVersion.Major(), operatorVersion.Minor())
291+
expected := fmt.Sprintf("%d.%d.%d", operatorVersion.Major(), operatorVersion.Minor(), operatorVersion.Patch())
292292
compatibleVersion, err := CRDCompatibleVersion(operatorVersion.String())
293293
require.NoError(t, err)
294294
assert.Equal(t, expected, compatibleVersion)

0 commit comments

Comments
 (0)