Skip to content

Commit 328f105

Browse files
committed
fix(internal/circonus): Add GetPlatform func, remove platform info from GetVersion
Fix GetVersion to only return cluster version Add new function to return cluster platform (GetPlatform) Fix all references to GetVersion and (Check).clusterVers to properly use GetVersion and GetPlatform where needed issue #CIRC-8497 Fix logic in creating default rulesets and metric filters to return required vals and determine cluster version before creating them. * Tags: platform version clusterVers check
1 parent 3665240 commit 328f105

File tree

3 files changed

+36
-3
lines changed

3 files changed

+36
-3
lines changed

internal/circonus/check.go

+5
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,7 @@ type Check struct {
5757
checkBundleCID string
5858
clusterTag string
5959
clusterVers string
60+
clusterPlatform string
6061
submissionURL string
6162
log zerolog.Logger
6263
metricFilters []MetricFilter
@@ -84,6 +85,10 @@ func NewCheck(parentLogger zerolog.Logger, cfg *config.Circonus, clusterCfg *con
8485
if err != nil {
8586
return nil, err
8687
}
88+
c.clusterPlatform, err = k8s.GetPlatform(clusterCfg)
89+
if err != nil {
90+
return nil, err
91+
}
8792

8893
// output debug messages for hidden settings which are not DEFAULT
8994
if cfg.Base64Tags != defaults.Base64Tags {

internal/cluster/cluster.go

+7-2
Original file line numberDiff line numberDiff line change
@@ -304,9 +304,14 @@ func (c *Cluster) collect(ctx context.Context, dynamicCollectors *dc.DC) {
304304
{ // get api/cluster version/platform
305305
ver, err := k8s.GetVersion(&c.cfg)
306306
if err != nil {
307-
c.logger.Warn().Err(err).Msg("getting version api/cluster information")
307+
c.logger.Warn().Err(err).Msg("getting api/cluster version information")
308+
}
309+
310+
plat, err := k8s.GetPlatform(&c.cfg)
311+
if err != nil {
312+
c.logger.Warn().Err(err).Msg("getting api/cluster platform information")
308313
} else {
309-
c.check.AddText("collect_k8s_ver", cgm.Tags{cgm.Tag{Category: "source", Value: release.NAME}}, ver)
314+
c.check.AddText("collect_k8s_ver", cgm.Tags{cgm.Tag{Category: "source", Value: release.NAME}}, ver+" "+plat)
310315
}
311316
}
312317

internal/k8s/k8s.go

+24-1
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@ func GetClient(clusterConfig *config.Cluster) (*kubernetes.Clientset, error) {
4141
return clientset, nil
4242
}
4343

44+
// GetVersion gets the cluster version
4445
func GetVersion(clusterConfig *config.Cluster) (string, error) {
4546
clientset, err := GetClient(clusterConfig)
4647
if err != nil {
@@ -59,5 +60,27 @@ func GetVersion(clusterConfig *config.Cluster) (string, error) {
5960
return "", err
6061
}
6162

62-
return ver.GitVersion + " " + ver.Platform, nil
63+
return ver.GitVersion, nil
64+
}
65+
66+
// GetPlatform gets the cluster platform
67+
func GetPlatform(clusterConfig *config.Cluster) (string, error) {
68+
clientset, err := GetClient(clusterConfig)
69+
if err != nil {
70+
return "", err
71+
}
72+
req := clientset.CoreV1().RESTClient().Get().RequestURI("/version")
73+
res := req.Do()
74+
75+
data, err := res.Raw()
76+
if err != nil {
77+
return "", err
78+
}
79+
80+
var ver apimachineryversion.Info
81+
if err := json.Unmarshal(data, &ver); err != nil {
82+
return "", err
83+
}
84+
85+
return ver.Platform, nil
6386
}

0 commit comments

Comments
 (0)