github.com/niedbalski/juju@v0.0.0-20190215020005-8ff100488e47/caas/kubernetes/provider/export_test.go (about) 1 // Copyright 2018 Canonical Ltd. 2 // Licensed under the AGPLv3, see LICENCE file for details. 3 4 package provider 5 6 import ( 7 core "k8s.io/api/core/v1" 8 "k8s.io/client-go/kubernetes" 9 10 "github.com/juju/juju/caas" 11 "github.com/juju/juju/storage" 12 ) 13 14 var ( 15 MakeUnitSpec = makeUnitSpec 16 ParseK8sPodSpec = parseK8sPodSpec 17 OperatorPod = operatorPod 18 ExtractRegistryURL = extractRegistryURL 19 CreateDockerConfigJSON = createDockerConfigJSON 20 NewStorageConfig = newStorageConfig 21 NewKubernetesWatcher = newKubernetesWatcher 22 CompileK8sCloudCheckers = compileK8sCloudCheckers 23 CloudSpecToK8sRestConfig = cloudSpecToK8sRestConfig 24 ) 25 26 type KubernetesWatcher = kubernetesWatcher 27 28 func PodSpec(u *unitSpec) core.PodSpec { 29 return u.Pod 30 } 31 32 func NewProvider() caas.ContainerEnvironProvider { 33 return kubernetesEnvironProvider{} 34 } 35 36 func StorageProvider(k8sClient kubernetes.Interface, namespace string) storage.Provider { 37 return &storageProvider{&kubernetesClient{Interface: k8sClient, namespace: namespace}} 38 } 39 40 func StorageClass(cfg *storageConfig) string { 41 return cfg.storageClass 42 } 43 44 func ExistingStorageClass(cfg *storageConfig) string { 45 return cfg.existingStorageClass 46 } 47 48 func StorageProvisioner(cfg *storageConfig) string { 49 return cfg.storageProvisioner 50 } 51 52 func StorageParameters(cfg *storageConfig) map[string]string { 53 return cfg.parameters 54 } 55 56 func GetCloudProviderFromNodeMeta(node core.Node) string { 57 return getCloudProviderFromNodeMeta(node) 58 }