Skip to content

Commit 1dbb4ef

Browse files
synareteobnoxxx
authored andcommitted
metrics: always resolve all versions
Do not bail-out in case of failure to resolve any of the sub-component versions but rather defer this failure to final status code. Required in order to avoid partial versions-view as part of exported status metric. Signed-off-by: Shachar Sharon <[email protected]>
1 parent cd54ca2 commit 1dbb4ef

File tree

1 file changed

+6
-14
lines changed

1 file changed

+6
-14
lines changed

internal/metrics/versions.go

Lines changed: 6 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ package metrics
44

55
import (
66
"context"
7+
"errors"
78
)
89

910
var (
@@ -26,26 +27,17 @@ func UpdateDefaultVersions(version, commitid string) {
2627

2728
// ResolveVersions is a best-effort to resolve current pod's versions info
2829
func ResolveVersions(clnt *kclient) (Versions, error) {
29-
var err error
30+
var imgErr, smbVersErr, ctdbVersErr error
3031
vers := Versions{
3132
Version: defaultVersions.Version,
3233
CommitID: defaultVersions.CommitID,
3334
}
3435
if clnt != nil {
35-
vers.SambaImage, err = resolveSambaImage(clnt)
36-
if err != nil {
37-
return vers, err
38-
}
39-
}
40-
vers.SambaVersion, err = resolveSambaVersion()
41-
if err != nil {
42-
return vers, err
43-
}
44-
vers.CtdbVersion, err = resolveCtdbVersion()
45-
if err != nil {
46-
return vers, err
36+
vers.SambaImage, imgErr = resolveSambaImage(clnt)
4737
}
48-
return vers, nil
38+
vers.SambaVersion, smbVersErr = resolveSambaVersion()
39+
vers.CtdbVersion, ctdbVersErr = resolveCtdbVersion()
40+
return vers, errors.Join(imgErr, smbVersErr, ctdbVersErr)
4941
}
5042

5143
func resolveSambaImage(clnt *kclient) (string, error) {

0 commit comments

Comments
 (0)