diff --git a/pkg/kubelet/custommetrics/custom_metrics.go b/pkg/kubelet/custommetrics/custom_metrics.go deleted file mode 100644 index bb46e029c9f..00000000000 --- a/pkg/kubelet/custommetrics/custom_metrics.go +++ /dev/null @@ -1,50 +0,0 @@ -/* -Copyright 2015 The Kubernetes Authors. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -// Package custommetrics contains support for instrumenting cAdvisor to gather custom metrics from pods. -package custommetrics - -import ( - "path" - - "k8s.io/api/core/v1" -) - -const ( - // CustomMetricsDefinitionContainerFile is the file in container that stores Custom Metrics definition - CustomMetricsDefinitionContainerFile = "definition.json" - - // CustomMetricsDefinitionDir is the dir where Custom Metrics definition is stored - CustomMetricsDefinitionDir = "/etc/custom-metrics" -) - -// GetCAdvisorCustomMetricsDefinitionPath returns a path to a cAdvisor-specific custom metrics configuration. -// Alpha implementation. -func GetCAdvisorCustomMetricsDefinitionPath(container *v1.Container) (*string, error) { - // Assumes that the container has Custom Metrics enabled if it has "/etc/custom-metrics" directory - // mounted as a volume. Custom Metrics definition is expected to be in "definition.json". - if container.VolumeMounts != nil { - for _, volumeMount := range container.VolumeMounts { - if path.Clean(volumeMount.MountPath) == path.Clean(CustomMetricsDefinitionDir) { - // TODO: add definition file validation. - definitionPath := path.Clean(path.Join(volumeMount.MountPath, CustomMetricsDefinitionContainerFile)) - return &definitionPath, nil - } - } - } - // No Custom Metrics definition available. - return nil, nil -} diff --git a/pkg/kubelet/custommetrics/custom_metrics_test.go b/pkg/kubelet/custommetrics/custom_metrics_test.go deleted file mode 100644 index 134b8fac53a..00000000000 --- a/pkg/kubelet/custommetrics/custom_metrics_test.go +++ /dev/null @@ -1,48 +0,0 @@ -/* -Copyright 2015 The Kubernetes Authors. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -package custommetrics - -import ( - "testing" - - "github.com/stretchr/testify/assert" - "k8s.io/api/core/v1" -) - -func TestGetCAdvisorCustomMetricsDefinitionPath(t *testing.T) { - - regularContainer := &v1.Container{ - Name: "test_container", - } - - cmContainer := &v1.Container{ - Name: "test_container", - VolumeMounts: []v1.VolumeMount{ - { - Name: "cm", - MountPath: CustomMetricsDefinitionDir, - }, - }, - } - path, err := GetCAdvisorCustomMetricsDefinitionPath(regularContainer) - assert.Nil(t, path) - assert.NoError(t, err) - - path, err = GetCAdvisorCustomMetricsDefinitionPath(cmContainer) - assert.NotEmpty(t, *path) - assert.NoError(t, err) -}