123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139 |
- /*
- Copyright 2016 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 persistentvolume
- import (
- "fmt"
- "net"
- authenticationv1 "k8s.io/api/authentication/v1"
- "k8s.io/api/core/v1"
- "k8s.io/apimachinery/pkg/types"
- clientset "k8s.io/client-go/kubernetes"
- "k8s.io/client-go/tools/record"
- cloudprovider "k8s.io/cloud-provider"
- "k8s.io/klog"
- "k8s.io/kubernetes/pkg/util/mount"
- vol "k8s.io/kubernetes/pkg/volume"
- "k8s.io/kubernetes/pkg/volume/util/subpath"
- )
- // VolumeHost interface implementation for PersistentVolumeController.
- var _ vol.VolumeHost = &PersistentVolumeController{}
- func (ctrl *PersistentVolumeController) GetPluginDir(pluginName string) string {
- return ""
- }
- func (ctrl *PersistentVolumeController) GetVolumeDevicePluginDir(pluginName string) string {
- return ""
- }
- func (ctrl *PersistentVolumeController) GetPodsDir() string {
- return ""
- }
- func (ctrl *PersistentVolumeController) GetPodVolumeDir(podUID types.UID, pluginName string, volumeName string) string {
- return ""
- }
- func (ctrl *PersistentVolumeController) GetPodPluginDir(podUID types.UID, pluginName string) string {
- return ""
- }
- func (ctrl *PersistentVolumeController) GetPodVolumeDeviceDir(ppodUID types.UID, pluginName string) string {
- return ""
- }
- func (ctrl *PersistentVolumeController) GetKubeClient() clientset.Interface {
- return ctrl.kubeClient
- }
- func (ctrl *PersistentVolumeController) NewWrapperMounter(volName string, spec vol.Spec, pod *v1.Pod, opts vol.VolumeOptions) (vol.Mounter, error) {
- return nil, fmt.Errorf("PersistentVolumeController.NewWrapperMounter is not implemented")
- }
- func (ctrl *PersistentVolumeController) NewWrapperUnmounter(volName string, spec vol.Spec, podUID types.UID) (vol.Unmounter, error) {
- return nil, fmt.Errorf("PersistentVolumeController.NewWrapperMounter is not implemented")
- }
- func (ctrl *PersistentVolumeController) GetCloudProvider() cloudprovider.Interface {
- return ctrl.cloud
- }
- func (ctrl *PersistentVolumeController) GetMounter(pluginName string) mount.Interface {
- return nil
- }
- func (ctrl *PersistentVolumeController) GetHostName() string {
- return ""
- }
- func (ctrl *PersistentVolumeController) GetHostIP() (net.IP, error) {
- return nil, fmt.Errorf("PersistentVolumeController.GetHostIP() is not implemented")
- }
- func (ctrl *PersistentVolumeController) GetNodeAllocatable() (v1.ResourceList, error) {
- return v1.ResourceList{}, nil
- }
- func (ctrl *PersistentVolumeController) GetSecretFunc() func(namespace, name string) (*v1.Secret, error) {
- return func(_, _ string) (*v1.Secret, error) {
- return nil, fmt.Errorf("GetSecret unsupported in PersistentVolumeController")
- }
- }
- func (ctrl *PersistentVolumeController) GetConfigMapFunc() func(namespace, name string) (*v1.ConfigMap, error) {
- return func(_, _ string) (*v1.ConfigMap, error) {
- return nil, fmt.Errorf("GetConfigMap unsupported in PersistentVolumeController")
- }
- }
- func (ctrl *PersistentVolumeController) GetServiceAccountTokenFunc() func(_, _ string, _ *authenticationv1.TokenRequest) (*authenticationv1.TokenRequest, error) {
- return func(_, _ string, _ *authenticationv1.TokenRequest) (*authenticationv1.TokenRequest, error) {
- return nil, fmt.Errorf("GetServiceAccountToken unsupported in PersistentVolumeController")
- }
- }
- func (ctrl *PersistentVolumeController) DeleteServiceAccountTokenFunc() func(types.UID) {
- return func(types.UID) {
- klog.Errorf("DeleteServiceAccountToken unsupported in PersistentVolumeController")
- }
- }
- func (adc *PersistentVolumeController) GetExec(pluginName string) mount.Exec {
- return mount.NewOsExec()
- }
- func (ctrl *PersistentVolumeController) GetNodeLabels() (map[string]string, error) {
- return nil, fmt.Errorf("GetNodeLabels() unsupported in PersistentVolumeController")
- }
- func (ctrl *PersistentVolumeController) GetNodeName() types.NodeName {
- return ""
- }
- func (ctrl *PersistentVolumeController) GetEventRecorder() record.EventRecorder {
- return ctrl.eventRecorder
- }
- func (ctrl *PersistentVolumeController) GetSubpather() subpath.Interface {
- // No volume plugin needs Subpaths in PV controller.
- return nil
- }
|