csitranslation

package
v0.0.0-...-e6272b8 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 19, 2019 License: Apache-2.0, Apache-2.0 Imports: 4 Imported by: 0

README

Purpose

This repository contains functions to be consumed by various Kubernetes and out-of-tree CSI components like external provisioner to facilitate migration of code from Kubernetes In-tree plugin code to CSI plugin repositories.

Consumers of this repository can make use of functions like TranslateToCSI and TranslateToInTree functions to translate PV sources.

Community, discussion, contribution, and support

Learn how to engage with the Kubernetes community on the community page.

You can reach the maintainers of this repository at:

Code of Conduct

Participation in the Kubernetes community is governed by the Kubernetes Code of Conduct.

Contibution Guidelines

See CONTRIBUTING.md for more information.

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetCSINameFromInTreeName

func GetCSINameFromInTreeName(pluginName string) (string, error)

GetCSINameFromInTreeName returns the name of a CSI driver that supersedes the in-tree plugin with the given name

func GetInTreeNameFromCSIName

func GetInTreeNameFromCSIName(pluginName string) (string, error)

GetInTreeNameFromCSIName returns the name of the in-tree plugin superseded by a CSI driver with the given name

func GetInTreePluginNameFromSpec

func GetInTreePluginNameFromSpec(pv *v1.PersistentVolume, vol *v1.Volume) (string, error)

GetInTreePluginNameFromSpec returns the plugin name

func IsInlineMigratable

func IsInlineMigratable(vol *v1.Volume) bool

IsInlineMigratable tests whether there is Migration logic for the given Inline Volume

func IsMigratableIntreePluginByName

func IsMigratableIntreePluginByName(inTreePluginName string) bool

IsMigratableIntreePluginByName tests whether there is migration logic for the in-tree plugin whose name matches the given name

func IsMigratedCSIDriverByName

func IsMigratedCSIDriverByName(csiPluginName string) bool

IsMigratedCSIDriverByName tests whether there exists an in-tree plugin with logic to migrate to the CSI driver with given name

func IsPVMigratable

func IsPVMigratable(pv *v1.PersistentVolume) bool

IsPVMigratable tests whether there is migration logic for the given Persistent Volume

func TranslateCSIPVToInTree

func TranslateCSIPVToInTree(pv *v1.PersistentVolume) (*v1.PersistentVolume, error)

TranslateCSIPVToInTree takes a PV with a CSI PersistentVolume Source and will translate it to a in-tree Persistent Volume Source for the specific in-tree volume specified by the `Driver` field in the CSI Source. The input PV object will not be modified.

func TranslateInTreePVToCSI

func TranslateInTreePVToCSI(pv *v1.PersistentVolume) (*v1.PersistentVolume, error)

TranslateInTreePVToCSI takes a persistent volume and will translate the in-tree source to a CSI Source if the translation logic has been implemented. The input persistent volume will not be modified

func TranslateInTreeStorageClassParametersToCSI

func TranslateInTreeStorageClassParametersToCSI(inTreePluginName string, scParameters map[string]string) (map[string]string, error)

TranslateInTreeStorageClassParametersToCSI takes in-tree storage class parameters and translates them to a set of parameters consumable by CSI plugin

Types

This section is empty.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL