mirror of https://github.com/k3s-io/k3s
Remove alpha CRD install
parent
aa52140928
commit
d2aa8178f2
|
@ -89,7 +89,6 @@ tags_values_pkgs = {"openapi-gen": {
|
||||||
"staging/src/k8s.io/client-go/pkg/apis/clientauthentication/v1alpha1",
|
"staging/src/k8s.io/client-go/pkg/apis/clientauthentication/v1alpha1",
|
||||||
"staging/src/k8s.io/client-go/pkg/apis/clientauthentication/v1beta1",
|
"staging/src/k8s.io/client-go/pkg/apis/clientauthentication/v1beta1",
|
||||||
"staging/src/k8s.io/client-go/pkg/version",
|
"staging/src/k8s.io/client-go/pkg/version",
|
||||||
"staging/src/k8s.io/csi-api/pkg/apis/csi/v1alpha1",
|
|
||||||
"staging/src/k8s.io/kube-aggregator/pkg/apis/apiregistration/v1",
|
"staging/src/k8s.io/kube-aggregator/pkg/apis/apiregistration/v1",
|
||||||
"staging/src/k8s.io/kube-aggregator/pkg/apis/apiregistration/v1beta1",
|
"staging/src/k8s.io/kube-aggregator/pkg/apis/apiregistration/v1beta1",
|
||||||
"staging/src/k8s.io/kube-controller-manager/config/v1alpha1",
|
"staging/src/k8s.io/kube-controller-manager/config/v1alpha1",
|
||||||
|
@ -169,7 +168,6 @@ tags_pkgs_values = {"openapi-gen": {
|
||||||
"staging/src/k8s.io/client-go/pkg/apis/clientauthentication/v1alpha1": ["true"],
|
"staging/src/k8s.io/client-go/pkg/apis/clientauthentication/v1alpha1": ["true"],
|
||||||
"staging/src/k8s.io/client-go/pkg/apis/clientauthentication/v1beta1": ["true"],
|
"staging/src/k8s.io/client-go/pkg/apis/clientauthentication/v1beta1": ["true"],
|
||||||
"staging/src/k8s.io/client-go/pkg/version": ["true"],
|
"staging/src/k8s.io/client-go/pkg/version": ["true"],
|
||||||
"staging/src/k8s.io/csi-api/pkg/apis/csi/v1alpha1": ["true"],
|
|
||||||
"staging/src/k8s.io/kube-aggregator/pkg/apis/apiregistration/v1": ["true"],
|
"staging/src/k8s.io/kube-aggregator/pkg/apis/apiregistration/v1": ["true"],
|
||||||
"staging/src/k8s.io/kube-aggregator/pkg/apis/apiregistration/v1beta1": ["true"],
|
"staging/src/k8s.io/kube-aggregator/pkg/apis/apiregistration/v1beta1": ["true"],
|
||||||
"staging/src/k8s.io/kube-controller-manager/config/v1alpha1": ["true"],
|
"staging/src/k8s.io/kube-controller-manager/config/v1alpha1": ["true"],
|
||||||
|
|
|
@ -1,8 +0,0 @@
|
||||||
# See the OWNERS docs at https://go.k8s.io/owners
|
|
||||||
|
|
||||||
approvers:
|
|
||||||
- saad-ali
|
|
||||||
- jsafrane
|
|
||||||
- msau42
|
|
||||||
reviewers:
|
|
||||||
- davidz627
|
|
|
@ -1,13 +0,0 @@
|
||||||
# Kubernetes CSI CRDs
|
|
||||||
|
|
||||||
The Kubernetes Container Storage Interface implementation defines some API objects as CRDs that Kubernetes components
|
|
||||||
including the Attach/Detach controller depend on.
|
|
||||||
|
|
||||||
If you are using CSI, it is recommended that you enable the relevant feature gates (e.g. `CSIDriverRegistry`, `CSINodeInfo`, etc.), and ensure the CRDs in this directory are installed.
|
|
||||||
|
|
||||||
These objects and their CRDs are defined in `staging/src/k8s.io/csi-api/pkg/crd/manifests`, the source of truth.
|
|
||||||
They are copied from that CRD manifest directory to this addon directory.
|
|
||||||
A unit test in `staging/src/k8s.io/csi-api/pkg/crd` verifies that this (and any other) copies of the manifest outside of `staging/src/k8s.io/csi-api/pkg/crd/manifests` do not drift from that source of truth.
|
|
||||||
If you need to make changes please make changes in the `staging/src/k8s.io/csi-api/pkg/crd/manifests` directory and then update this copy.
|
|
||||||
|
|
||||||
For more information, see: https://kubernetes-csi.github.io/docs/
|
|
|
@ -1,28 +0,0 @@
|
||||||
apiVersion: apiextensions.k8s.io/v1beta1
|
|
||||||
kind: CustomResourceDefinition
|
|
||||||
metadata:
|
|
||||||
name: csidrivers.csi.storage.k8s.io
|
|
||||||
labels:
|
|
||||||
addonmanager.kubernetes.io/mode: Reconcile
|
|
||||||
spec:
|
|
||||||
group: csi.storage.k8s.io
|
|
||||||
names:
|
|
||||||
kind: CSIDriver
|
|
||||||
plural: csidrivers
|
|
||||||
scope: Cluster
|
|
||||||
validation:
|
|
||||||
openAPIV3Schema:
|
|
||||||
properties:
|
|
||||||
spec:
|
|
||||||
description: Specification of the CSI Driver.
|
|
||||||
properties:
|
|
||||||
attachRequired:
|
|
||||||
description: Indicates this CSI volume driver requires an attach operation,
|
|
||||||
and that Kubernetes should call attach and wait for any attach operation
|
|
||||||
to complete before proceeding to mount.
|
|
||||||
type: boolean
|
|
||||||
podInfoOnMountVersion:
|
|
||||||
description: Indicates this CSI volume driver requires additional pod
|
|
||||||
information (like podName, podUID, etc.) during mount operations.
|
|
||||||
type: string
|
|
||||||
version: v1alpha1
|
|
|
@ -1,54 +0,0 @@
|
||||||
apiVersion: apiextensions.k8s.io/v1beta1
|
|
||||||
kind: CustomResourceDefinition
|
|
||||||
metadata:
|
|
||||||
name: csinodeinfos.csi.storage.k8s.io
|
|
||||||
labels:
|
|
||||||
addonmanager.kubernetes.io/mode: Reconcile
|
|
||||||
spec:
|
|
||||||
group: csi.storage.k8s.io
|
|
||||||
names:
|
|
||||||
kind: CSINodeInfo
|
|
||||||
plural: csinodeinfos
|
|
||||||
scope: Cluster
|
|
||||||
validation:
|
|
||||||
openAPIV3Schema:
|
|
||||||
properties:
|
|
||||||
spec:
|
|
||||||
description: Specification of CSINodeInfo
|
|
||||||
properties:
|
|
||||||
drivers:
|
|
||||||
description: List of CSI drivers running on the node and their specs.
|
|
||||||
type: array
|
|
||||||
items:
|
|
||||||
properties:
|
|
||||||
name:
|
|
||||||
description: The CSI driver that this object refers to.
|
|
||||||
type: string
|
|
||||||
nodeID:
|
|
||||||
description: The node from the driver point of view.
|
|
||||||
type: string
|
|
||||||
topologyKeys:
|
|
||||||
description: List of keys supported by the driver.
|
|
||||||
items:
|
|
||||||
type: string
|
|
||||||
type: array
|
|
||||||
status:
|
|
||||||
description: Status of CSINodeInfo
|
|
||||||
properties:
|
|
||||||
drivers:
|
|
||||||
description: List of CSI drivers running on the node and their statuses.
|
|
||||||
type: array
|
|
||||||
items:
|
|
||||||
properties:
|
|
||||||
name:
|
|
||||||
description: The CSI driver that this object refers to.
|
|
||||||
type: string
|
|
||||||
available:
|
|
||||||
description: Whether the CSI driver is installed.
|
|
||||||
type: boolean
|
|
||||||
volumePluginMechanism:
|
|
||||||
description: Indicates to external components the required mechanism
|
|
||||||
to use for any in-tree plugins replaced by this driver.
|
|
||||||
pattern: in-tree|csi
|
|
||||||
type: string
|
|
||||||
version: v1alpha1
|
|
|
@ -2691,9 +2691,6 @@ EOF
|
||||||
if [[ "${ENABLE_DEFAULT_STORAGE_CLASS:-}" == "true" ]]; then
|
if [[ "${ENABLE_DEFAULT_STORAGE_CLASS:-}" == "true" ]]; then
|
||||||
setup-addon-manifests "addons" "storage-class/gce"
|
setup-addon-manifests "addons" "storage-class/gce"
|
||||||
fi
|
fi
|
||||||
if [[ "${FEATURE_GATES:-}" =~ "AllAlpha=true" || "${FEATURE_GATES:-}" =~ "CSIDriverRegistry=true" || "${FEATURE_GATES:-}" =~ "CSINodeInfo=true" ]]; then
|
|
||||||
setup-addon-manifests "addons" "storage-crds"
|
|
||||||
fi
|
|
||||||
if [[ "${ENABLE_IP_MASQ_AGENT:-}" == "true" ]]; then
|
if [[ "${ENABLE_IP_MASQ_AGENT:-}" == "true" ]]; then
|
||||||
setup-addon-manifests "addons" "ip-masq-agent"
|
setup-addon-manifests "addons" "ip-masq-agent"
|
||||||
fi
|
fi
|
||||||
|
|
|
@ -901,18 +901,6 @@ function create_storage_class {
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
create_csi_crd() {
|
|
||||||
echo "create_csi_crd $1"
|
|
||||||
YAML_FILE=${KUBE_ROOT}/cluster/addons/storage-crds/$1.yaml
|
|
||||||
|
|
||||||
if [ -e "${YAML_FILE}" ]; then
|
|
||||||
echo "Create $1 crd"
|
|
||||||
${KUBECTL} --kubeconfig="${CERT_DIR}/admin.kubeconfig" create -f "${YAML_FILE}"
|
|
||||||
else
|
|
||||||
echo "No $1 available."
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
function print_success {
|
function print_success {
|
||||||
if [[ "${START_MODE}" != "kubeletonly" ]]; then
|
if [[ "${START_MODE}" != "kubeletonly" ]]; then
|
||||||
if [[ "${ENABLE_DAEMON}" = false ]]; then
|
if [[ "${ENABLE_DAEMON}" = false ]]; then
|
||||||
|
@ -1060,14 +1048,6 @@ if [[ "${DEFAULT_STORAGE_CLASS}" = "true" ]]; then
|
||||||
create_storage_class
|
create_storage_class
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ "${FEATURE_GATES:-}" == "AllAlpha=true" || "${FEATURE_GATES:-}" =~ "CSIDriverRegistry=true" ]]; then
|
|
||||||
create_csi_crd "csidriver"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [[ "${FEATURE_GATES:-}" == "AllAlpha=true" || "${FEATURE_GATES:-}" =~ "CSINodeInfo=true" ]]; then
|
|
||||||
create_csi_crd "csinodeinfo"
|
|
||||||
fi
|
|
||||||
|
|
||||||
print_success
|
print_success
|
||||||
|
|
||||||
if [[ "${ENABLE_DAEMON}" = false ]]; then
|
if [[ "${ENABLE_DAEMON}" = false ]]; then
|
||||||
|
|
|
@ -113,5 +113,4 @@ CODEGEN_PKG=./vendor/k8s.io/code-generator vendor/k8s.io/sample-controller/hack/
|
||||||
CODEGEN_PKG=./vendor/k8s.io/code-generator vendor/k8s.io/apiextensions-apiserver/hack/update-codegen.sh
|
CODEGEN_PKG=./vendor/k8s.io/code-generator vendor/k8s.io/apiextensions-apiserver/hack/update-codegen.sh
|
||||||
CODEGEN_PKG=./vendor/k8s.io/code-generator vendor/k8s.io/metrics/hack/update-codegen.sh
|
CODEGEN_PKG=./vendor/k8s.io/code-generator vendor/k8s.io/metrics/hack/update-codegen.sh
|
||||||
CODEGEN_PKG=./vendor/k8s.io/code-generator vendor/k8s.io/apiextensions-apiserver/examples/client-go/hack/update-codegen.sh
|
CODEGEN_PKG=./vendor/k8s.io/code-generator vendor/k8s.io/apiextensions-apiserver/examples/client-go/hack/update-codegen.sh
|
||||||
CODEGEN_PKG=./vendor/k8s.io/code-generator vendor/k8s.io/csi-api/hack/update-codegen.sh
|
|
||||||
CODEGEN_PKG=./vendor/k8s.io/code-generator vendor/k8s.io/node-api/hack/update-codegen.sh
|
CODEGEN_PKG=./vendor/k8s.io/code-generator vendor/k8s.io/node-api/hack/update-codegen.sh
|
||||||
|
|
|
@ -33,7 +33,6 @@ CODEGEN_PKG=./vendor/k8s.io/code-generator vendor/k8s.io/sample-apiserver/hack/v
|
||||||
CODEGEN_PKG=./vendor/k8s.io/code-generator vendor/k8s.io/sample-controller/hack/verify-codegen.sh
|
CODEGEN_PKG=./vendor/k8s.io/code-generator vendor/k8s.io/sample-controller/hack/verify-codegen.sh
|
||||||
CODEGEN_PKG=./vendor/k8s.io/code-generator vendor/k8s.io/apiextensions-apiserver/hack/verify-codegen.sh
|
CODEGEN_PKG=./vendor/k8s.io/code-generator vendor/k8s.io/apiextensions-apiserver/hack/verify-codegen.sh
|
||||||
CODEGEN_PKG=./vendor/k8s.io/code-generator vendor/k8s.io/metrics/hack/verify-codegen.sh
|
CODEGEN_PKG=./vendor/k8s.io/code-generator vendor/k8s.io/metrics/hack/verify-codegen.sh
|
||||||
CODEGEN_PKG=./vendor/k8s.io/code-generator vendor/k8s.io/csi-api/hack/verify-codegen.sh
|
|
||||||
CODEGEN_PKG=./vendor/k8s.io/code-generator vendor/k8s.io/node-api/hack/verify-codegen.sh
|
CODEGEN_PKG=./vendor/k8s.io/code-generator vendor/k8s.io/node-api/hack/verify-codegen.sh
|
||||||
|
|
||||||
"${KUBE_ROOT}/hack/update-codegen.sh" --verify-only
|
"${KUBE_ROOT}/hack/update-codegen.sh" --verify-only
|
||||||
|
|
|
@ -262,13 +262,8 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"SelectorRegexp": "k8s[.]io/(metrics/|utils/|csi-api/|heapster/|kube-controller-manager/)",
|
"SelectorRegexp": "k8s[.]io/(metrics/|utils/|heapster/|kube-controller-manager/)",
|
||||||
"AllowedPrefixes": [
|
"AllowedPrefixes": [
|
||||||
"k8s.io/csi-api/pkg/apis/csi/v1alpha1",
|
|
||||||
"k8s.io/csi-api/pkg/client/clientset/versioned",
|
|
||||||
"k8s.io/csi-api/pkg/client/listers/csi/v1alpha1",
|
|
||||||
"k8s.io/csi-api/pkg/client/informers/externalversions",
|
|
||||||
"k8s.io/csi-api/pkg/client/informers/externalversions/csi/v1alpha1",
|
|
||||||
"k8s.io/heapster/metrics/api/v1/types",
|
"k8s.io/heapster/metrics/api/v1/types",
|
||||||
"k8s.io/kube-controller-manager/config/v1alpha1",
|
"k8s.io/kube-controller-manager/config/v1alpha1",
|
||||||
"k8s.io/metrics/pkg/apis/custom_metrics/v1beta2",
|
"k8s.io/metrics/pkg/apis/custom_metrics/v1beta2",
|
||||||
|
|
|
@ -202,15 +202,6 @@
|
||||||
- k8s.io/client-go
|
- k8s.io/client-go
|
||||||
- k8s.io/node-api
|
- k8s.io/node-api
|
||||||
|
|
||||||
- baseImportPath: "./vendor/k8s.io/csi-api/"
|
|
||||||
allowedImports:
|
|
||||||
- k8s.io/api
|
|
||||||
- k8s.io/apimachinery
|
|
||||||
- k8s.io/apiextensions-apiserver
|
|
||||||
- k8s.io/client-go
|
|
||||||
- k8s.io/csi-api
|
|
||||||
- k8s.io/klog
|
|
||||||
|
|
||||||
- baseImportPath: "./vendor/k8s.io/csi-translation-lib/"
|
- baseImportPath: "./vendor/k8s.io/csi-translation-lib/"
|
||||||
allowedImports:
|
allowedImports:
|
||||||
- k8s.io/api
|
- k8s.io/api
|
||||||
|
|
|
@ -179,22 +179,6 @@ rules:
|
||||||
branch: master
|
branch: master
|
||||||
- repository: client-go
|
- repository: client-go
|
||||||
branch: master
|
branch: master
|
||||||
- destination: csi-api
|
|
||||||
library: true
|
|
||||||
branches:
|
|
||||||
- source:
|
|
||||||
branch: master
|
|
||||||
dir: staging/src/k8s.io/csi-api
|
|
||||||
name: master
|
|
||||||
dependencies:
|
|
||||||
- repository: apimachinery
|
|
||||||
branch: master
|
|
||||||
- repository: api
|
|
||||||
branch: master
|
|
||||||
- repository: client-go
|
|
||||||
branch: master
|
|
||||||
- repository: apiextensions-apiserver
|
|
||||||
branch: master
|
|
||||||
- destination: cli-runtime
|
- destination: cli-runtime
|
||||||
library: true
|
library: true
|
||||||
branches:
|
branches:
|
||||||
|
|
|
@ -27,7 +27,6 @@ staging_repos = [
|
||||||
"k8s.io/code-generator",
|
"k8s.io/code-generator",
|
||||||
"k8s.io/component-base",
|
"k8s.io/component-base",
|
||||||
"k8s.io/cri-api",
|
"k8s.io/cri-api",
|
||||||
"k8s.io/csi-api",
|
|
||||||
"k8s.io/csi-translation-lib",
|
"k8s.io/csi-translation-lib",
|
||||||
"k8s.io/kube-aggregator",
|
"k8s.io/kube-aggregator",
|
||||||
"k8s.io/kube-controller-manager",
|
"k8s.io/kube-controller-manager",
|
||||||
|
|
|
@ -26,7 +26,6 @@ filegroup(
|
||||||
"//staging/src/k8s.io/code-generator:all-srcs",
|
"//staging/src/k8s.io/code-generator:all-srcs",
|
||||||
"//staging/src/k8s.io/component-base:all-srcs",
|
"//staging/src/k8s.io/component-base:all-srcs",
|
||||||
"//staging/src/k8s.io/cri-api:all-srcs",
|
"//staging/src/k8s.io/cri-api:all-srcs",
|
||||||
"//staging/src/k8s.io/csi-api:all-srcs",
|
|
||||||
"//staging/src/k8s.io/csi-translation-lib:all-srcs",
|
"//staging/src/k8s.io/csi-translation-lib:all-srcs",
|
||||||
"//staging/src/k8s.io/kube-aggregator:all-srcs",
|
"//staging/src/k8s.io/kube-aggregator:all-srcs",
|
||||||
"//staging/src/k8s.io/kube-controller-manager:all-srcs",
|
"//staging/src/k8s.io/kube-controller-manager:all-srcs",
|
||||||
|
|
|
@ -1,2 +0,0 @@
|
||||||
Sorry, we do not accept changes directly against this repository. Please see
|
|
||||||
CONTRIBUTING.md for information on where and how to contribute instead.
|
|
|
@ -1,20 +0,0 @@
|
||||||
filegroup(
|
|
||||||
name = "package-srcs",
|
|
||||||
srcs = glob(["**"]),
|
|
||||||
tags = ["automanaged"],
|
|
||||||
visibility = ["//visibility:private"],
|
|
||||||
)
|
|
||||||
|
|
||||||
filegroup(
|
|
||||||
name = "all-srcs",
|
|
||||||
srcs = [
|
|
||||||
":package-srcs",
|
|
||||||
"//staging/src/k8s.io/csi-api/pkg/apis/csi/v1alpha1:all-srcs",
|
|
||||||
"//staging/src/k8s.io/csi-api/pkg/client/clientset/versioned:all-srcs",
|
|
||||||
"//staging/src/k8s.io/csi-api/pkg/client/informers/externalversions:all-srcs",
|
|
||||||
"//staging/src/k8s.io/csi-api/pkg/client/listers/csi/v1alpha1:all-srcs",
|
|
||||||
"//staging/src/k8s.io/csi-api/pkg/crd:all-srcs",
|
|
||||||
],
|
|
||||||
tags = ["automanaged"],
|
|
||||||
visibility = ["//visibility:public"],
|
|
||||||
)
|
|
|
@ -1,7 +0,0 @@
|
||||||
# Contributing guidelines
|
|
||||||
|
|
||||||
Do not open pull requests directly against this repository, they will be ignored. Instead, please open pull requests against [kubernetes/kubernetes](https://git.k8s.io/kubernetes/). Please follow the same [contributing guide](https://git.k8s.io/kubernetes/CONTRIBUTING.md) you would follow for any other pull request made to kubernetes/kubernetes.
|
|
||||||
|
|
||||||
This repository is published from [kubernetes/kubernetes/staging/src/k8s.io/csi-api](https://git.k8s.io/kubernetes/staging/src/k8s.io/csi-api) by the [kubernetes publishing-bot](https://git.k8s.io/publishing-bot).
|
|
||||||
|
|
||||||
Please see [Staging Directory and Publishing](https://git.k8s.io/community/contributors/devel/sig-architecture/staging.md) for more information.
|
|
|
@ -1,570 +0,0 @@
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/csi-api",
|
|
||||||
"GoVersion": "go1.12",
|
|
||||||
"GodepVersion": "v80-k8s-r1",
|
|
||||||
"Packages": [
|
|
||||||
"./..."
|
|
||||||
],
|
|
||||||
"Deps": [
|
|
||||||
{
|
|
||||||
"ImportPath": "github.com/davecgh/go-spew/spew",
|
|
||||||
"Rev": "782f4967f2dc4564575ca782fe2d04090b5faca8"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "github.com/evanphx/json-patch",
|
|
||||||
"Rev": "5858425f75500d40c52783dce87d085a483ce135"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "github.com/gogo/protobuf/proto",
|
|
||||||
"Rev": "342cbe0a04158f6dcb03ca0079991a51a4248c02"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "github.com/gogo/protobuf/sortkeys",
|
|
||||||
"Rev": "342cbe0a04158f6dcb03ca0079991a51a4248c02"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "github.com/golang/protobuf/proto",
|
|
||||||
"Rev": "b4deda0973fb4c70b50d226b1af49f3da59f5265"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "github.com/golang/protobuf/ptypes",
|
|
||||||
"Rev": "b4deda0973fb4c70b50d226b1af49f3da59f5265"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "github.com/golang/protobuf/ptypes/any",
|
|
||||||
"Rev": "b4deda0973fb4c70b50d226b1af49f3da59f5265"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "github.com/golang/protobuf/ptypes/duration",
|
|
||||||
"Rev": "b4deda0973fb4c70b50d226b1af49f3da59f5265"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "github.com/golang/protobuf/ptypes/timestamp",
|
|
||||||
"Rev": "b4deda0973fb4c70b50d226b1af49f3da59f5265"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "github.com/google/gofuzz",
|
|
||||||
"Rev": "24818f796faf91cd76ec7bddd72458fbced7a6c1"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "github.com/googleapis/gnostic/OpenAPIv2",
|
|
||||||
"Rev": "0c5108395e2debce0d731cf0287ddf7242066aba"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "github.com/googleapis/gnostic/compiler",
|
|
||||||
"Rev": "0c5108395e2debce0d731cf0287ddf7242066aba"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "github.com/googleapis/gnostic/extensions",
|
|
||||||
"Rev": "0c5108395e2debce0d731cf0287ddf7242066aba"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "github.com/hashicorp/golang-lru",
|
|
||||||
"Rev": "20f1fb78b0740ba8c3cb143a61e86ba5c8669768"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "github.com/hashicorp/golang-lru/simplelru",
|
|
||||||
"Rev": "20f1fb78b0740ba8c3cb143a61e86ba5c8669768"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "github.com/json-iterator/go",
|
|
||||||
"Rev": "ab8a2e0c74be9d3be70b3184d9acc634935ded82"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "github.com/modern-go/concurrent",
|
|
||||||
"Rev": "bacd9c7ef1dd9b15be4a9909b8ac7a4e313eec94"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "github.com/modern-go/reflect2",
|
|
||||||
"Rev": "94122c33edd36123c84d5368cfb2b69df93a0ec8"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "golang.org/x/crypto/ssh/terminal",
|
|
||||||
"Rev": "de0752318171da717af4ce24d0a2e8626afaeb11"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "golang.org/x/net/context",
|
|
||||||
"Rev": "65e2d4e15006aab9813ff8769e768bbf4bb667a0"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "golang.org/x/net/http/httpguts",
|
|
||||||
"Rev": "65e2d4e15006aab9813ff8769e768bbf4bb667a0"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "golang.org/x/net/http2",
|
|
||||||
"Rev": "65e2d4e15006aab9813ff8769e768bbf4bb667a0"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "golang.org/x/net/http2/hpack",
|
|
||||||
"Rev": "65e2d4e15006aab9813ff8769e768bbf4bb667a0"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "golang.org/x/net/idna",
|
|
||||||
"Rev": "65e2d4e15006aab9813ff8769e768bbf4bb667a0"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "golang.org/x/oauth2",
|
|
||||||
"Rev": "a6bd8cefa1811bd24b86f8902872e4e8225f74c4"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "golang.org/x/oauth2/internal",
|
|
||||||
"Rev": "a6bd8cefa1811bd24b86f8902872e4e8225f74c4"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "golang.org/x/sys/unix",
|
|
||||||
"Rev": "95c6576299259db960f6c5b9b69ea52422860fce"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "golang.org/x/sys/windows",
|
|
||||||
"Rev": "95c6576299259db960f6c5b9b69ea52422860fce"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "golang.org/x/text/secure/bidirule",
|
|
||||||
"Rev": "b19bf474d317b857955b12035d2c5acb57ce8b01"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "golang.org/x/text/transform",
|
|
||||||
"Rev": "b19bf474d317b857955b12035d2c5acb57ce8b01"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "golang.org/x/text/unicode/bidi",
|
|
||||||
"Rev": "b19bf474d317b857955b12035d2c5acb57ce8b01"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "golang.org/x/text/unicode/norm",
|
|
||||||
"Rev": "b19bf474d317b857955b12035d2c5acb57ce8b01"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "golang.org/x/time/rate",
|
|
||||||
"Rev": "f51c12702a4d776e4c1fa9b0fabab841babae631"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "gopkg.in/inf.v0",
|
|
||||||
"Rev": "3887ee99ecf07df5b447e9b00d9c0b2adaa9f3e4"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "gopkg.in/yaml.v2",
|
|
||||||
"Rev": "5420a8b6744d3b0345ab293f6fcba19c978f1183"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/api/admissionregistration/v1beta1",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/api/apps/v1",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/api/apps/v1beta1",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/api/apps/v1beta2",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/api/auditregistration/v1alpha1",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/api/authentication/v1",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/api/authentication/v1beta1",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/api/authorization/v1",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/api/authorization/v1beta1",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/api/autoscaling/v1",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/api/autoscaling/v2beta1",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/api/autoscaling/v2beta2",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/api/batch/v1",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/api/batch/v1beta1",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/api/batch/v2alpha1",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/api/certificates/v1beta1",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/api/coordination/v1",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/api/coordination/v1beta1",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/api/core/v1",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/api/events/v1beta1",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/api/extensions/v1beta1",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/api/networking/v1",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/api/networking/v1beta1",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/api/node/v1alpha1",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/api/node/v1beta1",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/api/policy/v1beta1",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/api/rbac/v1",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/api/rbac/v1alpha1",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/api/rbac/v1beta1",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/api/scheduling/v1",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/api/scheduling/v1alpha1",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/api/scheduling/v1beta1",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/api/settings/v1alpha1",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/api/storage/v1",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/api/storage/v1alpha1",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/api/storage/v1beta1",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/apimachinery/pkg/api/errors",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/apimachinery/pkg/api/meta",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/apimachinery/pkg/api/resource",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/apimachinery/pkg/apis/meta/internalversion",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/apimachinery/pkg/apis/meta/v1",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/apimachinery/pkg/apis/meta/v1/unstructured",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/apimachinery/pkg/apis/meta/v1beta1",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/apimachinery/pkg/conversion",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/apimachinery/pkg/conversion/queryparams",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/apimachinery/pkg/fields",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/apimachinery/pkg/labels",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/apimachinery/pkg/runtime",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/apimachinery/pkg/runtime/schema",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/apimachinery/pkg/runtime/serializer",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/apimachinery/pkg/runtime/serializer/json",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/apimachinery/pkg/runtime/serializer/protobuf",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/apimachinery/pkg/runtime/serializer/recognizer",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/apimachinery/pkg/runtime/serializer/streaming",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/apimachinery/pkg/runtime/serializer/versioning",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/apimachinery/pkg/selection",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/apimachinery/pkg/types",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/apimachinery/pkg/util/cache",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/apimachinery/pkg/util/clock",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/apimachinery/pkg/util/diff",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/apimachinery/pkg/util/errors",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/apimachinery/pkg/util/framer",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/apimachinery/pkg/util/intstr",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/apimachinery/pkg/util/json",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/apimachinery/pkg/util/mergepatch",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/apimachinery/pkg/util/naming",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/apimachinery/pkg/util/net",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/apimachinery/pkg/util/runtime",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/apimachinery/pkg/util/sets",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/apimachinery/pkg/util/strategicpatch",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/apimachinery/pkg/util/validation",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/apimachinery/pkg/util/validation/field",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/apimachinery/pkg/util/wait",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/apimachinery/pkg/util/yaml",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/apimachinery/pkg/version",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/apimachinery/pkg/watch",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/apimachinery/third_party/forked/golang/json",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/apimachinery/third_party/forked/golang/reflect",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/client-go/discovery",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/client-go/discovery/fake",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/client-go/kubernetes/scheme",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/client-go/pkg/apis/clientauthentication",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/client-go/pkg/apis/clientauthentication/v1alpha1",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/client-go/pkg/apis/clientauthentication/v1beta1",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/client-go/pkg/version",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/client-go/plugin/pkg/client/auth/exec",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/client-go/rest",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/client-go/rest/watch",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/client-go/testing",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/client-go/tools/cache",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/client-go/tools/clientcmd/api",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/client-go/tools/metrics",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/client-go/tools/pager",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/client-go/transport",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/client-go/util/cert",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/client-go/util/connrotation",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/client-go/util/flowcontrol",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/client-go/util/keyutil",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/client-go/util/retry",
|
|
||||||
"Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/klog",
|
|
||||||
"Rev": "8e90cee79f823779174776412c13478955131846"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/kube-openapi/pkg/util/proto",
|
|
||||||
"Rev": "b3a7cee44a305be0a69e1b9ac03018307287e1b0"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/utils/buffer",
|
|
||||||
"Rev": "c2654d5206da6b7b6ace12841e8f359bb89b443c"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/utils/integer",
|
|
||||||
"Rev": "c2654d5206da6b7b6ace12841e8f359bb89b443c"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "k8s.io/utils/trace",
|
|
||||||
"Rev": "c2654d5206da6b7b6ace12841e8f359bb89b443c"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ImportPath": "sigs.k8s.io/yaml",
|
|
||||||
"Rev": "fd68e9863619f6ec2fdd8625fe1f02e7c877e480"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
|
@ -1,4 +0,0 @@
|
||||||
# See the OWNERS docs at https://go.k8s.io/owners
|
|
||||||
|
|
||||||
approvers:
|
|
||||||
- dep-approvers
|
|
|
@ -1,5 +0,0 @@
|
||||||
This directory tree is generated automatically by godep.
|
|
||||||
|
|
||||||
Please do not edit.
|
|
||||||
|
|
||||||
See https://github.com/tools/godep for more information.
|
|
|
@ -1,201 +0,0 @@
|
||||||
Apache License
|
|
||||||
Version 2.0, January 2004
|
|
||||||
http://www.apache.org/licenses/
|
|
||||||
|
|
||||||
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
|
||||||
|
|
||||||
1. Definitions.
|
|
||||||
|
|
||||||
"License" shall mean the terms and conditions for use, reproduction,
|
|
||||||
and distribution as defined by Sections 1 through 9 of this document.
|
|
||||||
|
|
||||||
"Licensor" shall mean the copyright owner or entity authorized by
|
|
||||||
the copyright owner that is granting the License.
|
|
||||||
|
|
||||||
"Legal Entity" shall mean the union of the acting entity and all
|
|
||||||
other entities that control, are controlled by, or are under common
|
|
||||||
control with that entity. For the purposes of this definition,
|
|
||||||
"control" means (i) the power, direct or indirect, to cause the
|
|
||||||
direction or management of such entity, whether by contract or
|
|
||||||
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
|
||||||
outstanding shares, or (iii) beneficial ownership of such entity.
|
|
||||||
|
|
||||||
"You" (or "Your") shall mean an individual or Legal Entity
|
|
||||||
exercising permissions granted by this License.
|
|
||||||
|
|
||||||
"Source" form shall mean the preferred form for making modifications,
|
|
||||||
including but not limited to software source code, documentation
|
|
||||||
source, and configuration files.
|
|
||||||
|
|
||||||
"Object" form shall mean any form resulting from mechanical
|
|
||||||
transformation or translation of a Source form, including but
|
|
||||||
not limited to compiled object code, generated documentation,
|
|
||||||
and conversions to other media types.
|
|
||||||
|
|
||||||
"Work" shall mean the work of authorship, whether in Source or
|
|
||||||
Object form, made available under the License, as indicated by a
|
|
||||||
copyright notice that is included in or attached to the work
|
|
||||||
(an example is provided in the Appendix below).
|
|
||||||
|
|
||||||
"Derivative Works" shall mean any work, whether in Source or Object
|
|
||||||
form, that is based on (or derived from) the Work and for which the
|
|
||||||
editorial revisions, annotations, elaborations, or other modifications
|
|
||||||
represent, as a whole, an original work of authorship. For the purposes
|
|
||||||
of this License, Derivative Works shall not include works that remain
|
|
||||||
separable from, or merely link (or bind by name) to the interfaces of,
|
|
||||||
the Work and Derivative Works thereof.
|
|
||||||
|
|
||||||
"Contribution" shall mean any work of authorship, including
|
|
||||||
the original version of the Work and any modifications or additions
|
|
||||||
to that Work or Derivative Works thereof, that is intentionally
|
|
||||||
submitted to Licensor for inclusion in the Work by the copyright owner
|
|
||||||
or by an individual or Legal Entity authorized to submit on behalf of
|
|
||||||
the copyright owner. For the purposes of this definition, "submitted"
|
|
||||||
means any form of electronic, verbal, or written communication sent
|
|
||||||
to the Licensor or its representatives, including but not limited to
|
|
||||||
communication on electronic mailing lists, source code control systems,
|
|
||||||
and issue tracking systems that are managed by, or on behalf of, the
|
|
||||||
Licensor for the purpose of discussing and improving the Work, but
|
|
||||||
excluding communication that is conspicuously marked or otherwise
|
|
||||||
designated in writing by the copyright owner as "Not a Contribution."
|
|
||||||
|
|
||||||
"Contributor" shall mean Licensor and any individual or Legal Entity
|
|
||||||
on behalf of whom a Contribution has been received by Licensor and
|
|
||||||
subsequently incorporated within the Work.
|
|
||||||
|
|
||||||
2. Grant of Copyright License. Subject to the terms and conditions of
|
|
||||||
this License, each Contributor hereby grants to You a perpetual,
|
|
||||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
|
||||||
copyright license to reproduce, prepare Derivative Works of,
|
|
||||||
publicly display, publicly perform, sublicense, and distribute the
|
|
||||||
Work and such Derivative Works in Source or Object form.
|
|
||||||
|
|
||||||
3. Grant of Patent License. Subject to the terms and conditions of
|
|
||||||
this License, each Contributor hereby grants to You a perpetual,
|
|
||||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
|
||||||
(except as stated in this section) patent license to make, have made,
|
|
||||||
use, offer to sell, sell, import, and otherwise transfer the Work,
|
|
||||||
where such license applies only to those patent claims licensable
|
|
||||||
by such Contributor that are necessarily infringed by their
|
|
||||||
Contribution(s) alone or by combination of their Contribution(s)
|
|
||||||
with the Work to which such Contribution(s) was submitted. If You
|
|
||||||
institute patent litigation against any entity (including a
|
|
||||||
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
|
||||||
or a Contribution incorporated within the Work constitutes direct
|
|
||||||
or contributory patent infringement, then any patent licenses
|
|
||||||
granted to You under this License for that Work shall terminate
|
|
||||||
as of the date such litigation is filed.
|
|
||||||
|
|
||||||
4. Redistribution. You may reproduce and distribute copies of the
|
|
||||||
Work or Derivative Works thereof in any medium, with or without
|
|
||||||
modifications, and in Source or Object form, provided that You
|
|
||||||
meet the following conditions:
|
|
||||||
|
|
||||||
(a) You must give any other recipients of the Work or
|
|
||||||
Derivative Works a copy of this License; and
|
|
||||||
|
|
||||||
(b) You must cause any modified files to carry prominent notices
|
|
||||||
stating that You changed the files; and
|
|
||||||
|
|
||||||
(c) You must retain, in the Source form of any Derivative Works
|
|
||||||
that You distribute, all copyright, patent, trademark, and
|
|
||||||
attribution notices from the Source form of the Work,
|
|
||||||
excluding those notices that do not pertain to any part of
|
|
||||||
the Derivative Works; and
|
|
||||||
|
|
||||||
(d) If the Work includes a "NOTICE" text file as part of its
|
|
||||||
distribution, then any Derivative Works that You distribute must
|
|
||||||
include a readable copy of the attribution notices contained
|
|
||||||
within such NOTICE file, excluding those notices that do not
|
|
||||||
pertain to any part of the Derivative Works, in at least one
|
|
||||||
of the following places: within a NOTICE text file distributed
|
|
||||||
as part of the Derivative Works; within the Source form or
|
|
||||||
documentation, if provided along with the Derivative Works; or,
|
|
||||||
within a display generated by the Derivative Works, if and
|
|
||||||
wherever such third-party notices normally appear. The contents
|
|
||||||
of the NOTICE file are for informational purposes only and
|
|
||||||
do not modify the License. You may add Your own attribution
|
|
||||||
notices within Derivative Works that You distribute, alongside
|
|
||||||
or as an addendum to the NOTICE text from the Work, provided
|
|
||||||
that such additional attribution notices cannot be construed
|
|
||||||
as modifying the License.
|
|
||||||
|
|
||||||
You may add Your own copyright statement to Your modifications and
|
|
||||||
may provide additional or different license terms and conditions
|
|
||||||
for use, reproduction, or distribution of Your modifications, or
|
|
||||||
for any such Derivative Works as a whole, provided Your use,
|
|
||||||
reproduction, and distribution of the Work otherwise complies with
|
|
||||||
the conditions stated in this License.
|
|
||||||
|
|
||||||
5. Submission of Contributions. Unless You explicitly state otherwise,
|
|
||||||
any Contribution intentionally submitted for inclusion in the Work
|
|
||||||
by You to the Licensor shall be under the terms and conditions of
|
|
||||||
this License, without any additional terms or conditions.
|
|
||||||
Notwithstanding the above, nothing herein shall supersede or modify
|
|
||||||
the terms of any separate license agreement you may have executed
|
|
||||||
with Licensor regarding such Contributions.
|
|
||||||
|
|
||||||
6. Trademarks. This License does not grant permission to use the trade
|
|
||||||
names, trademarks, service marks, or product names of the Licensor,
|
|
||||||
except as required for reasonable and customary use in describing the
|
|
||||||
origin of the Work and reproducing the content of the NOTICE file.
|
|
||||||
|
|
||||||
7. Disclaimer of Warranty. Unless required by applicable law or
|
|
||||||
agreed to in writing, Licensor provides the Work (and each
|
|
||||||
Contributor provides its Contributions) on an "AS IS" BASIS,
|
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
|
||||||
implied, including, without limitation, any warranties or conditions
|
|
||||||
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
|
||||||
PARTICULAR PURPOSE. You are solely responsible for determining the
|
|
||||||
appropriateness of using or redistributing the Work and assume any
|
|
||||||
risks associated with Your exercise of permissions under this License.
|
|
||||||
|
|
||||||
8. Limitation of Liability. In no event and under no legal theory,
|
|
||||||
whether in tort (including negligence), contract, or otherwise,
|
|
||||||
unless required by applicable law (such as deliberate and grossly
|
|
||||||
negligent acts) or agreed to in writing, shall any Contributor be
|
|
||||||
liable to You for damages, including any direct, indirect, special,
|
|
||||||
incidental, or consequential damages of any character arising as a
|
|
||||||
result of this License or out of the use or inability to use the
|
|
||||||
Work (including but not limited to damages for loss of goodwill,
|
|
||||||
work stoppage, computer failure or malfunction, or any and all
|
|
||||||
other commercial damages or losses), even if such Contributor
|
|
||||||
has been advised of the possibility of such damages.
|
|
||||||
|
|
||||||
9. Accepting Warranty or Additional Liability. While redistributing
|
|
||||||
the Work or Derivative Works thereof, You may choose to offer,
|
|
||||||
and charge a fee for, acceptance of support, warranty, indemnity,
|
|
||||||
or other liability obligations and/or rights consistent with this
|
|
||||||
License. However, in accepting such obligations, You may act only
|
|
||||||
on Your own behalf and on Your sole responsibility, not on behalf
|
|
||||||
of any other Contributor, and only if You agree to indemnify,
|
|
||||||
defend, and hold each Contributor harmless for any liability
|
|
||||||
incurred by, or claims asserted against, such Contributor by reason
|
|
||||||
of your accepting any such warranty or additional liability.
|
|
||||||
|
|
||||||
END OF TERMS AND CONDITIONS
|
|
||||||
|
|
||||||
APPENDIX: How to apply the Apache License to your work.
|
|
||||||
|
|
||||||
To apply the Apache License to your work, attach the following
|
|
||||||
boilerplate notice, with the fields enclosed by brackets "{}"
|
|
||||||
replaced with your own identifying information. (Don't include
|
|
||||||
the brackets!) The text should be enclosed in the appropriate
|
|
||||||
comment syntax for the file format. We also recommend that a
|
|
||||||
file or class name and description of purpose be included on the
|
|
||||||
same "printed page" as the copyright notice for easier
|
|
||||||
identification within third-party archives.
|
|
||||||
|
|
||||||
Copyright {yyyy} {name of copyright owner}
|
|
||||||
|
|
||||||
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.
|
|
|
@ -1,5 +0,0 @@
|
||||||
# See the OWNERS docs at https://go.k8s.io/owners
|
|
||||||
|
|
||||||
approvers:
|
|
||||||
- jsafrane
|
|
||||||
- saad-ali
|
|
|
@ -1,28 +0,0 @@
|
||||||
## Purpose
|
|
||||||
|
|
||||||
This repository contains type definitions and client code for the CSI
|
|
||||||
APIs that Kubernetes makes use of.
|
|
||||||
|
|
||||||
Consumers of the CSI APIs can make use of this repository to access
|
|
||||||
implementations of the APIs.
|
|
||||||
|
|
||||||
## Community, discussion, contribution, and support
|
|
||||||
|
|
||||||
Learn how to engage with the Kubernetes community on the [community
|
|
||||||
page](http://kubernetes.io/community/).
|
|
||||||
|
|
||||||
You can reach the maintainers of this repository at:
|
|
||||||
|
|
||||||
- Slack: #sig-storage (on https://kubernetes.slack.com -- get an
|
|
||||||
invite at slack.kubernetes.io)
|
|
||||||
- Mailing List:
|
|
||||||
https://groups.google.com/forum/#!forum/kubernetes-sig-storage
|
|
||||||
|
|
||||||
### Code of Conduct
|
|
||||||
|
|
||||||
Participation in the Kubernetes community is governed by the [Kubernetes
|
|
||||||
Code of Conduct](code-of-conduct.md).
|
|
||||||
|
|
||||||
### Contibution Guidelines
|
|
||||||
|
|
||||||
See [CONTRIBUTING.md](CONTRIBUTING.md) for more information.
|
|
|
@ -1,13 +0,0 @@
|
||||||
# Defined below are the security contacts for this repo.
|
|
||||||
#
|
|
||||||
# They are the contact point for the Product Security Committee to reach out
|
|
||||||
# to for triaging and handling of incoming issues.
|
|
||||||
#
|
|
||||||
# The below names agree to abide by the
|
|
||||||
# [Embargo Policy](https://git.k8s.io/security/private-distributors-list.md#embargo-policy)
|
|
||||||
# and will be removed and replaced if they violate that agreement.
|
|
||||||
#
|
|
||||||
# DO NOT REPORT SECURITY VULNERABILITIES DIRECTLY TO THESE NAMES, FOLLOW THE
|
|
||||||
# INSTRUCTIONS AT https://kubernetes.io/security/
|
|
||||||
|
|
||||||
saad-ali
|
|
|
@ -1,3 +0,0 @@
|
||||||
# Kubernetes Community Code of Conduct
|
|
||||||
|
|
||||||
Please refer to our [Kubernetes Community Code of Conduct](https://git.k8s.io/community/code-of-conduct.md)
|
|
|
@ -1,16 +0,0 @@
|
||||||
/*
|
|
||||||
Copyright 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.
|
|
||||||
*/
|
|
||||||
|
|
|
@ -1,32 +0,0 @@
|
||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
# Copyright 2018 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.
|
|
||||||
|
|
||||||
set -o errexit
|
|
||||||
set -o nounset
|
|
||||||
set -o pipefail
|
|
||||||
|
|
||||||
SCRIPT_ROOT=$(dirname "${BASH_SOURCE[0]}")/..
|
|
||||||
CODEGEN_PKG=${CODEGEN_PKG:-$(cd "${SCRIPT_ROOT}"; ls -d -1 ./vendor/k8s.io/code-generator 2>/dev/null || echo ../code-generator)}
|
|
||||||
|
|
||||||
# generate the code with:
|
|
||||||
# --output-base because this script should also be able to run inside the vendor dir of
|
|
||||||
# k8s.io/kubernetes. The output-base is needed for the generators to output into the vendor dir
|
|
||||||
# instead of the $GOPATH directly. For normal projects this can be dropped.
|
|
||||||
"${CODEGEN_PKG}"/generate-groups.sh "deepcopy,client,informer,lister" \
|
|
||||||
k8s.io/csi-api/pkg/client k8s.io/csi-api/pkg/apis \
|
|
||||||
csi:v1alpha1 \
|
|
||||||
--output-base "$(dirname "${BASH_SOURCE[0]}")/../../.." \
|
|
||||||
--go-header-file "${SCRIPT_ROOT}"/hack/boilerplate.go.txt
|
|
|
@ -1,48 +0,0 @@
|
||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
# Copyright 2018 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.
|
|
||||||
|
|
||||||
set -o errexit
|
|
||||||
set -o nounset
|
|
||||||
set -o pipefail
|
|
||||||
|
|
||||||
SCRIPT_ROOT=$(dirname "${BASH_SOURCE[0]}")/..
|
|
||||||
|
|
||||||
DIFFROOT="${SCRIPT_ROOT}/pkg"
|
|
||||||
TMP_DIFFROOT="${SCRIPT_ROOT}/_tmp/pkg"
|
|
||||||
_tmp="${SCRIPT_ROOT}/_tmp"
|
|
||||||
|
|
||||||
cleanup() {
|
|
||||||
rm -rf "${_tmp}"
|
|
||||||
}
|
|
||||||
trap "cleanup" EXIT SIGINT
|
|
||||||
|
|
||||||
cleanup
|
|
||||||
|
|
||||||
mkdir -p "${TMP_DIFFROOT}"
|
|
||||||
cp -a "${DIFFROOT}"/* "${TMP_DIFFROOT}"
|
|
||||||
|
|
||||||
"${SCRIPT_ROOT}/hack/update-codegen.sh"
|
|
||||||
echo "diffing ${DIFFROOT} against freshly generated codegen"
|
|
||||||
ret=0
|
|
||||||
diff -Naupr "${DIFFROOT}" "${TMP_DIFFROOT}" || ret=$?
|
|
||||||
cp -a "${TMP_DIFFROOT}"/* "${DIFFROOT}"
|
|
||||||
if [[ $ret -eq 0 ]]
|
|
||||||
then
|
|
||||||
echo "${DIFFROOT} up to date."
|
|
||||||
else
|
|
||||||
echo "${DIFFROOT} is out of date. Please run hack/update-codegen.sh"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
|
@ -1,12 +0,0 @@
|
||||||
# See the OWNERS docs at https://go.k8s.io/owners
|
|
||||||
|
|
||||||
# Disable inheritance as this is an api owners file
|
|
||||||
options:
|
|
||||||
no_parent_owners: true
|
|
||||||
approvers:
|
|
||||||
- api-approvers
|
|
||||||
reviewers:
|
|
||||||
- api-reviewers
|
|
||||||
- sig-storage-reviewers
|
|
||||||
labels:
|
|
||||||
- kind/api-change
|
|
|
@ -1,33 +0,0 @@
|
||||||
load("@io_bazel_rules_go//go:def.bzl", "go_library")
|
|
||||||
|
|
||||||
go_library(
|
|
||||||
name = "go_default_library",
|
|
||||||
srcs = [
|
|
||||||
"doc.go",
|
|
||||||
"register.go",
|
|
||||||
"types.go",
|
|
||||||
"zz_generated.deepcopy.go",
|
|
||||||
],
|
|
||||||
importmap = "k8s.io/kubernetes/vendor/k8s.io/csi-api/pkg/apis/csi/v1alpha1",
|
|
||||||
importpath = "k8s.io/csi-api/pkg/apis/csi/v1alpha1",
|
|
||||||
visibility = ["//visibility:public"],
|
|
||||||
deps = [
|
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
|
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/runtime:go_default_library",
|
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/runtime/schema:go_default_library",
|
|
||||||
],
|
|
||||||
)
|
|
||||||
|
|
||||||
filegroup(
|
|
||||||
name = "package-srcs",
|
|
||||||
srcs = glob(["**"]),
|
|
||||||
tags = ["automanaged"],
|
|
||||||
visibility = ["//visibility:private"],
|
|
||||||
)
|
|
||||||
|
|
||||||
filegroup(
|
|
||||||
name = "all-srcs",
|
|
||||||
srcs = [":package-srcs"],
|
|
||||||
tags = ["automanaged"],
|
|
||||||
visibility = ["//visibility:public"],
|
|
||||||
)
|
|
|
@ -1,52 +0,0 @@
|
||||||
# CSINodeInfo and CSIDriverInfo Usage and Lifecycle
|
|
||||||
|
|
||||||
CSINodeInfo is an API object representing CSI Information at the Node level.
|
|
||||||
CSINodeInfo contains a Spec and a Status, each containing Drivers represent the
|
|
||||||
driver spec and status respectively. The CSIDriverInfoSpec represents the
|
|
||||||
specification of the driver and is generally not changed, whereas the
|
|
||||||
CSIDriverInfoStatus represents the current status of the driver and can be
|
|
||||||
updated and reacted to by various components.
|
|
||||||
|
|
||||||
## Who creates it and when
|
|
||||||
|
|
||||||
CSINodeInfo is created by Kubelet when the first CSI Driver is installed to the
|
|
||||||
cluster and it is registered through the Kubelet device registration mechanism.
|
|
||||||
|
|
||||||
## Who updates CSIDriverInfo Spec and when
|
|
||||||
|
|
||||||
The CSIDriverInfoSpec for a driver is created upon installation of the CSI
|
|
||||||
Driver to the cluster and it is registered through the Kubelet device
|
|
||||||
registration mechanism. The spec is populated with information about the driver
|
|
||||||
through the nodeinfomanager (inside Kubelet) and will remain unchanged from then
|
|
||||||
on.
|
|
||||||
|
|
||||||
## Who updates Status and when
|
|
||||||
|
|
||||||
The CSIDriverInfoStatus for the driver is created upon installation of the CSI
|
|
||||||
Driver to the cluster (the same time as the spec) and it is registered through
|
|
||||||
the Kubelet device registration mechanism. The Status contains information about
|
|
||||||
installation and the required Volume Plugin Mechanism of the driver. When the
|
|
||||||
driver is installed/uninstalled through the Kubelet device registration
|
|
||||||
mechanism the Available flag is flipped from true/false respectively. The
|
|
||||||
migration status will also be updated when the flags for migration are set to
|
|
||||||
true/false on the Kubelet for that Driver on that node.
|
|
||||||
|
|
||||||
## Consumers of Status and Spec
|
|
||||||
|
|
||||||
Currently the only consumer of CSINodeInfo/CSIDriverInfo is the
|
|
||||||
csi-external-provisioner. In the future, the Attach Detach Controller (ADC) will
|
|
||||||
need to read this object to determine migration status on a per driver per node
|
|
||||||
basis. The creation of the CSINodeInfo object could possibly race with the
|
|
||||||
Attach/Detach controller as for CSI Migration the controller depend on the
|
|
||||||
existence of the API object for the driver but it will not have been created
|
|
||||||
yet. The ADC is expected to fail (and retry with exponential backoff) the
|
|
||||||
operation if it is expecting the object and it has not yet been created.
|
|
||||||
|
|
||||||
## Creation of CSINodeInfo object on Kubelet startup
|
|
||||||
|
|
||||||
For CSI Migration Alpha we expect any user who turns on the feature has both
|
|
||||||
Kubelet and ADC at a version where the CSINodeInfo's are being created on
|
|
||||||
Kubelet startup. We will not promote the feature to Beta (on by default) until
|
|
||||||
the CSINodeInfo's are being created on Kubelet startup for a 2 version skew to
|
|
||||||
prevent the case where the CSINodeInfo does not exist when the ADC depends on
|
|
||||||
it. This prevents the race described above becoming a permanent bad state.
|
|
|
@ -1,22 +0,0 @@
|
||||||
/*
|
|
||||||
Copyright 2018 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.
|
|
||||||
*/
|
|
||||||
|
|
||||||
// +k8s:deepcopy-gen=package
|
|
||||||
// +groupName=csi.storage.k8s.io
|
|
||||||
// +k8s:openapi-gen=true
|
|
||||||
|
|
||||||
// Package v1alpha1 provides alpha API for CSI API objects.
|
|
||||||
package v1alpha1 // import "k8s.io/csi-api/pkg/apis/csi/v1alpha1"
|
|
|
@ -1,62 +0,0 @@
|
||||||
/*
|
|
||||||
Copyright 2018 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 v1alpha1
|
|
||||||
|
|
||||||
import (
|
|
||||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
|
||||||
"k8s.io/apimachinery/pkg/runtime"
|
|
||||||
"k8s.io/apimachinery/pkg/runtime/schema"
|
|
||||||
)
|
|
||||||
|
|
||||||
const (
|
|
||||||
// GroupName is the group name use in this package
|
|
||||||
GroupName string = "csi.storage.k8s.io"
|
|
||||||
|
|
||||||
// CsiDriverResourcePlural is the plural name of the CSIDriver resource
|
|
||||||
CsiDriverResourcePlural string = "csidrivers"
|
|
||||||
|
|
||||||
// CsiNodeInfoResourcePlural is the plural name of the CSINode resource
|
|
||||||
CsiNodeInfoResourcePlural string = "csinodeinfos"
|
|
||||||
)
|
|
||||||
|
|
||||||
// SchemeGroupVersion is group version used to register these objects
|
|
||||||
var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1alpha1"}
|
|
||||||
|
|
||||||
// Resource takes an unqualified resource and returns a Group qualified GroupResource
|
|
||||||
func Resource(resource string) schema.GroupResource {
|
|
||||||
return SchemeGroupVersion.WithResource(resource).GroupResource()
|
|
||||||
}
|
|
||||||
|
|
||||||
var (
|
|
||||||
// SchemeBuilder collects schemas to build.
|
|
||||||
SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
|
|
||||||
// AddToScheme is used by generated client to add this scheme to the generated client.
|
|
||||||
AddToScheme = SchemeBuilder.AddToScheme
|
|
||||||
)
|
|
||||||
|
|
||||||
// Adds the list of known types to the given scheme.
|
|
||||||
func addKnownTypes(scheme *runtime.Scheme) error {
|
|
||||||
scheme.AddKnownTypes(SchemeGroupVersion,
|
|
||||||
&CSIDriver{},
|
|
||||||
&CSIDriverList{},
|
|
||||||
&CSINodeInfo{},
|
|
||||||
&CSINodeInfoList{},
|
|
||||||
)
|
|
||||||
|
|
||||||
metav1.AddToGroupVersion(scheme, SchemeGroupVersion)
|
|
||||||
return nil
|
|
||||||
}
|
|
|
@ -1,190 +0,0 @@
|
||||||
/*
|
|
||||||
Copyright 2018 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 v1alpha1
|
|
||||||
|
|
||||||
import metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
|
||||||
|
|
||||||
// VolumePluginMechanism is the type of mechanism components should use for volume operations
|
|
||||||
type VolumePluginMechanism string
|
|
||||||
|
|
||||||
const (
|
|
||||||
// VolumePluginMechanismInTree means components should use the in-tree plugin for volume operations
|
|
||||||
VolumePluginMechanismInTree VolumePluginMechanism = "in-tree"
|
|
||||||
// VolumePluginMechanismCSI means components should use the CSI Driver for volume operations
|
|
||||||
VolumePluginMechanismCSI VolumePluginMechanism = "csi"
|
|
||||||
)
|
|
||||||
|
|
||||||
// +genclient
|
|
||||||
// +genclient:nonNamespaced
|
|
||||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
|
||||||
|
|
||||||
// CSIDriver captures information about a Container Storage Interface (CSI)
|
|
||||||
// volume driver deployed on the cluster.
|
|
||||||
// CSIDriver objects are non-namespaced.
|
|
||||||
type CSIDriver struct {
|
|
||||||
metav1.TypeMeta `json:",inline"`
|
|
||||||
|
|
||||||
// Standard object metadata.
|
|
||||||
// metadata.Name indicates the name of the CSI driver that this object
|
|
||||||
// refers to; it MUST be the same name returned by the CSI GetPluginName()
|
|
||||||
// call for that driver.
|
|
||||||
// More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
|
|
||||||
metav1.ObjectMeta `json:"metadata,omitempty"`
|
|
||||||
|
|
||||||
// Specification of the CSI Driver.
|
|
||||||
Spec CSIDriverSpec `json:"spec"`
|
|
||||||
}
|
|
||||||
|
|
||||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
|
||||||
|
|
||||||
// CSIDriverList is a collection of CSIDriver objects.
|
|
||||||
type CSIDriverList struct {
|
|
||||||
metav1.TypeMeta `json:",inline"`
|
|
||||||
|
|
||||||
// Standard list metadata
|
|
||||||
// More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
|
|
||||||
// +optional
|
|
||||||
metav1.ListMeta `json:"metadata,omitempty"`
|
|
||||||
|
|
||||||
// items is the list of CSIDriver
|
|
||||||
Items []CSIDriver `json:"items"`
|
|
||||||
}
|
|
||||||
|
|
||||||
// CSIDriverSpec is the specification of a CSIDriver.
|
|
||||||
type CSIDriverSpec struct {
|
|
||||||
// attachRequired indicates this CSI volume driver requires an attach
|
|
||||||
// operation (because it implements the CSI ControllerPublishVolume()
|
|
||||||
// method), and that Kubernetes should call attach and wait for any attach
|
|
||||||
// operation to complete before proceeding to mounting.
|
|
||||||
// If value is not specified, default is false -- meaning attach will not be
|
|
||||||
// called.
|
|
||||||
// +optional
|
|
||||||
AttachRequired *bool `json:"attachRequired,omitempty"`
|
|
||||||
|
|
||||||
// If specified, podInfoRequiredOnMount indicates this CSI volume driver
|
|
||||||
// requires additional pod information (like podName, podUID, etc.) during
|
|
||||||
// mount operations.
|
|
||||||
// If value is not specified, pod information will not be passed on mount.
|
|
||||||
// If value is set to a valid version, Kubelet will pass pod information as
|
|
||||||
// VolumeAttributes in the CSI NodePublishVolume() calls.
|
|
||||||
// Supported versions:
|
|
||||||
// Version "v1" will pass the following ValueAttributes
|
|
||||||
// "csi.storage.k8s.io/pod.name": pod.Name
|
|
||||||
// "csi.storage.k8s.io/pod.namespace": pod.Namespace
|
|
||||||
// "csi.storage.k8s.io/pod.uid": string(pod.UID)
|
|
||||||
// +optional
|
|
||||||
PodInfoOnMountVersion *string `json:"podInfoOnMountVersion,omitempty"`
|
|
||||||
}
|
|
||||||
|
|
||||||
// +genclient
|
|
||||||
// +genclient:nonNamespaced
|
|
||||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
|
||||||
|
|
||||||
// CSINodeInfo holds information about all CSI drivers installed on a node.
|
|
||||||
type CSINodeInfo struct {
|
|
||||||
metav1.TypeMeta `json:",inline"`
|
|
||||||
|
|
||||||
// metadata.name must be the Kubernetes node name.
|
|
||||||
metav1.ObjectMeta `json:"metadata,omitempty"`
|
|
||||||
|
|
||||||
// spec is the specification of CSINodeInfo
|
|
||||||
Spec CSINodeInfoSpec `json:"spec"`
|
|
||||||
|
|
||||||
// status is the current status of CSINodeInfo
|
|
||||||
Status CSINodeInfoStatus `json:"status"`
|
|
||||||
}
|
|
||||||
|
|
||||||
// CSINodeInfoSpec holds information about the specification of all CSI drivers installed on a node
|
|
||||||
type CSINodeInfoSpec struct {
|
|
||||||
// drivers is a list of specifications of CSIDriverInfo
|
|
||||||
// +patchMergeKey=name
|
|
||||||
// +patchStrategy=merge
|
|
||||||
Drivers []CSIDriverInfoSpec `json:"drivers" patchStrategy:"merge" patchMergeKey:"name"`
|
|
||||||
}
|
|
||||||
|
|
||||||
// CSINodeInfoStatus holds information about the status of all CSI drivers installed on a node
|
|
||||||
type CSINodeInfoStatus struct {
|
|
||||||
// drivers is a list of the statuses of CSIDriverInfo
|
|
||||||
// +patchMergeKey=name
|
|
||||||
// +patchStrategy=merge
|
|
||||||
Drivers []CSIDriverInfoStatus `json:"drivers" patchStrategy:"merge" patchMergeKey:"name"`
|
|
||||||
}
|
|
||||||
|
|
||||||
// CSIDriverInfoStatus holds information about the status of one CSI driver installed on a node
|
|
||||||
type CSIDriverInfoStatus struct {
|
|
||||||
// name is the name of the CSI driver that this object refers to.
|
|
||||||
// This MUST be the same name returned by the CSI GetPluginName() call for
|
|
||||||
// that driver.
|
|
||||||
Name string `json:"name"`
|
|
||||||
|
|
||||||
// available is a boolean representing whether the driver has been installed
|
|
||||||
// on this node or not.
|
|
||||||
Available bool `json:"available"`
|
|
||||||
|
|
||||||
// volumePluginMechanism announces what mechanism underlies volume plugins.
|
|
||||||
// It is set by Kubelet. It is used by the attach/detach controller, which
|
|
||||||
// needs to know how to perform attachments. The allowed values are:
|
|
||||||
// * "in-tree": the volume operation (e.g., attach/detach) ought to be
|
|
||||||
// directly performed by the attach/detach controller.
|
|
||||||
// * "csi-plugin": the attach/detach controller ought to request
|
|
||||||
// the csi plugin to perform the volume operation rather than perform it directly.
|
|
||||||
VolumePluginMechanism VolumePluginMechanism `json:"volumePluginMechanism"`
|
|
||||||
}
|
|
||||||
|
|
||||||
// CSIDriverInfoSpec holds information about the specification of one CSI driver installed on a node
|
|
||||||
type CSIDriverInfoSpec struct {
|
|
||||||
// name is the name of the CSI driver that this object refers to.
|
|
||||||
// This MUST be the same name returned by the CSI GetPluginName() call for
|
|
||||||
// that driver.
|
|
||||||
Name string `json:"name"`
|
|
||||||
|
|
||||||
// nodeID of the node from the driver point of view.
|
|
||||||
// This field enables Kubernetes to communicate with storage systems that do
|
|
||||||
// not share the same nomenclature for nodes. For example, Kubernetes may
|
|
||||||
// refer to a given node as "node1", but the storage system may refer to
|
|
||||||
// the same node as "nodeA". When Kubernetes issues a command to the storage
|
|
||||||
// system to attach a volume to a specific node, it can use this field to
|
|
||||||
// refer to the node name using the ID that the storage system will
|
|
||||||
// understand, e.g. "nodeA" instead of "node1".
|
|
||||||
NodeID string `json:"nodeID"`
|
|
||||||
|
|
||||||
// topologyKeys is the list of keys supported by the driver.
|
|
||||||
// When a driver is initialized on a cluster, it provides a set of topology
|
|
||||||
// keys that it understands (e.g. "company.com/zone", "company.com/region").
|
|
||||||
// When a driver is initialized on a node it provides the same topology keys
|
|
||||||
// along with values that kubelet applies to the coresponding node API
|
|
||||||
// object as labels.
|
|
||||||
// When Kubernetes does topology aware provisioning, it can use this list to
|
|
||||||
// determine which labels it should retrieve from the node object and pass
|
|
||||||
// back to the driver.
|
|
||||||
TopologyKeys []string `json:"topologyKeys"`
|
|
||||||
}
|
|
||||||
|
|
||||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
|
||||||
|
|
||||||
// CSINodeInfoList is a collection of CSINodeInfo objects.
|
|
||||||
type CSINodeInfoList struct {
|
|
||||||
metav1.TypeMeta `json:",inline"`
|
|
||||||
|
|
||||||
// Standard list metadata
|
|
||||||
// More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
|
|
||||||
// +optional
|
|
||||||
metav1.ListMeta `json:"metadata,omitempty"`
|
|
||||||
|
|
||||||
// items is the list of CSINodeInfo
|
|
||||||
Items []CSINodeInfo `json:"items"`
|
|
||||||
}
|
|
|
@ -1,253 +0,0 @@
|
||||||
// +build !ignore_autogenerated
|
|
||||||
|
|
||||||
/*
|
|
||||||
Copyright 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.
|
|
||||||
*/
|
|
||||||
|
|
||||||
// Code generated by deepcopy-gen. DO NOT EDIT.
|
|
||||||
|
|
||||||
package v1alpha1
|
|
||||||
|
|
||||||
import (
|
|
||||||
runtime "k8s.io/apimachinery/pkg/runtime"
|
|
||||||
)
|
|
||||||
|
|
||||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
|
|
||||||
func (in *CSIDriver) DeepCopyInto(out *CSIDriver) {
|
|
||||||
*out = *in
|
|
||||||
out.TypeMeta = in.TypeMeta
|
|
||||||
in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
|
|
||||||
in.Spec.DeepCopyInto(&out.Spec)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CSIDriver.
|
|
||||||
func (in *CSIDriver) DeepCopy() *CSIDriver {
|
|
||||||
if in == nil {
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
out := new(CSIDriver)
|
|
||||||
in.DeepCopyInto(out)
|
|
||||||
return out
|
|
||||||
}
|
|
||||||
|
|
||||||
// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
|
|
||||||
func (in *CSIDriver) DeepCopyObject() runtime.Object {
|
|
||||||
if c := in.DeepCopy(); c != nil {
|
|
||||||
return c
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
|
|
||||||
func (in *CSIDriverInfoSpec) DeepCopyInto(out *CSIDriverInfoSpec) {
|
|
||||||
*out = *in
|
|
||||||
if in.TopologyKeys != nil {
|
|
||||||
in, out := &in.TopologyKeys, &out.TopologyKeys
|
|
||||||
*out = make([]string, len(*in))
|
|
||||||
copy(*out, *in)
|
|
||||||
}
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CSIDriverInfoSpec.
|
|
||||||
func (in *CSIDriverInfoSpec) DeepCopy() *CSIDriverInfoSpec {
|
|
||||||
if in == nil {
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
out := new(CSIDriverInfoSpec)
|
|
||||||
in.DeepCopyInto(out)
|
|
||||||
return out
|
|
||||||
}
|
|
||||||
|
|
||||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
|
|
||||||
func (in *CSIDriverInfoStatus) DeepCopyInto(out *CSIDriverInfoStatus) {
|
|
||||||
*out = *in
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CSIDriverInfoStatus.
|
|
||||||
func (in *CSIDriverInfoStatus) DeepCopy() *CSIDriverInfoStatus {
|
|
||||||
if in == nil {
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
out := new(CSIDriverInfoStatus)
|
|
||||||
in.DeepCopyInto(out)
|
|
||||||
return out
|
|
||||||
}
|
|
||||||
|
|
||||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
|
|
||||||
func (in *CSIDriverList) DeepCopyInto(out *CSIDriverList) {
|
|
||||||
*out = *in
|
|
||||||
out.TypeMeta = in.TypeMeta
|
|
||||||
out.ListMeta = in.ListMeta
|
|
||||||
if in.Items != nil {
|
|
||||||
in, out := &in.Items, &out.Items
|
|
||||||
*out = make([]CSIDriver, len(*in))
|
|
||||||
for i := range *in {
|
|
||||||
(*in)[i].DeepCopyInto(&(*out)[i])
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CSIDriverList.
|
|
||||||
func (in *CSIDriverList) DeepCopy() *CSIDriverList {
|
|
||||||
if in == nil {
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
out := new(CSIDriverList)
|
|
||||||
in.DeepCopyInto(out)
|
|
||||||
return out
|
|
||||||
}
|
|
||||||
|
|
||||||
// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
|
|
||||||
func (in *CSIDriverList) DeepCopyObject() runtime.Object {
|
|
||||||
if c := in.DeepCopy(); c != nil {
|
|
||||||
return c
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
|
|
||||||
func (in *CSIDriverSpec) DeepCopyInto(out *CSIDriverSpec) {
|
|
||||||
*out = *in
|
|
||||||
if in.AttachRequired != nil {
|
|
||||||
in, out := &in.AttachRequired, &out.AttachRequired
|
|
||||||
*out = new(bool)
|
|
||||||
**out = **in
|
|
||||||
}
|
|
||||||
if in.PodInfoOnMountVersion != nil {
|
|
||||||
in, out := &in.PodInfoOnMountVersion, &out.PodInfoOnMountVersion
|
|
||||||
*out = new(string)
|
|
||||||
**out = **in
|
|
||||||
}
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CSIDriverSpec.
|
|
||||||
func (in *CSIDriverSpec) DeepCopy() *CSIDriverSpec {
|
|
||||||
if in == nil {
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
out := new(CSIDriverSpec)
|
|
||||||
in.DeepCopyInto(out)
|
|
||||||
return out
|
|
||||||
}
|
|
||||||
|
|
||||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
|
|
||||||
func (in *CSINodeInfo) DeepCopyInto(out *CSINodeInfo) {
|
|
||||||
*out = *in
|
|
||||||
out.TypeMeta = in.TypeMeta
|
|
||||||
in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
|
|
||||||
in.Spec.DeepCopyInto(&out.Spec)
|
|
||||||
in.Status.DeepCopyInto(&out.Status)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CSINodeInfo.
|
|
||||||
func (in *CSINodeInfo) DeepCopy() *CSINodeInfo {
|
|
||||||
if in == nil {
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
out := new(CSINodeInfo)
|
|
||||||
in.DeepCopyInto(out)
|
|
||||||
return out
|
|
||||||
}
|
|
||||||
|
|
||||||
// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
|
|
||||||
func (in *CSINodeInfo) DeepCopyObject() runtime.Object {
|
|
||||||
if c := in.DeepCopy(); c != nil {
|
|
||||||
return c
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
|
|
||||||
func (in *CSINodeInfoList) DeepCopyInto(out *CSINodeInfoList) {
|
|
||||||
*out = *in
|
|
||||||
out.TypeMeta = in.TypeMeta
|
|
||||||
out.ListMeta = in.ListMeta
|
|
||||||
if in.Items != nil {
|
|
||||||
in, out := &in.Items, &out.Items
|
|
||||||
*out = make([]CSINodeInfo, len(*in))
|
|
||||||
for i := range *in {
|
|
||||||
(*in)[i].DeepCopyInto(&(*out)[i])
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CSINodeInfoList.
|
|
||||||
func (in *CSINodeInfoList) DeepCopy() *CSINodeInfoList {
|
|
||||||
if in == nil {
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
out := new(CSINodeInfoList)
|
|
||||||
in.DeepCopyInto(out)
|
|
||||||
return out
|
|
||||||
}
|
|
||||||
|
|
||||||
// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
|
|
||||||
func (in *CSINodeInfoList) DeepCopyObject() runtime.Object {
|
|
||||||
if c := in.DeepCopy(); c != nil {
|
|
||||||
return c
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
|
|
||||||
func (in *CSINodeInfoSpec) DeepCopyInto(out *CSINodeInfoSpec) {
|
|
||||||
*out = *in
|
|
||||||
if in.Drivers != nil {
|
|
||||||
in, out := &in.Drivers, &out.Drivers
|
|
||||||
*out = make([]CSIDriverInfoSpec, len(*in))
|
|
||||||
for i := range *in {
|
|
||||||
(*in)[i].DeepCopyInto(&(*out)[i])
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CSINodeInfoSpec.
|
|
||||||
func (in *CSINodeInfoSpec) DeepCopy() *CSINodeInfoSpec {
|
|
||||||
if in == nil {
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
out := new(CSINodeInfoSpec)
|
|
||||||
in.DeepCopyInto(out)
|
|
||||||
return out
|
|
||||||
}
|
|
||||||
|
|
||||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
|
|
||||||
func (in *CSINodeInfoStatus) DeepCopyInto(out *CSINodeInfoStatus) {
|
|
||||||
*out = *in
|
|
||||||
if in.Drivers != nil {
|
|
||||||
in, out := &in.Drivers, &out.Drivers
|
|
||||||
*out = make([]CSIDriverInfoStatus, len(*in))
|
|
||||||
copy(*out, *in)
|
|
||||||
}
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CSINodeInfoStatus.
|
|
||||||
func (in *CSINodeInfoStatus) DeepCopy() *CSINodeInfoStatus {
|
|
||||||
if in == nil {
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
out := new(CSINodeInfoStatus)
|
|
||||||
in.DeepCopyInto(out)
|
|
||||||
return out
|
|
||||||
}
|
|
|
@ -1,37 +0,0 @@
|
||||||
load("@io_bazel_rules_go//go:def.bzl", "go_library")
|
|
||||||
|
|
||||||
go_library(
|
|
||||||
name = "go_default_library",
|
|
||||||
srcs = [
|
|
||||||
"clientset.go",
|
|
||||||
"doc.go",
|
|
||||||
],
|
|
||||||
importmap = "k8s.io/kubernetes/vendor/k8s.io/csi-api/pkg/client/clientset/versioned",
|
|
||||||
importpath = "k8s.io/csi-api/pkg/client/clientset/versioned",
|
|
||||||
visibility = ["//visibility:public"],
|
|
||||||
deps = [
|
|
||||||
"//staging/src/k8s.io/client-go/discovery:go_default_library",
|
|
||||||
"//staging/src/k8s.io/client-go/rest:go_default_library",
|
|
||||||
"//staging/src/k8s.io/client-go/util/flowcontrol:go_default_library",
|
|
||||||
"//staging/src/k8s.io/csi-api/pkg/client/clientset/versioned/typed/csi/v1alpha1:go_default_library",
|
|
||||||
],
|
|
||||||
)
|
|
||||||
|
|
||||||
filegroup(
|
|
||||||
name = "package-srcs",
|
|
||||||
srcs = glob(["**"]),
|
|
||||||
tags = ["automanaged"],
|
|
||||||
visibility = ["//visibility:private"],
|
|
||||||
)
|
|
||||||
|
|
||||||
filegroup(
|
|
||||||
name = "all-srcs",
|
|
||||||
srcs = [
|
|
||||||
":package-srcs",
|
|
||||||
"//staging/src/k8s.io/csi-api/pkg/client/clientset/versioned/fake:all-srcs",
|
|
||||||
"//staging/src/k8s.io/csi-api/pkg/client/clientset/versioned/scheme:all-srcs",
|
|
||||||
"//staging/src/k8s.io/csi-api/pkg/client/clientset/versioned/typed/csi/v1alpha1:all-srcs",
|
|
||||||
],
|
|
||||||
tags = ["automanaged"],
|
|
||||||
visibility = ["//visibility:public"],
|
|
||||||
)
|
|
|
@ -1,90 +0,0 @@
|
||||||
/*
|
|
||||||
Copyright 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.
|
|
||||||
*/
|
|
||||||
|
|
||||||
// Code generated by client-gen. DO NOT EDIT.
|
|
||||||
|
|
||||||
package versioned
|
|
||||||
|
|
||||||
import (
|
|
||||||
discovery "k8s.io/client-go/discovery"
|
|
||||||
rest "k8s.io/client-go/rest"
|
|
||||||
flowcontrol "k8s.io/client-go/util/flowcontrol"
|
|
||||||
csiv1alpha1 "k8s.io/csi-api/pkg/client/clientset/versioned/typed/csi/v1alpha1"
|
|
||||||
)
|
|
||||||
|
|
||||||
type Interface interface {
|
|
||||||
Discovery() discovery.DiscoveryInterface
|
|
||||||
CsiV1alpha1() csiv1alpha1.CsiV1alpha1Interface
|
|
||||||
}
|
|
||||||
|
|
||||||
// Clientset contains the clients for groups. Each group has exactly one
|
|
||||||
// version included in a Clientset.
|
|
||||||
type Clientset struct {
|
|
||||||
*discovery.DiscoveryClient
|
|
||||||
csiV1alpha1 *csiv1alpha1.CsiV1alpha1Client
|
|
||||||
}
|
|
||||||
|
|
||||||
// CsiV1alpha1 retrieves the CsiV1alpha1Client
|
|
||||||
func (c *Clientset) CsiV1alpha1() csiv1alpha1.CsiV1alpha1Interface {
|
|
||||||
return c.csiV1alpha1
|
|
||||||
}
|
|
||||||
|
|
||||||
// Discovery retrieves the DiscoveryClient
|
|
||||||
func (c *Clientset) Discovery() discovery.DiscoveryInterface {
|
|
||||||
if c == nil {
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
return c.DiscoveryClient
|
|
||||||
}
|
|
||||||
|
|
||||||
// NewForConfig creates a new Clientset for the given config.
|
|
||||||
func NewForConfig(c *rest.Config) (*Clientset, error) {
|
|
||||||
configShallowCopy := *c
|
|
||||||
if configShallowCopy.RateLimiter == nil && configShallowCopy.QPS > 0 {
|
|
||||||
configShallowCopy.RateLimiter = flowcontrol.NewTokenBucketRateLimiter(configShallowCopy.QPS, configShallowCopy.Burst)
|
|
||||||
}
|
|
||||||
var cs Clientset
|
|
||||||
var err error
|
|
||||||
cs.csiV1alpha1, err = csiv1alpha1.NewForConfig(&configShallowCopy)
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
|
|
||||||
cs.DiscoveryClient, err = discovery.NewDiscoveryClientForConfig(&configShallowCopy)
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
return &cs, nil
|
|
||||||
}
|
|
||||||
|
|
||||||
// NewForConfigOrDie creates a new Clientset for the given config and
|
|
||||||
// panics if there is an error in the config.
|
|
||||||
func NewForConfigOrDie(c *rest.Config) *Clientset {
|
|
||||||
var cs Clientset
|
|
||||||
cs.csiV1alpha1 = csiv1alpha1.NewForConfigOrDie(c)
|
|
||||||
|
|
||||||
cs.DiscoveryClient = discovery.NewDiscoveryClientForConfigOrDie(c)
|
|
||||||
return &cs
|
|
||||||
}
|
|
||||||
|
|
||||||
// New creates a new Clientset for the given RESTClient.
|
|
||||||
func New(c rest.Interface) *Clientset {
|
|
||||||
var cs Clientset
|
|
||||||
cs.csiV1alpha1 = csiv1alpha1.New(c)
|
|
||||||
|
|
||||||
cs.DiscoveryClient = discovery.NewDiscoveryClient(c)
|
|
||||||
return &cs
|
|
||||||
}
|
|
|
@ -1,20 +0,0 @@
|
||||||
/*
|
|
||||||
Copyright 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.
|
|
||||||
*/
|
|
||||||
|
|
||||||
// Code generated by client-gen. DO NOT EDIT.
|
|
||||||
|
|
||||||
// This package has the automatically generated clientset.
|
|
||||||
package versioned
|
|
|
@ -1,42 +0,0 @@
|
||||||
load("@io_bazel_rules_go//go:def.bzl", "go_library")
|
|
||||||
|
|
||||||
go_library(
|
|
||||||
name = "go_default_library",
|
|
||||||
srcs = [
|
|
||||||
"clientset_generated.go",
|
|
||||||
"doc.go",
|
|
||||||
"register.go",
|
|
||||||
],
|
|
||||||
importmap = "k8s.io/kubernetes/vendor/k8s.io/csi-api/pkg/client/clientset/versioned/fake",
|
|
||||||
importpath = "k8s.io/csi-api/pkg/client/clientset/versioned/fake",
|
|
||||||
visibility = ["//visibility:public"],
|
|
||||||
deps = [
|
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
|
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/runtime:go_default_library",
|
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/runtime/schema:go_default_library",
|
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/runtime/serializer:go_default_library",
|
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/util/runtime:go_default_library",
|
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/watch:go_default_library",
|
|
||||||
"//staging/src/k8s.io/client-go/discovery:go_default_library",
|
|
||||||
"//staging/src/k8s.io/client-go/discovery/fake:go_default_library",
|
|
||||||
"//staging/src/k8s.io/client-go/testing:go_default_library",
|
|
||||||
"//staging/src/k8s.io/csi-api/pkg/apis/csi/v1alpha1:go_default_library",
|
|
||||||
"//staging/src/k8s.io/csi-api/pkg/client/clientset/versioned:go_default_library",
|
|
||||||
"//staging/src/k8s.io/csi-api/pkg/client/clientset/versioned/typed/csi/v1alpha1:go_default_library",
|
|
||||||
"//staging/src/k8s.io/csi-api/pkg/client/clientset/versioned/typed/csi/v1alpha1/fake:go_default_library",
|
|
||||||
],
|
|
||||||
)
|
|
||||||
|
|
||||||
filegroup(
|
|
||||||
name = "package-srcs",
|
|
||||||
srcs = glob(["**"]),
|
|
||||||
tags = ["automanaged"],
|
|
||||||
visibility = ["//visibility:private"],
|
|
||||||
)
|
|
||||||
|
|
||||||
filegroup(
|
|
||||||
name = "all-srcs",
|
|
||||||
srcs = [":package-srcs"],
|
|
||||||
tags = ["automanaged"],
|
|
||||||
visibility = ["//visibility:public"],
|
|
||||||
)
|
|
|
@ -1,77 +0,0 @@
|
||||||
/*
|
|
||||||
Copyright 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.
|
|
||||||
*/
|
|
||||||
|
|
||||||
// Code generated by client-gen. DO NOT EDIT.
|
|
||||||
|
|
||||||
package fake
|
|
||||||
|
|
||||||
import (
|
|
||||||
"k8s.io/apimachinery/pkg/runtime"
|
|
||||||
"k8s.io/apimachinery/pkg/watch"
|
|
||||||
"k8s.io/client-go/discovery"
|
|
||||||
fakediscovery "k8s.io/client-go/discovery/fake"
|
|
||||||
"k8s.io/client-go/testing"
|
|
||||||
clientset "k8s.io/csi-api/pkg/client/clientset/versioned"
|
|
||||||
csiv1alpha1 "k8s.io/csi-api/pkg/client/clientset/versioned/typed/csi/v1alpha1"
|
|
||||||
fakecsiv1alpha1 "k8s.io/csi-api/pkg/client/clientset/versioned/typed/csi/v1alpha1/fake"
|
|
||||||
)
|
|
||||||
|
|
||||||
// NewSimpleClientset returns a clientset that will respond with the provided objects.
|
|
||||||
// It's backed by a very simple object tracker that processes creates, updates and deletions as-is,
|
|
||||||
// without applying any validations and/or defaults. It shouldn't be considered a replacement
|
|
||||||
// for a real clientset and is mostly useful in simple unit tests.
|
|
||||||
func NewSimpleClientset(objects ...runtime.Object) *Clientset {
|
|
||||||
o := testing.NewObjectTracker(scheme, codecs.UniversalDecoder())
|
|
||||||
for _, obj := range objects {
|
|
||||||
if err := o.Add(obj); err != nil {
|
|
||||||
panic(err)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
cs := &Clientset{}
|
|
||||||
cs.discovery = &fakediscovery.FakeDiscovery{Fake: &cs.Fake}
|
|
||||||
cs.AddReactor("*", "*", testing.ObjectReaction(o))
|
|
||||||
cs.AddWatchReactor("*", func(action testing.Action) (handled bool, ret watch.Interface, err error) {
|
|
||||||
gvr := action.GetResource()
|
|
||||||
ns := action.GetNamespace()
|
|
||||||
watch, err := o.Watch(gvr, ns)
|
|
||||||
if err != nil {
|
|
||||||
return false, nil, err
|
|
||||||
}
|
|
||||||
return true, watch, nil
|
|
||||||
})
|
|
||||||
|
|
||||||
return cs
|
|
||||||
}
|
|
||||||
|
|
||||||
// Clientset implements clientset.Interface. Meant to be embedded into a
|
|
||||||
// struct to get a default implementation. This makes faking out just the method
|
|
||||||
// you want to test easier.
|
|
||||||
type Clientset struct {
|
|
||||||
testing.Fake
|
|
||||||
discovery *fakediscovery.FakeDiscovery
|
|
||||||
}
|
|
||||||
|
|
||||||
func (c *Clientset) Discovery() discovery.DiscoveryInterface {
|
|
||||||
return c.discovery
|
|
||||||
}
|
|
||||||
|
|
||||||
var _ clientset.Interface = &Clientset{}
|
|
||||||
|
|
||||||
// CsiV1alpha1 retrieves the CsiV1alpha1Client
|
|
||||||
func (c *Clientset) CsiV1alpha1() csiv1alpha1.CsiV1alpha1Interface {
|
|
||||||
return &fakecsiv1alpha1.FakeCsiV1alpha1{Fake: &c.Fake}
|
|
||||||
}
|
|
|
@ -1,20 +0,0 @@
|
||||||
/*
|
|
||||||
Copyright 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.
|
|
||||||
*/
|
|
||||||
|
|
||||||
// Code generated by client-gen. DO NOT EDIT.
|
|
||||||
|
|
||||||
// This package has the automatically generated fake clientset.
|
|
||||||
package fake
|
|
|
@ -1,56 +0,0 @@
|
||||||
/*
|
|
||||||
Copyright 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.
|
|
||||||
*/
|
|
||||||
|
|
||||||
// Code generated by client-gen. DO NOT EDIT.
|
|
||||||
|
|
||||||
package fake
|
|
||||||
|
|
||||||
import (
|
|
||||||
v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
|
||||||
runtime "k8s.io/apimachinery/pkg/runtime"
|
|
||||||
schema "k8s.io/apimachinery/pkg/runtime/schema"
|
|
||||||
serializer "k8s.io/apimachinery/pkg/runtime/serializer"
|
|
||||||
utilruntime "k8s.io/apimachinery/pkg/util/runtime"
|
|
||||||
csiv1alpha1 "k8s.io/csi-api/pkg/apis/csi/v1alpha1"
|
|
||||||
)
|
|
||||||
|
|
||||||
var scheme = runtime.NewScheme()
|
|
||||||
var codecs = serializer.NewCodecFactory(scheme)
|
|
||||||
var parameterCodec = runtime.NewParameterCodec(scheme)
|
|
||||||
var localSchemeBuilder = runtime.SchemeBuilder{
|
|
||||||
csiv1alpha1.AddToScheme,
|
|
||||||
}
|
|
||||||
|
|
||||||
// AddToScheme adds all types of this clientset into the given scheme. This allows composition
|
|
||||||
// of clientsets, like in:
|
|
||||||
//
|
|
||||||
// import (
|
|
||||||
// "k8s.io/client-go/kubernetes"
|
|
||||||
// clientsetscheme "k8s.io/client-go/kubernetes/scheme"
|
|
||||||
// aggregatorclientsetscheme "k8s.io/kube-aggregator/pkg/client/clientset_generated/clientset/scheme"
|
|
||||||
// )
|
|
||||||
//
|
|
||||||
// kclientset, _ := kubernetes.NewForConfig(c)
|
|
||||||
// _ = aggregatorclientsetscheme.AddToScheme(clientsetscheme.Scheme)
|
|
||||||
//
|
|
||||||
// After this, RawExtensions in Kubernetes types will serialize kube-aggregator types
|
|
||||||
// correctly.
|
|
||||||
var AddToScheme = localSchemeBuilder.AddToScheme
|
|
||||||
|
|
||||||
func init() {
|
|
||||||
v1.AddToGroupVersion(scheme, schema.GroupVersion{Version: "v1"})
|
|
||||||
utilruntime.Must(AddToScheme(scheme))
|
|
||||||
}
|
|
|
@ -1,34 +0,0 @@
|
||||||
load("@io_bazel_rules_go//go:def.bzl", "go_library")
|
|
||||||
|
|
||||||
go_library(
|
|
||||||
name = "go_default_library",
|
|
||||||
srcs = [
|
|
||||||
"doc.go",
|
|
||||||
"register.go",
|
|
||||||
],
|
|
||||||
importmap = "k8s.io/kubernetes/vendor/k8s.io/csi-api/pkg/client/clientset/versioned/scheme",
|
|
||||||
importpath = "k8s.io/csi-api/pkg/client/clientset/versioned/scheme",
|
|
||||||
visibility = ["//visibility:public"],
|
|
||||||
deps = [
|
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
|
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/runtime:go_default_library",
|
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/runtime/schema:go_default_library",
|
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/runtime/serializer:go_default_library",
|
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/util/runtime:go_default_library",
|
|
||||||
"//staging/src/k8s.io/csi-api/pkg/apis/csi/v1alpha1:go_default_library",
|
|
||||||
],
|
|
||||||
)
|
|
||||||
|
|
||||||
filegroup(
|
|
||||||
name = "package-srcs",
|
|
||||||
srcs = glob(["**"]),
|
|
||||||
tags = ["automanaged"],
|
|
||||||
visibility = ["//visibility:private"],
|
|
||||||
)
|
|
||||||
|
|
||||||
filegroup(
|
|
||||||
name = "all-srcs",
|
|
||||||
srcs = [":package-srcs"],
|
|
||||||
tags = ["automanaged"],
|
|
||||||
visibility = ["//visibility:public"],
|
|
||||||
)
|
|
|
@ -1,20 +0,0 @@
|
||||||
/*
|
|
||||||
Copyright 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.
|
|
||||||
*/
|
|
||||||
|
|
||||||
// Code generated by client-gen. DO NOT EDIT.
|
|
||||||
|
|
||||||
// This package contains the scheme of the automatically generated clientset.
|
|
||||||
package scheme
|
|
|
@ -1,56 +0,0 @@
|
||||||
/*
|
|
||||||
Copyright 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.
|
|
||||||
*/
|
|
||||||
|
|
||||||
// Code generated by client-gen. DO NOT EDIT.
|
|
||||||
|
|
||||||
package scheme
|
|
||||||
|
|
||||||
import (
|
|
||||||
v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
|
||||||
runtime "k8s.io/apimachinery/pkg/runtime"
|
|
||||||
schema "k8s.io/apimachinery/pkg/runtime/schema"
|
|
||||||
serializer "k8s.io/apimachinery/pkg/runtime/serializer"
|
|
||||||
utilruntime "k8s.io/apimachinery/pkg/util/runtime"
|
|
||||||
csiv1alpha1 "k8s.io/csi-api/pkg/apis/csi/v1alpha1"
|
|
||||||
)
|
|
||||||
|
|
||||||
var Scheme = runtime.NewScheme()
|
|
||||||
var Codecs = serializer.NewCodecFactory(Scheme)
|
|
||||||
var ParameterCodec = runtime.NewParameterCodec(Scheme)
|
|
||||||
var localSchemeBuilder = runtime.SchemeBuilder{
|
|
||||||
csiv1alpha1.AddToScheme,
|
|
||||||
}
|
|
||||||
|
|
||||||
// AddToScheme adds all types of this clientset into the given scheme. This allows composition
|
|
||||||
// of clientsets, like in:
|
|
||||||
//
|
|
||||||
// import (
|
|
||||||
// "k8s.io/client-go/kubernetes"
|
|
||||||
// clientsetscheme "k8s.io/client-go/kubernetes/scheme"
|
|
||||||
// aggregatorclientsetscheme "k8s.io/kube-aggregator/pkg/client/clientset_generated/clientset/scheme"
|
|
||||||
// )
|
|
||||||
//
|
|
||||||
// kclientset, _ := kubernetes.NewForConfig(c)
|
|
||||||
// _ = aggregatorclientsetscheme.AddToScheme(clientsetscheme.Scheme)
|
|
||||||
//
|
|
||||||
// After this, RawExtensions in Kubernetes types will serialize kube-aggregator types
|
|
||||||
// correctly.
|
|
||||||
var AddToScheme = localSchemeBuilder.AddToScheme
|
|
||||||
|
|
||||||
func init() {
|
|
||||||
v1.AddToGroupVersion(Scheme, schema.GroupVersion{Version: "v1"})
|
|
||||||
utilruntime.Must(AddToScheme(Scheme))
|
|
||||||
}
|
|
|
@ -1,41 +0,0 @@
|
||||||
load("@io_bazel_rules_go//go:def.bzl", "go_library")
|
|
||||||
|
|
||||||
go_library(
|
|
||||||
name = "go_default_library",
|
|
||||||
srcs = [
|
|
||||||
"csi_client.go",
|
|
||||||
"csidriver.go",
|
|
||||||
"csinodeinfo.go",
|
|
||||||
"doc.go",
|
|
||||||
"generated_expansion.go",
|
|
||||||
],
|
|
||||||
importmap = "k8s.io/kubernetes/vendor/k8s.io/csi-api/pkg/client/clientset/versioned/typed/csi/v1alpha1",
|
|
||||||
importpath = "k8s.io/csi-api/pkg/client/clientset/versioned/typed/csi/v1alpha1",
|
|
||||||
visibility = ["//visibility:public"],
|
|
||||||
deps = [
|
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
|
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/runtime/serializer:go_default_library",
|
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/types:go_default_library",
|
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/watch:go_default_library",
|
|
||||||
"//staging/src/k8s.io/client-go/rest:go_default_library",
|
|
||||||
"//staging/src/k8s.io/csi-api/pkg/apis/csi/v1alpha1:go_default_library",
|
|
||||||
"//staging/src/k8s.io/csi-api/pkg/client/clientset/versioned/scheme:go_default_library",
|
|
||||||
],
|
|
||||||
)
|
|
||||||
|
|
||||||
filegroup(
|
|
||||||
name = "package-srcs",
|
|
||||||
srcs = glob(["**"]),
|
|
||||||
tags = ["automanaged"],
|
|
||||||
visibility = ["//visibility:private"],
|
|
||||||
)
|
|
||||||
|
|
||||||
filegroup(
|
|
||||||
name = "all-srcs",
|
|
||||||
srcs = [
|
|
||||||
":package-srcs",
|
|
||||||
"//staging/src/k8s.io/csi-api/pkg/client/clientset/versioned/typed/csi/v1alpha1/fake:all-srcs",
|
|
||||||
],
|
|
||||||
tags = ["automanaged"],
|
|
||||||
visibility = ["//visibility:public"],
|
|
||||||
)
|
|
|
@ -1,95 +0,0 @@
|
||||||
/*
|
|
||||||
Copyright 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.
|
|
||||||
*/
|
|
||||||
|
|
||||||
// Code generated by client-gen. DO NOT EDIT.
|
|
||||||
|
|
||||||
package v1alpha1
|
|
||||||
|
|
||||||
import (
|
|
||||||
serializer "k8s.io/apimachinery/pkg/runtime/serializer"
|
|
||||||
rest "k8s.io/client-go/rest"
|
|
||||||
v1alpha1 "k8s.io/csi-api/pkg/apis/csi/v1alpha1"
|
|
||||||
"k8s.io/csi-api/pkg/client/clientset/versioned/scheme"
|
|
||||||
)
|
|
||||||
|
|
||||||
type CsiV1alpha1Interface interface {
|
|
||||||
RESTClient() rest.Interface
|
|
||||||
CSIDriversGetter
|
|
||||||
CSINodeInfosGetter
|
|
||||||
}
|
|
||||||
|
|
||||||
// CsiV1alpha1Client is used to interact with features provided by the csi.storage.k8s.io group.
|
|
||||||
type CsiV1alpha1Client struct {
|
|
||||||
restClient rest.Interface
|
|
||||||
}
|
|
||||||
|
|
||||||
func (c *CsiV1alpha1Client) CSIDrivers() CSIDriverInterface {
|
|
||||||
return newCSIDrivers(c)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (c *CsiV1alpha1Client) CSINodeInfos() CSINodeInfoInterface {
|
|
||||||
return newCSINodeInfos(c)
|
|
||||||
}
|
|
||||||
|
|
||||||
// NewForConfig creates a new CsiV1alpha1Client for the given config.
|
|
||||||
func NewForConfig(c *rest.Config) (*CsiV1alpha1Client, error) {
|
|
||||||
config := *c
|
|
||||||
if err := setConfigDefaults(&config); err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
client, err := rest.RESTClientFor(&config)
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
return &CsiV1alpha1Client{client}, nil
|
|
||||||
}
|
|
||||||
|
|
||||||
// NewForConfigOrDie creates a new CsiV1alpha1Client for the given config and
|
|
||||||
// panics if there is an error in the config.
|
|
||||||
func NewForConfigOrDie(c *rest.Config) *CsiV1alpha1Client {
|
|
||||||
client, err := NewForConfig(c)
|
|
||||||
if err != nil {
|
|
||||||
panic(err)
|
|
||||||
}
|
|
||||||
return client
|
|
||||||
}
|
|
||||||
|
|
||||||
// New creates a new CsiV1alpha1Client for the given RESTClient.
|
|
||||||
func New(c rest.Interface) *CsiV1alpha1Client {
|
|
||||||
return &CsiV1alpha1Client{c}
|
|
||||||
}
|
|
||||||
|
|
||||||
func setConfigDefaults(config *rest.Config) error {
|
|
||||||
gv := v1alpha1.SchemeGroupVersion
|
|
||||||
config.GroupVersion = &gv
|
|
||||||
config.APIPath = "/apis"
|
|
||||||
config.NegotiatedSerializer = serializer.DirectCodecFactory{CodecFactory: scheme.Codecs}
|
|
||||||
|
|
||||||
if config.UserAgent == "" {
|
|
||||||
config.UserAgent = rest.DefaultKubernetesUserAgent()
|
|
||||||
}
|
|
||||||
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
// RESTClient returns a RESTClient that is used to communicate
|
|
||||||
// with API server by this client implementation.
|
|
||||||
func (c *CsiV1alpha1Client) RESTClient() rest.Interface {
|
|
||||||
if c == nil {
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
return c.restClient
|
|
||||||
}
|
|
|
@ -1,164 +0,0 @@
|
||||||
/*
|
|
||||||
Copyright 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.
|
|
||||||
*/
|
|
||||||
|
|
||||||
// Code generated by client-gen. DO NOT EDIT.
|
|
||||||
|
|
||||||
package v1alpha1
|
|
||||||
|
|
||||||
import (
|
|
||||||
"time"
|
|
||||||
|
|
||||||
v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
|
||||||
types "k8s.io/apimachinery/pkg/types"
|
|
||||||
watch "k8s.io/apimachinery/pkg/watch"
|
|
||||||
rest "k8s.io/client-go/rest"
|
|
||||||
v1alpha1 "k8s.io/csi-api/pkg/apis/csi/v1alpha1"
|
|
||||||
scheme "k8s.io/csi-api/pkg/client/clientset/versioned/scheme"
|
|
||||||
)
|
|
||||||
|
|
||||||
// CSIDriversGetter has a method to return a CSIDriverInterface.
|
|
||||||
// A group's client should implement this interface.
|
|
||||||
type CSIDriversGetter interface {
|
|
||||||
CSIDrivers() CSIDriverInterface
|
|
||||||
}
|
|
||||||
|
|
||||||
// CSIDriverInterface has methods to work with CSIDriver resources.
|
|
||||||
type CSIDriverInterface interface {
|
|
||||||
Create(*v1alpha1.CSIDriver) (*v1alpha1.CSIDriver, error)
|
|
||||||
Update(*v1alpha1.CSIDriver) (*v1alpha1.CSIDriver, error)
|
|
||||||
Delete(name string, options *v1.DeleteOptions) error
|
|
||||||
DeleteCollection(options *v1.DeleteOptions, listOptions v1.ListOptions) error
|
|
||||||
Get(name string, options v1.GetOptions) (*v1alpha1.CSIDriver, error)
|
|
||||||
List(opts v1.ListOptions) (*v1alpha1.CSIDriverList, error)
|
|
||||||
Watch(opts v1.ListOptions) (watch.Interface, error)
|
|
||||||
Patch(name string, pt types.PatchType, data []byte, subresources ...string) (result *v1alpha1.CSIDriver, err error)
|
|
||||||
CSIDriverExpansion
|
|
||||||
}
|
|
||||||
|
|
||||||
// cSIDrivers implements CSIDriverInterface
|
|
||||||
type cSIDrivers struct {
|
|
||||||
client rest.Interface
|
|
||||||
}
|
|
||||||
|
|
||||||
// newCSIDrivers returns a CSIDrivers
|
|
||||||
func newCSIDrivers(c *CsiV1alpha1Client) *cSIDrivers {
|
|
||||||
return &cSIDrivers{
|
|
||||||
client: c.RESTClient(),
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Get takes name of the cSIDriver, and returns the corresponding cSIDriver object, and an error if there is any.
|
|
||||||
func (c *cSIDrivers) Get(name string, options v1.GetOptions) (result *v1alpha1.CSIDriver, err error) {
|
|
||||||
result = &v1alpha1.CSIDriver{}
|
|
||||||
err = c.client.Get().
|
|
||||||
Resource("csidrivers").
|
|
||||||
Name(name).
|
|
||||||
VersionedParams(&options, scheme.ParameterCodec).
|
|
||||||
Do().
|
|
||||||
Into(result)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// List takes label and field selectors, and returns the list of CSIDrivers that match those selectors.
|
|
||||||
func (c *cSIDrivers) List(opts v1.ListOptions) (result *v1alpha1.CSIDriverList, err error) {
|
|
||||||
var timeout time.Duration
|
|
||||||
if opts.TimeoutSeconds != nil {
|
|
||||||
timeout = time.Duration(*opts.TimeoutSeconds) * time.Second
|
|
||||||
}
|
|
||||||
result = &v1alpha1.CSIDriverList{}
|
|
||||||
err = c.client.Get().
|
|
||||||
Resource("csidrivers").
|
|
||||||
VersionedParams(&opts, scheme.ParameterCodec).
|
|
||||||
Timeout(timeout).
|
|
||||||
Do().
|
|
||||||
Into(result)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// Watch returns a watch.Interface that watches the requested cSIDrivers.
|
|
||||||
func (c *cSIDrivers) Watch(opts v1.ListOptions) (watch.Interface, error) {
|
|
||||||
var timeout time.Duration
|
|
||||||
if opts.TimeoutSeconds != nil {
|
|
||||||
timeout = time.Duration(*opts.TimeoutSeconds) * time.Second
|
|
||||||
}
|
|
||||||
opts.Watch = true
|
|
||||||
return c.client.Get().
|
|
||||||
Resource("csidrivers").
|
|
||||||
VersionedParams(&opts, scheme.ParameterCodec).
|
|
||||||
Timeout(timeout).
|
|
||||||
Watch()
|
|
||||||
}
|
|
||||||
|
|
||||||
// Create takes the representation of a cSIDriver and creates it. Returns the server's representation of the cSIDriver, and an error, if there is any.
|
|
||||||
func (c *cSIDrivers) Create(cSIDriver *v1alpha1.CSIDriver) (result *v1alpha1.CSIDriver, err error) {
|
|
||||||
result = &v1alpha1.CSIDriver{}
|
|
||||||
err = c.client.Post().
|
|
||||||
Resource("csidrivers").
|
|
||||||
Body(cSIDriver).
|
|
||||||
Do().
|
|
||||||
Into(result)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// Update takes the representation of a cSIDriver and updates it. Returns the server's representation of the cSIDriver, and an error, if there is any.
|
|
||||||
func (c *cSIDrivers) Update(cSIDriver *v1alpha1.CSIDriver) (result *v1alpha1.CSIDriver, err error) {
|
|
||||||
result = &v1alpha1.CSIDriver{}
|
|
||||||
err = c.client.Put().
|
|
||||||
Resource("csidrivers").
|
|
||||||
Name(cSIDriver.Name).
|
|
||||||
Body(cSIDriver).
|
|
||||||
Do().
|
|
||||||
Into(result)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// Delete takes name of the cSIDriver and deletes it. Returns an error if one occurs.
|
|
||||||
func (c *cSIDrivers) Delete(name string, options *v1.DeleteOptions) error {
|
|
||||||
return c.client.Delete().
|
|
||||||
Resource("csidrivers").
|
|
||||||
Name(name).
|
|
||||||
Body(options).
|
|
||||||
Do().
|
|
||||||
Error()
|
|
||||||
}
|
|
||||||
|
|
||||||
// DeleteCollection deletes a collection of objects.
|
|
||||||
func (c *cSIDrivers) DeleteCollection(options *v1.DeleteOptions, listOptions v1.ListOptions) error {
|
|
||||||
var timeout time.Duration
|
|
||||||
if listOptions.TimeoutSeconds != nil {
|
|
||||||
timeout = time.Duration(*listOptions.TimeoutSeconds) * time.Second
|
|
||||||
}
|
|
||||||
return c.client.Delete().
|
|
||||||
Resource("csidrivers").
|
|
||||||
VersionedParams(&listOptions, scheme.ParameterCodec).
|
|
||||||
Timeout(timeout).
|
|
||||||
Body(options).
|
|
||||||
Do().
|
|
||||||
Error()
|
|
||||||
}
|
|
||||||
|
|
||||||
// Patch applies the patch and returns the patched cSIDriver.
|
|
||||||
func (c *cSIDrivers) Patch(name string, pt types.PatchType, data []byte, subresources ...string) (result *v1alpha1.CSIDriver, err error) {
|
|
||||||
result = &v1alpha1.CSIDriver{}
|
|
||||||
err = c.client.Patch(pt).
|
|
||||||
Resource("csidrivers").
|
|
||||||
SubResource(subresources...).
|
|
||||||
Name(name).
|
|
||||||
Body(data).
|
|
||||||
Do().
|
|
||||||
Into(result)
|
|
||||||
return
|
|
||||||
}
|
|
|
@ -1,180 +0,0 @@
|
||||||
/*
|
|
||||||
Copyright 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.
|
|
||||||
*/
|
|
||||||
|
|
||||||
// Code generated by client-gen. DO NOT EDIT.
|
|
||||||
|
|
||||||
package v1alpha1
|
|
||||||
|
|
||||||
import (
|
|
||||||
"time"
|
|
||||||
|
|
||||||
v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
|
||||||
types "k8s.io/apimachinery/pkg/types"
|
|
||||||
watch "k8s.io/apimachinery/pkg/watch"
|
|
||||||
rest "k8s.io/client-go/rest"
|
|
||||||
v1alpha1 "k8s.io/csi-api/pkg/apis/csi/v1alpha1"
|
|
||||||
scheme "k8s.io/csi-api/pkg/client/clientset/versioned/scheme"
|
|
||||||
)
|
|
||||||
|
|
||||||
// CSINodeInfosGetter has a method to return a CSINodeInfoInterface.
|
|
||||||
// A group's client should implement this interface.
|
|
||||||
type CSINodeInfosGetter interface {
|
|
||||||
CSINodeInfos() CSINodeInfoInterface
|
|
||||||
}
|
|
||||||
|
|
||||||
// CSINodeInfoInterface has methods to work with CSINodeInfo resources.
|
|
||||||
type CSINodeInfoInterface interface {
|
|
||||||
Create(*v1alpha1.CSINodeInfo) (*v1alpha1.CSINodeInfo, error)
|
|
||||||
Update(*v1alpha1.CSINodeInfo) (*v1alpha1.CSINodeInfo, error)
|
|
||||||
UpdateStatus(*v1alpha1.CSINodeInfo) (*v1alpha1.CSINodeInfo, error)
|
|
||||||
Delete(name string, options *v1.DeleteOptions) error
|
|
||||||
DeleteCollection(options *v1.DeleteOptions, listOptions v1.ListOptions) error
|
|
||||||
Get(name string, options v1.GetOptions) (*v1alpha1.CSINodeInfo, error)
|
|
||||||
List(opts v1.ListOptions) (*v1alpha1.CSINodeInfoList, error)
|
|
||||||
Watch(opts v1.ListOptions) (watch.Interface, error)
|
|
||||||
Patch(name string, pt types.PatchType, data []byte, subresources ...string) (result *v1alpha1.CSINodeInfo, err error)
|
|
||||||
CSINodeInfoExpansion
|
|
||||||
}
|
|
||||||
|
|
||||||
// cSINodeInfos implements CSINodeInfoInterface
|
|
||||||
type cSINodeInfos struct {
|
|
||||||
client rest.Interface
|
|
||||||
}
|
|
||||||
|
|
||||||
// newCSINodeInfos returns a CSINodeInfos
|
|
||||||
func newCSINodeInfos(c *CsiV1alpha1Client) *cSINodeInfos {
|
|
||||||
return &cSINodeInfos{
|
|
||||||
client: c.RESTClient(),
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Get takes name of the cSINodeInfo, and returns the corresponding cSINodeInfo object, and an error if there is any.
|
|
||||||
func (c *cSINodeInfos) Get(name string, options v1.GetOptions) (result *v1alpha1.CSINodeInfo, err error) {
|
|
||||||
result = &v1alpha1.CSINodeInfo{}
|
|
||||||
err = c.client.Get().
|
|
||||||
Resource("csinodeinfos").
|
|
||||||
Name(name).
|
|
||||||
VersionedParams(&options, scheme.ParameterCodec).
|
|
||||||
Do().
|
|
||||||
Into(result)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// List takes label and field selectors, and returns the list of CSINodeInfos that match those selectors.
|
|
||||||
func (c *cSINodeInfos) List(opts v1.ListOptions) (result *v1alpha1.CSINodeInfoList, err error) {
|
|
||||||
var timeout time.Duration
|
|
||||||
if opts.TimeoutSeconds != nil {
|
|
||||||
timeout = time.Duration(*opts.TimeoutSeconds) * time.Second
|
|
||||||
}
|
|
||||||
result = &v1alpha1.CSINodeInfoList{}
|
|
||||||
err = c.client.Get().
|
|
||||||
Resource("csinodeinfos").
|
|
||||||
VersionedParams(&opts, scheme.ParameterCodec).
|
|
||||||
Timeout(timeout).
|
|
||||||
Do().
|
|
||||||
Into(result)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// Watch returns a watch.Interface that watches the requested cSINodeInfos.
|
|
||||||
func (c *cSINodeInfos) Watch(opts v1.ListOptions) (watch.Interface, error) {
|
|
||||||
var timeout time.Duration
|
|
||||||
if opts.TimeoutSeconds != nil {
|
|
||||||
timeout = time.Duration(*opts.TimeoutSeconds) * time.Second
|
|
||||||
}
|
|
||||||
opts.Watch = true
|
|
||||||
return c.client.Get().
|
|
||||||
Resource("csinodeinfos").
|
|
||||||
VersionedParams(&opts, scheme.ParameterCodec).
|
|
||||||
Timeout(timeout).
|
|
||||||
Watch()
|
|
||||||
}
|
|
||||||
|
|
||||||
// Create takes the representation of a cSINodeInfo and creates it. Returns the server's representation of the cSINodeInfo, and an error, if there is any.
|
|
||||||
func (c *cSINodeInfos) Create(cSINodeInfo *v1alpha1.CSINodeInfo) (result *v1alpha1.CSINodeInfo, err error) {
|
|
||||||
result = &v1alpha1.CSINodeInfo{}
|
|
||||||
err = c.client.Post().
|
|
||||||
Resource("csinodeinfos").
|
|
||||||
Body(cSINodeInfo).
|
|
||||||
Do().
|
|
||||||
Into(result)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// Update takes the representation of a cSINodeInfo and updates it. Returns the server's representation of the cSINodeInfo, and an error, if there is any.
|
|
||||||
func (c *cSINodeInfos) Update(cSINodeInfo *v1alpha1.CSINodeInfo) (result *v1alpha1.CSINodeInfo, err error) {
|
|
||||||
result = &v1alpha1.CSINodeInfo{}
|
|
||||||
err = c.client.Put().
|
|
||||||
Resource("csinodeinfos").
|
|
||||||
Name(cSINodeInfo.Name).
|
|
||||||
Body(cSINodeInfo).
|
|
||||||
Do().
|
|
||||||
Into(result)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// UpdateStatus was generated because the type contains a Status member.
|
|
||||||
// Add a +genclient:noStatus comment above the type to avoid generating UpdateStatus().
|
|
||||||
|
|
||||||
func (c *cSINodeInfos) UpdateStatus(cSINodeInfo *v1alpha1.CSINodeInfo) (result *v1alpha1.CSINodeInfo, err error) {
|
|
||||||
result = &v1alpha1.CSINodeInfo{}
|
|
||||||
err = c.client.Put().
|
|
||||||
Resource("csinodeinfos").
|
|
||||||
Name(cSINodeInfo.Name).
|
|
||||||
SubResource("status").
|
|
||||||
Body(cSINodeInfo).
|
|
||||||
Do().
|
|
||||||
Into(result)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// Delete takes name of the cSINodeInfo and deletes it. Returns an error if one occurs.
|
|
||||||
func (c *cSINodeInfos) Delete(name string, options *v1.DeleteOptions) error {
|
|
||||||
return c.client.Delete().
|
|
||||||
Resource("csinodeinfos").
|
|
||||||
Name(name).
|
|
||||||
Body(options).
|
|
||||||
Do().
|
|
||||||
Error()
|
|
||||||
}
|
|
||||||
|
|
||||||
// DeleteCollection deletes a collection of objects.
|
|
||||||
func (c *cSINodeInfos) DeleteCollection(options *v1.DeleteOptions, listOptions v1.ListOptions) error {
|
|
||||||
var timeout time.Duration
|
|
||||||
if listOptions.TimeoutSeconds != nil {
|
|
||||||
timeout = time.Duration(*listOptions.TimeoutSeconds) * time.Second
|
|
||||||
}
|
|
||||||
return c.client.Delete().
|
|
||||||
Resource("csinodeinfos").
|
|
||||||
VersionedParams(&listOptions, scheme.ParameterCodec).
|
|
||||||
Timeout(timeout).
|
|
||||||
Body(options).
|
|
||||||
Do().
|
|
||||||
Error()
|
|
||||||
}
|
|
||||||
|
|
||||||
// Patch applies the patch and returns the patched cSINodeInfo.
|
|
||||||
func (c *cSINodeInfos) Patch(name string, pt types.PatchType, data []byte, subresources ...string) (result *v1alpha1.CSINodeInfo, err error) {
|
|
||||||
result = &v1alpha1.CSINodeInfo{}
|
|
||||||
err = c.client.Patch(pt).
|
|
||||||
Resource("csinodeinfos").
|
|
||||||
SubResource(subresources...).
|
|
||||||
Name(name).
|
|
||||||
Body(data).
|
|
||||||
Do().
|
|
||||||
Into(result)
|
|
||||||
return
|
|
||||||
}
|
|
|
@ -1,20 +0,0 @@
|
||||||
/*
|
|
||||||
Copyright 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.
|
|
||||||
*/
|
|
||||||
|
|
||||||
// Code generated by client-gen. DO NOT EDIT.
|
|
||||||
|
|
||||||
// This package has the automatically generated typed clients.
|
|
||||||
package v1alpha1
|
|
|
@ -1,39 +0,0 @@
|
||||||
load("@io_bazel_rules_go//go:def.bzl", "go_library")
|
|
||||||
|
|
||||||
go_library(
|
|
||||||
name = "go_default_library",
|
|
||||||
srcs = [
|
|
||||||
"doc.go",
|
|
||||||
"fake_csi_client.go",
|
|
||||||
"fake_csidriver.go",
|
|
||||||
"fake_csinodeinfo.go",
|
|
||||||
],
|
|
||||||
importmap = "k8s.io/kubernetes/vendor/k8s.io/csi-api/pkg/client/clientset/versioned/typed/csi/v1alpha1/fake",
|
|
||||||
importpath = "k8s.io/csi-api/pkg/client/clientset/versioned/typed/csi/v1alpha1/fake",
|
|
||||||
visibility = ["//visibility:public"],
|
|
||||||
deps = [
|
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
|
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/labels:go_default_library",
|
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/runtime/schema:go_default_library",
|
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/types:go_default_library",
|
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/watch:go_default_library",
|
|
||||||
"//staging/src/k8s.io/client-go/rest:go_default_library",
|
|
||||||
"//staging/src/k8s.io/client-go/testing:go_default_library",
|
|
||||||
"//staging/src/k8s.io/csi-api/pkg/apis/csi/v1alpha1:go_default_library",
|
|
||||||
"//staging/src/k8s.io/csi-api/pkg/client/clientset/versioned/typed/csi/v1alpha1:go_default_library",
|
|
||||||
],
|
|
||||||
)
|
|
||||||
|
|
||||||
filegroup(
|
|
||||||
name = "package-srcs",
|
|
||||||
srcs = glob(["**"]),
|
|
||||||
tags = ["automanaged"],
|
|
||||||
visibility = ["//visibility:private"],
|
|
||||||
)
|
|
||||||
|
|
||||||
filegroup(
|
|
||||||
name = "all-srcs",
|
|
||||||
srcs = [":package-srcs"],
|
|
||||||
tags = ["automanaged"],
|
|
||||||
visibility = ["//visibility:public"],
|
|
||||||
)
|
|
|
@ -1,20 +0,0 @@
|
||||||
/*
|
|
||||||
Copyright 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.
|
|
||||||
*/
|
|
||||||
|
|
||||||
// Code generated by client-gen. DO NOT EDIT.
|
|
||||||
|
|
||||||
// Package fake has the automatically generated clients.
|
|
||||||
package fake
|
|
|
@ -1,44 +0,0 @@
|
||||||
/*
|
|
||||||
Copyright 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.
|
|
||||||
*/
|
|
||||||
|
|
||||||
// Code generated by client-gen. DO NOT EDIT.
|
|
||||||
|
|
||||||
package fake
|
|
||||||
|
|
||||||
import (
|
|
||||||
rest "k8s.io/client-go/rest"
|
|
||||||
testing "k8s.io/client-go/testing"
|
|
||||||
v1alpha1 "k8s.io/csi-api/pkg/client/clientset/versioned/typed/csi/v1alpha1"
|
|
||||||
)
|
|
||||||
|
|
||||||
type FakeCsiV1alpha1 struct {
|
|
||||||
*testing.Fake
|
|
||||||
}
|
|
||||||
|
|
||||||
func (c *FakeCsiV1alpha1) CSIDrivers() v1alpha1.CSIDriverInterface {
|
|
||||||
return &FakeCSIDrivers{c}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (c *FakeCsiV1alpha1) CSINodeInfos() v1alpha1.CSINodeInfoInterface {
|
|
||||||
return &FakeCSINodeInfos{c}
|
|
||||||
}
|
|
||||||
|
|
||||||
// RESTClient returns a RESTClient that is used to communicate
|
|
||||||
// with API server by this client implementation.
|
|
||||||
func (c *FakeCsiV1alpha1) RESTClient() rest.Interface {
|
|
||||||
var ret *rest.RESTClient
|
|
||||||
return ret
|
|
||||||
}
|
|
|
@ -1,120 +0,0 @@
|
||||||
/*
|
|
||||||
Copyright 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.
|
|
||||||
*/
|
|
||||||
|
|
||||||
// Code generated by client-gen. DO NOT EDIT.
|
|
||||||
|
|
||||||
package fake
|
|
||||||
|
|
||||||
import (
|
|
||||||
v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
|
||||||
labels "k8s.io/apimachinery/pkg/labels"
|
|
||||||
schema "k8s.io/apimachinery/pkg/runtime/schema"
|
|
||||||
types "k8s.io/apimachinery/pkg/types"
|
|
||||||
watch "k8s.io/apimachinery/pkg/watch"
|
|
||||||
testing "k8s.io/client-go/testing"
|
|
||||||
v1alpha1 "k8s.io/csi-api/pkg/apis/csi/v1alpha1"
|
|
||||||
)
|
|
||||||
|
|
||||||
// FakeCSIDrivers implements CSIDriverInterface
|
|
||||||
type FakeCSIDrivers struct {
|
|
||||||
Fake *FakeCsiV1alpha1
|
|
||||||
}
|
|
||||||
|
|
||||||
var csidriversResource = schema.GroupVersionResource{Group: "csi.storage.k8s.io", Version: "v1alpha1", Resource: "csidrivers"}
|
|
||||||
|
|
||||||
var csidriversKind = schema.GroupVersionKind{Group: "csi.storage.k8s.io", Version: "v1alpha1", Kind: "CSIDriver"}
|
|
||||||
|
|
||||||
// Get takes name of the cSIDriver, and returns the corresponding cSIDriver object, and an error if there is any.
|
|
||||||
func (c *FakeCSIDrivers) Get(name string, options v1.GetOptions) (result *v1alpha1.CSIDriver, err error) {
|
|
||||||
obj, err := c.Fake.
|
|
||||||
Invokes(testing.NewRootGetAction(csidriversResource, name), &v1alpha1.CSIDriver{})
|
|
||||||
if obj == nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
return obj.(*v1alpha1.CSIDriver), err
|
|
||||||
}
|
|
||||||
|
|
||||||
// List takes label and field selectors, and returns the list of CSIDrivers that match those selectors.
|
|
||||||
func (c *FakeCSIDrivers) List(opts v1.ListOptions) (result *v1alpha1.CSIDriverList, err error) {
|
|
||||||
obj, err := c.Fake.
|
|
||||||
Invokes(testing.NewRootListAction(csidriversResource, csidriversKind, opts), &v1alpha1.CSIDriverList{})
|
|
||||||
if obj == nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
|
|
||||||
label, _, _ := testing.ExtractFromListOptions(opts)
|
|
||||||
if label == nil {
|
|
||||||
label = labels.Everything()
|
|
||||||
}
|
|
||||||
list := &v1alpha1.CSIDriverList{ListMeta: obj.(*v1alpha1.CSIDriverList).ListMeta}
|
|
||||||
for _, item := range obj.(*v1alpha1.CSIDriverList).Items {
|
|
||||||
if label.Matches(labels.Set(item.Labels)) {
|
|
||||||
list.Items = append(list.Items, item)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return list, err
|
|
||||||
}
|
|
||||||
|
|
||||||
// Watch returns a watch.Interface that watches the requested cSIDrivers.
|
|
||||||
func (c *FakeCSIDrivers) Watch(opts v1.ListOptions) (watch.Interface, error) {
|
|
||||||
return c.Fake.
|
|
||||||
InvokesWatch(testing.NewRootWatchAction(csidriversResource, opts))
|
|
||||||
}
|
|
||||||
|
|
||||||
// Create takes the representation of a cSIDriver and creates it. Returns the server's representation of the cSIDriver, and an error, if there is any.
|
|
||||||
func (c *FakeCSIDrivers) Create(cSIDriver *v1alpha1.CSIDriver) (result *v1alpha1.CSIDriver, err error) {
|
|
||||||
obj, err := c.Fake.
|
|
||||||
Invokes(testing.NewRootCreateAction(csidriversResource, cSIDriver), &v1alpha1.CSIDriver{})
|
|
||||||
if obj == nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
return obj.(*v1alpha1.CSIDriver), err
|
|
||||||
}
|
|
||||||
|
|
||||||
// Update takes the representation of a cSIDriver and updates it. Returns the server's representation of the cSIDriver, and an error, if there is any.
|
|
||||||
func (c *FakeCSIDrivers) Update(cSIDriver *v1alpha1.CSIDriver) (result *v1alpha1.CSIDriver, err error) {
|
|
||||||
obj, err := c.Fake.
|
|
||||||
Invokes(testing.NewRootUpdateAction(csidriversResource, cSIDriver), &v1alpha1.CSIDriver{})
|
|
||||||
if obj == nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
return obj.(*v1alpha1.CSIDriver), err
|
|
||||||
}
|
|
||||||
|
|
||||||
// Delete takes name of the cSIDriver and deletes it. Returns an error if one occurs.
|
|
||||||
func (c *FakeCSIDrivers) Delete(name string, options *v1.DeleteOptions) error {
|
|
||||||
_, err := c.Fake.
|
|
||||||
Invokes(testing.NewRootDeleteAction(csidriversResource, name), &v1alpha1.CSIDriver{})
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
// DeleteCollection deletes a collection of objects.
|
|
||||||
func (c *FakeCSIDrivers) DeleteCollection(options *v1.DeleteOptions, listOptions v1.ListOptions) error {
|
|
||||||
action := testing.NewRootDeleteCollectionAction(csidriversResource, listOptions)
|
|
||||||
|
|
||||||
_, err := c.Fake.Invokes(action, &v1alpha1.CSIDriverList{})
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
// Patch applies the patch and returns the patched cSIDriver.
|
|
||||||
func (c *FakeCSIDrivers) Patch(name string, pt types.PatchType, data []byte, subresources ...string) (result *v1alpha1.CSIDriver, err error) {
|
|
||||||
obj, err := c.Fake.
|
|
||||||
Invokes(testing.NewRootPatchSubresourceAction(csidriversResource, name, pt, data, subresources...), &v1alpha1.CSIDriver{})
|
|
||||||
if obj == nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
return obj.(*v1alpha1.CSIDriver), err
|
|
||||||
}
|
|
|
@ -1,131 +0,0 @@
|
||||||
/*
|
|
||||||
Copyright 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.
|
|
||||||
*/
|
|
||||||
|
|
||||||
// Code generated by client-gen. DO NOT EDIT.
|
|
||||||
|
|
||||||
package fake
|
|
||||||
|
|
||||||
import (
|
|
||||||
v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
|
||||||
labels "k8s.io/apimachinery/pkg/labels"
|
|
||||||
schema "k8s.io/apimachinery/pkg/runtime/schema"
|
|
||||||
types "k8s.io/apimachinery/pkg/types"
|
|
||||||
watch "k8s.io/apimachinery/pkg/watch"
|
|
||||||
testing "k8s.io/client-go/testing"
|
|
||||||
v1alpha1 "k8s.io/csi-api/pkg/apis/csi/v1alpha1"
|
|
||||||
)
|
|
||||||
|
|
||||||
// FakeCSINodeInfos implements CSINodeInfoInterface
|
|
||||||
type FakeCSINodeInfos struct {
|
|
||||||
Fake *FakeCsiV1alpha1
|
|
||||||
}
|
|
||||||
|
|
||||||
var csinodeinfosResource = schema.GroupVersionResource{Group: "csi.storage.k8s.io", Version: "v1alpha1", Resource: "csinodeinfos"}
|
|
||||||
|
|
||||||
var csinodeinfosKind = schema.GroupVersionKind{Group: "csi.storage.k8s.io", Version: "v1alpha1", Kind: "CSINodeInfo"}
|
|
||||||
|
|
||||||
// Get takes name of the cSINodeInfo, and returns the corresponding cSINodeInfo object, and an error if there is any.
|
|
||||||
func (c *FakeCSINodeInfos) Get(name string, options v1.GetOptions) (result *v1alpha1.CSINodeInfo, err error) {
|
|
||||||
obj, err := c.Fake.
|
|
||||||
Invokes(testing.NewRootGetAction(csinodeinfosResource, name), &v1alpha1.CSINodeInfo{})
|
|
||||||
if obj == nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
return obj.(*v1alpha1.CSINodeInfo), err
|
|
||||||
}
|
|
||||||
|
|
||||||
// List takes label and field selectors, and returns the list of CSINodeInfos that match those selectors.
|
|
||||||
func (c *FakeCSINodeInfos) List(opts v1.ListOptions) (result *v1alpha1.CSINodeInfoList, err error) {
|
|
||||||
obj, err := c.Fake.
|
|
||||||
Invokes(testing.NewRootListAction(csinodeinfosResource, csinodeinfosKind, opts), &v1alpha1.CSINodeInfoList{})
|
|
||||||
if obj == nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
|
|
||||||
label, _, _ := testing.ExtractFromListOptions(opts)
|
|
||||||
if label == nil {
|
|
||||||
label = labels.Everything()
|
|
||||||
}
|
|
||||||
list := &v1alpha1.CSINodeInfoList{ListMeta: obj.(*v1alpha1.CSINodeInfoList).ListMeta}
|
|
||||||
for _, item := range obj.(*v1alpha1.CSINodeInfoList).Items {
|
|
||||||
if label.Matches(labels.Set(item.Labels)) {
|
|
||||||
list.Items = append(list.Items, item)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return list, err
|
|
||||||
}
|
|
||||||
|
|
||||||
// Watch returns a watch.Interface that watches the requested cSINodeInfos.
|
|
||||||
func (c *FakeCSINodeInfos) Watch(opts v1.ListOptions) (watch.Interface, error) {
|
|
||||||
return c.Fake.
|
|
||||||
InvokesWatch(testing.NewRootWatchAction(csinodeinfosResource, opts))
|
|
||||||
}
|
|
||||||
|
|
||||||
// Create takes the representation of a cSINodeInfo and creates it. Returns the server's representation of the cSINodeInfo, and an error, if there is any.
|
|
||||||
func (c *FakeCSINodeInfos) Create(cSINodeInfo *v1alpha1.CSINodeInfo) (result *v1alpha1.CSINodeInfo, err error) {
|
|
||||||
obj, err := c.Fake.
|
|
||||||
Invokes(testing.NewRootCreateAction(csinodeinfosResource, cSINodeInfo), &v1alpha1.CSINodeInfo{})
|
|
||||||
if obj == nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
return obj.(*v1alpha1.CSINodeInfo), err
|
|
||||||
}
|
|
||||||
|
|
||||||
// Update takes the representation of a cSINodeInfo and updates it. Returns the server's representation of the cSINodeInfo, and an error, if there is any.
|
|
||||||
func (c *FakeCSINodeInfos) Update(cSINodeInfo *v1alpha1.CSINodeInfo) (result *v1alpha1.CSINodeInfo, err error) {
|
|
||||||
obj, err := c.Fake.
|
|
||||||
Invokes(testing.NewRootUpdateAction(csinodeinfosResource, cSINodeInfo), &v1alpha1.CSINodeInfo{})
|
|
||||||
if obj == nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
return obj.(*v1alpha1.CSINodeInfo), err
|
|
||||||
}
|
|
||||||
|
|
||||||
// UpdateStatus was generated because the type contains a Status member.
|
|
||||||
// Add a +genclient:noStatus comment above the type to avoid generating UpdateStatus().
|
|
||||||
func (c *FakeCSINodeInfos) UpdateStatus(cSINodeInfo *v1alpha1.CSINodeInfo) (*v1alpha1.CSINodeInfo, error) {
|
|
||||||
obj, err := c.Fake.
|
|
||||||
Invokes(testing.NewRootUpdateSubresourceAction(csinodeinfosResource, "status", cSINodeInfo), &v1alpha1.CSINodeInfo{})
|
|
||||||
if obj == nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
return obj.(*v1alpha1.CSINodeInfo), err
|
|
||||||
}
|
|
||||||
|
|
||||||
// Delete takes name of the cSINodeInfo and deletes it. Returns an error if one occurs.
|
|
||||||
func (c *FakeCSINodeInfos) Delete(name string, options *v1.DeleteOptions) error {
|
|
||||||
_, err := c.Fake.
|
|
||||||
Invokes(testing.NewRootDeleteAction(csinodeinfosResource, name), &v1alpha1.CSINodeInfo{})
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
// DeleteCollection deletes a collection of objects.
|
|
||||||
func (c *FakeCSINodeInfos) DeleteCollection(options *v1.DeleteOptions, listOptions v1.ListOptions) error {
|
|
||||||
action := testing.NewRootDeleteCollectionAction(csinodeinfosResource, listOptions)
|
|
||||||
|
|
||||||
_, err := c.Fake.Invokes(action, &v1alpha1.CSINodeInfoList{})
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
// Patch applies the patch and returns the patched cSINodeInfo.
|
|
||||||
func (c *FakeCSINodeInfos) Patch(name string, pt types.PatchType, data []byte, subresources ...string) (result *v1alpha1.CSINodeInfo, err error) {
|
|
||||||
obj, err := c.Fake.
|
|
||||||
Invokes(testing.NewRootPatchSubresourceAction(csinodeinfosResource, name, pt, data, subresources...), &v1alpha1.CSINodeInfo{})
|
|
||||||
if obj == nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
return obj.(*v1alpha1.CSINodeInfo), err
|
|
||||||
}
|
|
|
@ -1,23 +0,0 @@
|
||||||
/*
|
|
||||||
Copyright 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.
|
|
||||||
*/
|
|
||||||
|
|
||||||
// Code generated by client-gen. DO NOT EDIT.
|
|
||||||
|
|
||||||
package v1alpha1
|
|
||||||
|
|
||||||
type CSIDriverExpansion interface{}
|
|
||||||
|
|
||||||
type CSINodeInfoExpansion interface{}
|
|
|
@ -1,40 +0,0 @@
|
||||||
load("@io_bazel_rules_go//go:def.bzl", "go_library")
|
|
||||||
|
|
||||||
go_library(
|
|
||||||
name = "go_default_library",
|
|
||||||
srcs = [
|
|
||||||
"factory.go",
|
|
||||||
"generic.go",
|
|
||||||
],
|
|
||||||
importmap = "k8s.io/kubernetes/vendor/k8s.io/csi-api/pkg/client/informers/externalversions",
|
|
||||||
importpath = "k8s.io/csi-api/pkg/client/informers/externalversions",
|
|
||||||
visibility = ["//visibility:public"],
|
|
||||||
deps = [
|
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
|
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/runtime:go_default_library",
|
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/runtime/schema:go_default_library",
|
|
||||||
"//staging/src/k8s.io/client-go/tools/cache:go_default_library",
|
|
||||||
"//staging/src/k8s.io/csi-api/pkg/apis/csi/v1alpha1:go_default_library",
|
|
||||||
"//staging/src/k8s.io/csi-api/pkg/client/clientset/versioned:go_default_library",
|
|
||||||
"//staging/src/k8s.io/csi-api/pkg/client/informers/externalversions/csi:go_default_library",
|
|
||||||
"//staging/src/k8s.io/csi-api/pkg/client/informers/externalversions/internalinterfaces:go_default_library",
|
|
||||||
],
|
|
||||||
)
|
|
||||||
|
|
||||||
filegroup(
|
|
||||||
name = "package-srcs",
|
|
||||||
srcs = glob(["**"]),
|
|
||||||
tags = ["automanaged"],
|
|
||||||
visibility = ["//visibility:private"],
|
|
||||||
)
|
|
||||||
|
|
||||||
filegroup(
|
|
||||||
name = "all-srcs",
|
|
||||||
srcs = [
|
|
||||||
":package-srcs",
|
|
||||||
"//staging/src/k8s.io/csi-api/pkg/client/informers/externalversions/csi:all-srcs",
|
|
||||||
"//staging/src/k8s.io/csi-api/pkg/client/informers/externalversions/internalinterfaces:all-srcs",
|
|
||||||
],
|
|
||||||
tags = ["automanaged"],
|
|
||||||
visibility = ["//visibility:public"],
|
|
||||||
)
|
|
|
@ -1,30 +0,0 @@
|
||||||
load("@io_bazel_rules_go//go:def.bzl", "go_library")
|
|
||||||
|
|
||||||
go_library(
|
|
||||||
name = "go_default_library",
|
|
||||||
srcs = ["interface.go"],
|
|
||||||
importmap = "k8s.io/kubernetes/vendor/k8s.io/csi-api/pkg/client/informers/externalversions/csi",
|
|
||||||
importpath = "k8s.io/csi-api/pkg/client/informers/externalversions/csi",
|
|
||||||
visibility = ["//visibility:public"],
|
|
||||||
deps = [
|
|
||||||
"//staging/src/k8s.io/csi-api/pkg/client/informers/externalversions/csi/v1alpha1:go_default_library",
|
|
||||||
"//staging/src/k8s.io/csi-api/pkg/client/informers/externalversions/internalinterfaces:go_default_library",
|
|
||||||
],
|
|
||||||
)
|
|
||||||
|
|
||||||
filegroup(
|
|
||||||
name = "package-srcs",
|
|
||||||
srcs = glob(["**"]),
|
|
||||||
tags = ["automanaged"],
|
|
||||||
visibility = ["//visibility:private"],
|
|
||||||
)
|
|
||||||
|
|
||||||
filegroup(
|
|
||||||
name = "all-srcs",
|
|
||||||
srcs = [
|
|
||||||
":package-srcs",
|
|
||||||
"//staging/src/k8s.io/csi-api/pkg/client/informers/externalversions/csi/v1alpha1:all-srcs",
|
|
||||||
],
|
|
||||||
tags = ["automanaged"],
|
|
||||||
visibility = ["//visibility:public"],
|
|
||||||
)
|
|
|
@ -1,46 +0,0 @@
|
||||||
/*
|
|
||||||
Copyright 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.
|
|
||||||
*/
|
|
||||||
|
|
||||||
// Code generated by informer-gen. DO NOT EDIT.
|
|
||||||
|
|
||||||
package csi
|
|
||||||
|
|
||||||
import (
|
|
||||||
v1alpha1 "k8s.io/csi-api/pkg/client/informers/externalversions/csi/v1alpha1"
|
|
||||||
internalinterfaces "k8s.io/csi-api/pkg/client/informers/externalversions/internalinterfaces"
|
|
||||||
)
|
|
||||||
|
|
||||||
// Interface provides access to each of this group's versions.
|
|
||||||
type Interface interface {
|
|
||||||
// V1alpha1 provides access to shared informers for resources in V1alpha1.
|
|
||||||
V1alpha1() v1alpha1.Interface
|
|
||||||
}
|
|
||||||
|
|
||||||
type group struct {
|
|
||||||
factory internalinterfaces.SharedInformerFactory
|
|
||||||
namespace string
|
|
||||||
tweakListOptions internalinterfaces.TweakListOptionsFunc
|
|
||||||
}
|
|
||||||
|
|
||||||
// New returns a new Interface.
|
|
||||||
func New(f internalinterfaces.SharedInformerFactory, namespace string, tweakListOptions internalinterfaces.TweakListOptionsFunc) Interface {
|
|
||||||
return &group{factory: f, namespace: namespace, tweakListOptions: tweakListOptions}
|
|
||||||
}
|
|
||||||
|
|
||||||
// V1alpha1 returns a new v1alpha1.Interface.
|
|
||||||
func (g *group) V1alpha1() v1alpha1.Interface {
|
|
||||||
return v1alpha1.New(g.factory, g.namespace, g.tweakListOptions)
|
|
||||||
}
|
|
|
@ -1,37 +0,0 @@
|
||||||
load("@io_bazel_rules_go//go:def.bzl", "go_library")
|
|
||||||
|
|
||||||
go_library(
|
|
||||||
name = "go_default_library",
|
|
||||||
srcs = [
|
|
||||||
"csidriver.go",
|
|
||||||
"csinodeinfo.go",
|
|
||||||
"interface.go",
|
|
||||||
],
|
|
||||||
importmap = "k8s.io/kubernetes/vendor/k8s.io/csi-api/pkg/client/informers/externalversions/csi/v1alpha1",
|
|
||||||
importpath = "k8s.io/csi-api/pkg/client/informers/externalversions/csi/v1alpha1",
|
|
||||||
visibility = ["//visibility:public"],
|
|
||||||
deps = [
|
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
|
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/runtime:go_default_library",
|
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/watch:go_default_library",
|
|
||||||
"//staging/src/k8s.io/client-go/tools/cache:go_default_library",
|
|
||||||
"//staging/src/k8s.io/csi-api/pkg/apis/csi/v1alpha1:go_default_library",
|
|
||||||
"//staging/src/k8s.io/csi-api/pkg/client/clientset/versioned:go_default_library",
|
|
||||||
"//staging/src/k8s.io/csi-api/pkg/client/informers/externalversions/internalinterfaces:go_default_library",
|
|
||||||
"//staging/src/k8s.io/csi-api/pkg/client/listers/csi/v1alpha1:go_default_library",
|
|
||||||
],
|
|
||||||
)
|
|
||||||
|
|
||||||
filegroup(
|
|
||||||
name = "package-srcs",
|
|
||||||
srcs = glob(["**"]),
|
|
||||||
tags = ["automanaged"],
|
|
||||||
visibility = ["//visibility:private"],
|
|
||||||
)
|
|
||||||
|
|
||||||
filegroup(
|
|
||||||
name = "all-srcs",
|
|
||||||
srcs = [":package-srcs"],
|
|
||||||
tags = ["automanaged"],
|
|
||||||
visibility = ["//visibility:public"],
|
|
||||||
)
|
|
|
@ -1,88 +0,0 @@
|
||||||
/*
|
|
||||||
Copyright 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.
|
|
||||||
*/
|
|
||||||
|
|
||||||
// Code generated by informer-gen. DO NOT EDIT.
|
|
||||||
|
|
||||||
package v1alpha1
|
|
||||||
|
|
||||||
import (
|
|
||||||
time "time"
|
|
||||||
|
|
||||||
v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
|
||||||
runtime "k8s.io/apimachinery/pkg/runtime"
|
|
||||||
watch "k8s.io/apimachinery/pkg/watch"
|
|
||||||
cache "k8s.io/client-go/tools/cache"
|
|
||||||
csiv1alpha1 "k8s.io/csi-api/pkg/apis/csi/v1alpha1"
|
|
||||||
versioned "k8s.io/csi-api/pkg/client/clientset/versioned"
|
|
||||||
internalinterfaces "k8s.io/csi-api/pkg/client/informers/externalversions/internalinterfaces"
|
|
||||||
v1alpha1 "k8s.io/csi-api/pkg/client/listers/csi/v1alpha1"
|
|
||||||
)
|
|
||||||
|
|
||||||
// CSIDriverInformer provides access to a shared informer and lister for
|
|
||||||
// CSIDrivers.
|
|
||||||
type CSIDriverInformer interface {
|
|
||||||
Informer() cache.SharedIndexInformer
|
|
||||||
Lister() v1alpha1.CSIDriverLister
|
|
||||||
}
|
|
||||||
|
|
||||||
type cSIDriverInformer struct {
|
|
||||||
factory internalinterfaces.SharedInformerFactory
|
|
||||||
tweakListOptions internalinterfaces.TweakListOptionsFunc
|
|
||||||
}
|
|
||||||
|
|
||||||
// NewCSIDriverInformer constructs a new informer for CSIDriver type.
|
|
||||||
// Always prefer using an informer factory to get a shared informer instead of getting an independent
|
|
||||||
// one. This reduces memory footprint and number of connections to the server.
|
|
||||||
func NewCSIDriverInformer(client versioned.Interface, resyncPeriod time.Duration, indexers cache.Indexers) cache.SharedIndexInformer {
|
|
||||||
return NewFilteredCSIDriverInformer(client, resyncPeriod, indexers, nil)
|
|
||||||
}
|
|
||||||
|
|
||||||
// NewFilteredCSIDriverInformer constructs a new informer for CSIDriver type.
|
|
||||||
// Always prefer using an informer factory to get a shared informer instead of getting an independent
|
|
||||||
// one. This reduces memory footprint and number of connections to the server.
|
|
||||||
func NewFilteredCSIDriverInformer(client versioned.Interface, resyncPeriod time.Duration, indexers cache.Indexers, tweakListOptions internalinterfaces.TweakListOptionsFunc) cache.SharedIndexInformer {
|
|
||||||
return cache.NewSharedIndexInformer(
|
|
||||||
&cache.ListWatch{
|
|
||||||
ListFunc: func(options v1.ListOptions) (runtime.Object, error) {
|
|
||||||
if tweakListOptions != nil {
|
|
||||||
tweakListOptions(&options)
|
|
||||||
}
|
|
||||||
return client.CsiV1alpha1().CSIDrivers().List(options)
|
|
||||||
},
|
|
||||||
WatchFunc: func(options v1.ListOptions) (watch.Interface, error) {
|
|
||||||
if tweakListOptions != nil {
|
|
||||||
tweakListOptions(&options)
|
|
||||||
}
|
|
||||||
return client.CsiV1alpha1().CSIDrivers().Watch(options)
|
|
||||||
},
|
|
||||||
},
|
|
||||||
&csiv1alpha1.CSIDriver{},
|
|
||||||
resyncPeriod,
|
|
||||||
indexers,
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (f *cSIDriverInformer) defaultInformer(client versioned.Interface, resyncPeriod time.Duration) cache.SharedIndexInformer {
|
|
||||||
return NewFilteredCSIDriverInformer(client, resyncPeriod, cache.Indexers{cache.NamespaceIndex: cache.MetaNamespaceIndexFunc}, f.tweakListOptions)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (f *cSIDriverInformer) Informer() cache.SharedIndexInformer {
|
|
||||||
return f.factory.InformerFor(&csiv1alpha1.CSIDriver{}, f.defaultInformer)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (f *cSIDriverInformer) Lister() v1alpha1.CSIDriverLister {
|
|
||||||
return v1alpha1.NewCSIDriverLister(f.Informer().GetIndexer())
|
|
||||||
}
|
|
|
@ -1,88 +0,0 @@
|
||||||
/*
|
|
||||||
Copyright 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.
|
|
||||||
*/
|
|
||||||
|
|
||||||
// Code generated by informer-gen. DO NOT EDIT.
|
|
||||||
|
|
||||||
package v1alpha1
|
|
||||||
|
|
||||||
import (
|
|
||||||
time "time"
|
|
||||||
|
|
||||||
v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
|
||||||
runtime "k8s.io/apimachinery/pkg/runtime"
|
|
||||||
watch "k8s.io/apimachinery/pkg/watch"
|
|
||||||
cache "k8s.io/client-go/tools/cache"
|
|
||||||
csiv1alpha1 "k8s.io/csi-api/pkg/apis/csi/v1alpha1"
|
|
||||||
versioned "k8s.io/csi-api/pkg/client/clientset/versioned"
|
|
||||||
internalinterfaces "k8s.io/csi-api/pkg/client/informers/externalversions/internalinterfaces"
|
|
||||||
v1alpha1 "k8s.io/csi-api/pkg/client/listers/csi/v1alpha1"
|
|
||||||
)
|
|
||||||
|
|
||||||
// CSINodeInfoInformer provides access to a shared informer and lister for
|
|
||||||
// CSINodeInfos.
|
|
||||||
type CSINodeInfoInformer interface {
|
|
||||||
Informer() cache.SharedIndexInformer
|
|
||||||
Lister() v1alpha1.CSINodeInfoLister
|
|
||||||
}
|
|
||||||
|
|
||||||
type cSINodeInfoInformer struct {
|
|
||||||
factory internalinterfaces.SharedInformerFactory
|
|
||||||
tweakListOptions internalinterfaces.TweakListOptionsFunc
|
|
||||||
}
|
|
||||||
|
|
||||||
// NewCSINodeInfoInformer constructs a new informer for CSINodeInfo type.
|
|
||||||
// Always prefer using an informer factory to get a shared informer instead of getting an independent
|
|
||||||
// one. This reduces memory footprint and number of connections to the server.
|
|
||||||
func NewCSINodeInfoInformer(client versioned.Interface, resyncPeriod time.Duration, indexers cache.Indexers) cache.SharedIndexInformer {
|
|
||||||
return NewFilteredCSINodeInfoInformer(client, resyncPeriod, indexers, nil)
|
|
||||||
}
|
|
||||||
|
|
||||||
// NewFilteredCSINodeInfoInformer constructs a new informer for CSINodeInfo type.
|
|
||||||
// Always prefer using an informer factory to get a shared informer instead of getting an independent
|
|
||||||
// one. This reduces memory footprint and number of connections to the server.
|
|
||||||
func NewFilteredCSINodeInfoInformer(client versioned.Interface, resyncPeriod time.Duration, indexers cache.Indexers, tweakListOptions internalinterfaces.TweakListOptionsFunc) cache.SharedIndexInformer {
|
|
||||||
return cache.NewSharedIndexInformer(
|
|
||||||
&cache.ListWatch{
|
|
||||||
ListFunc: func(options v1.ListOptions) (runtime.Object, error) {
|
|
||||||
if tweakListOptions != nil {
|
|
||||||
tweakListOptions(&options)
|
|
||||||
}
|
|
||||||
return client.CsiV1alpha1().CSINodeInfos().List(options)
|
|
||||||
},
|
|
||||||
WatchFunc: func(options v1.ListOptions) (watch.Interface, error) {
|
|
||||||
if tweakListOptions != nil {
|
|
||||||
tweakListOptions(&options)
|
|
||||||
}
|
|
||||||
return client.CsiV1alpha1().CSINodeInfos().Watch(options)
|
|
||||||
},
|
|
||||||
},
|
|
||||||
&csiv1alpha1.CSINodeInfo{},
|
|
||||||
resyncPeriod,
|
|
||||||
indexers,
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (f *cSINodeInfoInformer) defaultInformer(client versioned.Interface, resyncPeriod time.Duration) cache.SharedIndexInformer {
|
|
||||||
return NewFilteredCSINodeInfoInformer(client, resyncPeriod, cache.Indexers{cache.NamespaceIndex: cache.MetaNamespaceIndexFunc}, f.tweakListOptions)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (f *cSINodeInfoInformer) Informer() cache.SharedIndexInformer {
|
|
||||||
return f.factory.InformerFor(&csiv1alpha1.CSINodeInfo{}, f.defaultInformer)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (f *cSINodeInfoInformer) Lister() v1alpha1.CSINodeInfoLister {
|
|
||||||
return v1alpha1.NewCSINodeInfoLister(f.Informer().GetIndexer())
|
|
||||||
}
|
|
|
@ -1,52 +0,0 @@
|
||||||
/*
|
|
||||||
Copyright 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.
|
|
||||||
*/
|
|
||||||
|
|
||||||
// Code generated by informer-gen. DO NOT EDIT.
|
|
||||||
|
|
||||||
package v1alpha1
|
|
||||||
|
|
||||||
import (
|
|
||||||
internalinterfaces "k8s.io/csi-api/pkg/client/informers/externalversions/internalinterfaces"
|
|
||||||
)
|
|
||||||
|
|
||||||
// Interface provides access to all the informers in this group version.
|
|
||||||
type Interface interface {
|
|
||||||
// CSIDrivers returns a CSIDriverInformer.
|
|
||||||
CSIDrivers() CSIDriverInformer
|
|
||||||
// CSINodeInfos returns a CSINodeInfoInformer.
|
|
||||||
CSINodeInfos() CSINodeInfoInformer
|
|
||||||
}
|
|
||||||
|
|
||||||
type version struct {
|
|
||||||
factory internalinterfaces.SharedInformerFactory
|
|
||||||
namespace string
|
|
||||||
tweakListOptions internalinterfaces.TweakListOptionsFunc
|
|
||||||
}
|
|
||||||
|
|
||||||
// New returns a new Interface.
|
|
||||||
func New(f internalinterfaces.SharedInformerFactory, namespace string, tweakListOptions internalinterfaces.TweakListOptionsFunc) Interface {
|
|
||||||
return &version{factory: f, namespace: namespace, tweakListOptions: tweakListOptions}
|
|
||||||
}
|
|
||||||
|
|
||||||
// CSIDrivers returns a CSIDriverInformer.
|
|
||||||
func (v *version) CSIDrivers() CSIDriverInformer {
|
|
||||||
return &cSIDriverInformer{factory: v.factory, tweakListOptions: v.tweakListOptions}
|
|
||||||
}
|
|
||||||
|
|
||||||
// CSINodeInfos returns a CSINodeInfoInformer.
|
|
||||||
func (v *version) CSINodeInfos() CSINodeInfoInformer {
|
|
||||||
return &cSINodeInfoInformer{factory: v.factory, tweakListOptions: v.tweakListOptions}
|
|
||||||
}
|
|
|
@ -1,180 +0,0 @@
|
||||||
/*
|
|
||||||
Copyright 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.
|
|
||||||
*/
|
|
||||||
|
|
||||||
// Code generated by informer-gen. DO NOT EDIT.
|
|
||||||
|
|
||||||
package externalversions
|
|
||||||
|
|
||||||
import (
|
|
||||||
reflect "reflect"
|
|
||||||
sync "sync"
|
|
||||||
time "time"
|
|
||||||
|
|
||||||
v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
|
||||||
runtime "k8s.io/apimachinery/pkg/runtime"
|
|
||||||
schema "k8s.io/apimachinery/pkg/runtime/schema"
|
|
||||||
cache "k8s.io/client-go/tools/cache"
|
|
||||||
versioned "k8s.io/csi-api/pkg/client/clientset/versioned"
|
|
||||||
csi "k8s.io/csi-api/pkg/client/informers/externalversions/csi"
|
|
||||||
internalinterfaces "k8s.io/csi-api/pkg/client/informers/externalversions/internalinterfaces"
|
|
||||||
)
|
|
||||||
|
|
||||||
// SharedInformerOption defines the functional option type for SharedInformerFactory.
|
|
||||||
type SharedInformerOption func(*sharedInformerFactory) *sharedInformerFactory
|
|
||||||
|
|
||||||
type sharedInformerFactory struct {
|
|
||||||
client versioned.Interface
|
|
||||||
namespace string
|
|
||||||
tweakListOptions internalinterfaces.TweakListOptionsFunc
|
|
||||||
lock sync.Mutex
|
|
||||||
defaultResync time.Duration
|
|
||||||
customResync map[reflect.Type]time.Duration
|
|
||||||
|
|
||||||
informers map[reflect.Type]cache.SharedIndexInformer
|
|
||||||
// startedInformers is used for tracking which informers have been started.
|
|
||||||
// This allows Start() to be called multiple times safely.
|
|
||||||
startedInformers map[reflect.Type]bool
|
|
||||||
}
|
|
||||||
|
|
||||||
// WithCustomResyncConfig sets a custom resync period for the specified informer types.
|
|
||||||
func WithCustomResyncConfig(resyncConfig map[v1.Object]time.Duration) SharedInformerOption {
|
|
||||||
return func(factory *sharedInformerFactory) *sharedInformerFactory {
|
|
||||||
for k, v := range resyncConfig {
|
|
||||||
factory.customResync[reflect.TypeOf(k)] = v
|
|
||||||
}
|
|
||||||
return factory
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// WithTweakListOptions sets a custom filter on all listers of the configured SharedInformerFactory.
|
|
||||||
func WithTweakListOptions(tweakListOptions internalinterfaces.TweakListOptionsFunc) SharedInformerOption {
|
|
||||||
return func(factory *sharedInformerFactory) *sharedInformerFactory {
|
|
||||||
factory.tweakListOptions = tweakListOptions
|
|
||||||
return factory
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// WithNamespace limits the SharedInformerFactory to the specified namespace.
|
|
||||||
func WithNamespace(namespace string) SharedInformerOption {
|
|
||||||
return func(factory *sharedInformerFactory) *sharedInformerFactory {
|
|
||||||
factory.namespace = namespace
|
|
||||||
return factory
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// NewSharedInformerFactory constructs a new instance of sharedInformerFactory for all namespaces.
|
|
||||||
func NewSharedInformerFactory(client versioned.Interface, defaultResync time.Duration) SharedInformerFactory {
|
|
||||||
return NewSharedInformerFactoryWithOptions(client, defaultResync)
|
|
||||||
}
|
|
||||||
|
|
||||||
// NewFilteredSharedInformerFactory constructs a new instance of sharedInformerFactory.
|
|
||||||
// Listers obtained via this SharedInformerFactory will be subject to the same filters
|
|
||||||
// as specified here.
|
|
||||||
// Deprecated: Please use NewSharedInformerFactoryWithOptions instead
|
|
||||||
func NewFilteredSharedInformerFactory(client versioned.Interface, defaultResync time.Duration, namespace string, tweakListOptions internalinterfaces.TweakListOptionsFunc) SharedInformerFactory {
|
|
||||||
return NewSharedInformerFactoryWithOptions(client, defaultResync, WithNamespace(namespace), WithTweakListOptions(tweakListOptions))
|
|
||||||
}
|
|
||||||
|
|
||||||
// NewSharedInformerFactoryWithOptions constructs a new instance of a SharedInformerFactory with additional options.
|
|
||||||
func NewSharedInformerFactoryWithOptions(client versioned.Interface, defaultResync time.Duration, options ...SharedInformerOption) SharedInformerFactory {
|
|
||||||
factory := &sharedInformerFactory{
|
|
||||||
client: client,
|
|
||||||
namespace: v1.NamespaceAll,
|
|
||||||
defaultResync: defaultResync,
|
|
||||||
informers: make(map[reflect.Type]cache.SharedIndexInformer),
|
|
||||||
startedInformers: make(map[reflect.Type]bool),
|
|
||||||
customResync: make(map[reflect.Type]time.Duration),
|
|
||||||
}
|
|
||||||
|
|
||||||
// Apply all options
|
|
||||||
for _, opt := range options {
|
|
||||||
factory = opt(factory)
|
|
||||||
}
|
|
||||||
|
|
||||||
return factory
|
|
||||||
}
|
|
||||||
|
|
||||||
// Start initializes all requested informers.
|
|
||||||
func (f *sharedInformerFactory) Start(stopCh <-chan struct{}) {
|
|
||||||
f.lock.Lock()
|
|
||||||
defer f.lock.Unlock()
|
|
||||||
|
|
||||||
for informerType, informer := range f.informers {
|
|
||||||
if !f.startedInformers[informerType] {
|
|
||||||
go informer.Run(stopCh)
|
|
||||||
f.startedInformers[informerType] = true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// WaitForCacheSync waits for all started informers' cache were synced.
|
|
||||||
func (f *sharedInformerFactory) WaitForCacheSync(stopCh <-chan struct{}) map[reflect.Type]bool {
|
|
||||||
informers := func() map[reflect.Type]cache.SharedIndexInformer {
|
|
||||||
f.lock.Lock()
|
|
||||||
defer f.lock.Unlock()
|
|
||||||
|
|
||||||
informers := map[reflect.Type]cache.SharedIndexInformer{}
|
|
||||||
for informerType, informer := range f.informers {
|
|
||||||
if f.startedInformers[informerType] {
|
|
||||||
informers[informerType] = informer
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return informers
|
|
||||||
}()
|
|
||||||
|
|
||||||
res := map[reflect.Type]bool{}
|
|
||||||
for informType, informer := range informers {
|
|
||||||
res[informType] = cache.WaitForCacheSync(stopCh, informer.HasSynced)
|
|
||||||
}
|
|
||||||
return res
|
|
||||||
}
|
|
||||||
|
|
||||||
// InternalInformerFor returns the SharedIndexInformer for obj using an internal
|
|
||||||
// client.
|
|
||||||
func (f *sharedInformerFactory) InformerFor(obj runtime.Object, newFunc internalinterfaces.NewInformerFunc) cache.SharedIndexInformer {
|
|
||||||
f.lock.Lock()
|
|
||||||
defer f.lock.Unlock()
|
|
||||||
|
|
||||||
informerType := reflect.TypeOf(obj)
|
|
||||||
informer, exists := f.informers[informerType]
|
|
||||||
if exists {
|
|
||||||
return informer
|
|
||||||
}
|
|
||||||
|
|
||||||
resyncPeriod, exists := f.customResync[informerType]
|
|
||||||
if !exists {
|
|
||||||
resyncPeriod = f.defaultResync
|
|
||||||
}
|
|
||||||
|
|
||||||
informer = newFunc(f.client, resyncPeriod)
|
|
||||||
f.informers[informerType] = informer
|
|
||||||
|
|
||||||
return informer
|
|
||||||
}
|
|
||||||
|
|
||||||
// SharedInformerFactory provides shared informers for resources in all known
|
|
||||||
// API group versions.
|
|
||||||
type SharedInformerFactory interface {
|
|
||||||
internalinterfaces.SharedInformerFactory
|
|
||||||
ForResource(resource schema.GroupVersionResource) (GenericInformer, error)
|
|
||||||
WaitForCacheSync(stopCh <-chan struct{}) map[reflect.Type]bool
|
|
||||||
|
|
||||||
Csi() csi.Interface
|
|
||||||
}
|
|
||||||
|
|
||||||
func (f *sharedInformerFactory) Csi() csi.Interface {
|
|
||||||
return csi.New(f, f.namespace, f.tweakListOptions)
|
|
||||||
}
|
|
|
@ -1,64 +0,0 @@
|
||||||
/*
|
|
||||||
Copyright 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.
|
|
||||||
*/
|
|
||||||
|
|
||||||
// Code generated by informer-gen. DO NOT EDIT.
|
|
||||||
|
|
||||||
package externalversions
|
|
||||||
|
|
||||||
import (
|
|
||||||
"fmt"
|
|
||||||
|
|
||||||
schema "k8s.io/apimachinery/pkg/runtime/schema"
|
|
||||||
cache "k8s.io/client-go/tools/cache"
|
|
||||||
v1alpha1 "k8s.io/csi-api/pkg/apis/csi/v1alpha1"
|
|
||||||
)
|
|
||||||
|
|
||||||
// GenericInformer is type of SharedIndexInformer which will locate and delegate to other
|
|
||||||
// sharedInformers based on type
|
|
||||||
type GenericInformer interface {
|
|
||||||
Informer() cache.SharedIndexInformer
|
|
||||||
Lister() cache.GenericLister
|
|
||||||
}
|
|
||||||
|
|
||||||
type genericInformer struct {
|
|
||||||
informer cache.SharedIndexInformer
|
|
||||||
resource schema.GroupResource
|
|
||||||
}
|
|
||||||
|
|
||||||
// Informer returns the SharedIndexInformer.
|
|
||||||
func (f *genericInformer) Informer() cache.SharedIndexInformer {
|
|
||||||
return f.informer
|
|
||||||
}
|
|
||||||
|
|
||||||
// Lister returns the GenericLister.
|
|
||||||
func (f *genericInformer) Lister() cache.GenericLister {
|
|
||||||
return cache.NewGenericLister(f.Informer().GetIndexer(), f.resource)
|
|
||||||
}
|
|
||||||
|
|
||||||
// ForResource gives generic access to a shared informer of the matching type
|
|
||||||
// TODO extend this to unknown resources with a client pool
|
|
||||||
func (f *sharedInformerFactory) ForResource(resource schema.GroupVersionResource) (GenericInformer, error) {
|
|
||||||
switch resource {
|
|
||||||
// Group=csi.storage.k8s.io, Version=v1alpha1
|
|
||||||
case v1alpha1.SchemeGroupVersion.WithResource("csidrivers"):
|
|
||||||
return &genericInformer{resource: resource.GroupResource(), informer: f.Csi().V1alpha1().CSIDrivers().Informer()}, nil
|
|
||||||
case v1alpha1.SchemeGroupVersion.WithResource("csinodeinfos"):
|
|
||||||
return &genericInformer{resource: resource.GroupResource(), informer: f.Csi().V1alpha1().CSINodeInfos().Informer()}, nil
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
return nil, fmt.Errorf("no informer found for %v", resource)
|
|
||||||
}
|
|
|
@ -1,29 +0,0 @@
|
||||||
load("@io_bazel_rules_go//go:def.bzl", "go_library")
|
|
||||||
|
|
||||||
go_library(
|
|
||||||
name = "go_default_library",
|
|
||||||
srcs = ["factory_interfaces.go"],
|
|
||||||
importmap = "k8s.io/kubernetes/vendor/k8s.io/csi-api/pkg/client/informers/externalversions/internalinterfaces",
|
|
||||||
importpath = "k8s.io/csi-api/pkg/client/informers/externalversions/internalinterfaces",
|
|
||||||
visibility = ["//visibility:public"],
|
|
||||||
deps = [
|
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
|
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/runtime:go_default_library",
|
|
||||||
"//staging/src/k8s.io/client-go/tools/cache:go_default_library",
|
|
||||||
"//staging/src/k8s.io/csi-api/pkg/client/clientset/versioned:go_default_library",
|
|
||||||
],
|
|
||||||
)
|
|
||||||
|
|
||||||
filegroup(
|
|
||||||
name = "package-srcs",
|
|
||||||
srcs = glob(["**"]),
|
|
||||||
tags = ["automanaged"],
|
|
||||||
visibility = ["//visibility:private"],
|
|
||||||
)
|
|
||||||
|
|
||||||
filegroup(
|
|
||||||
name = "all-srcs",
|
|
||||||
srcs = [":package-srcs"],
|
|
||||||
tags = ["automanaged"],
|
|
||||||
visibility = ["//visibility:public"],
|
|
||||||
)
|
|
|
@ -1,40 +0,0 @@
|
||||||
/*
|
|
||||||
Copyright 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.
|
|
||||||
*/
|
|
||||||
|
|
||||||
// Code generated by informer-gen. DO NOT EDIT.
|
|
||||||
|
|
||||||
package internalinterfaces
|
|
||||||
|
|
||||||
import (
|
|
||||||
time "time"
|
|
||||||
|
|
||||||
v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
|
||||||
runtime "k8s.io/apimachinery/pkg/runtime"
|
|
||||||
cache "k8s.io/client-go/tools/cache"
|
|
||||||
versioned "k8s.io/csi-api/pkg/client/clientset/versioned"
|
|
||||||
)
|
|
||||||
|
|
||||||
// NewInformerFunc takes versioned.Interface and time.Duration to return a SharedIndexInformer.
|
|
||||||
type NewInformerFunc func(versioned.Interface, time.Duration) cache.SharedIndexInformer
|
|
||||||
|
|
||||||
// SharedInformerFactory a small interface to allow for adding an informer without an import cycle
|
|
||||||
type SharedInformerFactory interface {
|
|
||||||
Start(stopCh <-chan struct{})
|
|
||||||
InformerFor(obj runtime.Object, newFunc NewInformerFunc) cache.SharedIndexInformer
|
|
||||||
}
|
|
||||||
|
|
||||||
// TweakListOptionsFunc is a function that transforms a v1.ListOptions.
|
|
||||||
type TweakListOptionsFunc func(*v1.ListOptions)
|
|
|
@ -1,33 +0,0 @@
|
||||||
load("@io_bazel_rules_go//go:def.bzl", "go_library")
|
|
||||||
|
|
||||||
go_library(
|
|
||||||
name = "go_default_library",
|
|
||||||
srcs = [
|
|
||||||
"csidriver.go",
|
|
||||||
"csinodeinfo.go",
|
|
||||||
"expansion_generated.go",
|
|
||||||
],
|
|
||||||
importmap = "k8s.io/kubernetes/vendor/k8s.io/csi-api/pkg/client/listers/csi/v1alpha1",
|
|
||||||
importpath = "k8s.io/csi-api/pkg/client/listers/csi/v1alpha1",
|
|
||||||
visibility = ["//visibility:public"],
|
|
||||||
deps = [
|
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/api/errors:go_default_library",
|
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/labels:go_default_library",
|
|
||||||
"//staging/src/k8s.io/client-go/tools/cache:go_default_library",
|
|
||||||
"//staging/src/k8s.io/csi-api/pkg/apis/csi/v1alpha1:go_default_library",
|
|
||||||
],
|
|
||||||
)
|
|
||||||
|
|
||||||
filegroup(
|
|
||||||
name = "package-srcs",
|
|
||||||
srcs = glob(["**"]),
|
|
||||||
tags = ["automanaged"],
|
|
||||||
visibility = ["//visibility:private"],
|
|
||||||
)
|
|
||||||
|
|
||||||
filegroup(
|
|
||||||
name = "all-srcs",
|
|
||||||
srcs = [":package-srcs"],
|
|
||||||
tags = ["automanaged"],
|
|
||||||
visibility = ["//visibility:public"],
|
|
||||||
)
|
|
|
@ -1,65 +0,0 @@
|
||||||
/*
|
|
||||||
Copyright 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.
|
|
||||||
*/
|
|
||||||
|
|
||||||
// Code generated by lister-gen. DO NOT EDIT.
|
|
||||||
|
|
||||||
package v1alpha1
|
|
||||||
|
|
||||||
import (
|
|
||||||
"k8s.io/apimachinery/pkg/api/errors"
|
|
||||||
"k8s.io/apimachinery/pkg/labels"
|
|
||||||
"k8s.io/client-go/tools/cache"
|
|
||||||
v1alpha1 "k8s.io/csi-api/pkg/apis/csi/v1alpha1"
|
|
||||||
)
|
|
||||||
|
|
||||||
// CSIDriverLister helps list CSIDrivers.
|
|
||||||
type CSIDriverLister interface {
|
|
||||||
// List lists all CSIDrivers in the indexer.
|
|
||||||
List(selector labels.Selector) (ret []*v1alpha1.CSIDriver, err error)
|
|
||||||
// Get retrieves the CSIDriver from the index for a given name.
|
|
||||||
Get(name string) (*v1alpha1.CSIDriver, error)
|
|
||||||
CSIDriverListerExpansion
|
|
||||||
}
|
|
||||||
|
|
||||||
// cSIDriverLister implements the CSIDriverLister interface.
|
|
||||||
type cSIDriverLister struct {
|
|
||||||
indexer cache.Indexer
|
|
||||||
}
|
|
||||||
|
|
||||||
// NewCSIDriverLister returns a new CSIDriverLister.
|
|
||||||
func NewCSIDriverLister(indexer cache.Indexer) CSIDriverLister {
|
|
||||||
return &cSIDriverLister{indexer: indexer}
|
|
||||||
}
|
|
||||||
|
|
||||||
// List lists all CSIDrivers in the indexer.
|
|
||||||
func (s *cSIDriverLister) List(selector labels.Selector) (ret []*v1alpha1.CSIDriver, err error) {
|
|
||||||
err = cache.ListAll(s.indexer, selector, func(m interface{}) {
|
|
||||||
ret = append(ret, m.(*v1alpha1.CSIDriver))
|
|
||||||
})
|
|
||||||
return ret, err
|
|
||||||
}
|
|
||||||
|
|
||||||
// Get retrieves the CSIDriver from the index for a given name.
|
|
||||||
func (s *cSIDriverLister) Get(name string) (*v1alpha1.CSIDriver, error) {
|
|
||||||
obj, exists, err := s.indexer.GetByKey(name)
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
if !exists {
|
|
||||||
return nil, errors.NewNotFound(v1alpha1.Resource("csidriver"), name)
|
|
||||||
}
|
|
||||||
return obj.(*v1alpha1.CSIDriver), nil
|
|
||||||
}
|
|
|
@ -1,65 +0,0 @@
|
||||||
/*
|
|
||||||
Copyright 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.
|
|
||||||
*/
|
|
||||||
|
|
||||||
// Code generated by lister-gen. DO NOT EDIT.
|
|
||||||
|
|
||||||
package v1alpha1
|
|
||||||
|
|
||||||
import (
|
|
||||||
"k8s.io/apimachinery/pkg/api/errors"
|
|
||||||
"k8s.io/apimachinery/pkg/labels"
|
|
||||||
"k8s.io/client-go/tools/cache"
|
|
||||||
v1alpha1 "k8s.io/csi-api/pkg/apis/csi/v1alpha1"
|
|
||||||
)
|
|
||||||
|
|
||||||
// CSINodeInfoLister helps list CSINodeInfos.
|
|
||||||
type CSINodeInfoLister interface {
|
|
||||||
// List lists all CSINodeInfos in the indexer.
|
|
||||||
List(selector labels.Selector) (ret []*v1alpha1.CSINodeInfo, err error)
|
|
||||||
// Get retrieves the CSINodeInfo from the index for a given name.
|
|
||||||
Get(name string) (*v1alpha1.CSINodeInfo, error)
|
|
||||||
CSINodeInfoListerExpansion
|
|
||||||
}
|
|
||||||
|
|
||||||
// cSINodeInfoLister implements the CSINodeInfoLister interface.
|
|
||||||
type cSINodeInfoLister struct {
|
|
||||||
indexer cache.Indexer
|
|
||||||
}
|
|
||||||
|
|
||||||
// NewCSINodeInfoLister returns a new CSINodeInfoLister.
|
|
||||||
func NewCSINodeInfoLister(indexer cache.Indexer) CSINodeInfoLister {
|
|
||||||
return &cSINodeInfoLister{indexer: indexer}
|
|
||||||
}
|
|
||||||
|
|
||||||
// List lists all CSINodeInfos in the indexer.
|
|
||||||
func (s *cSINodeInfoLister) List(selector labels.Selector) (ret []*v1alpha1.CSINodeInfo, err error) {
|
|
||||||
err = cache.ListAll(s.indexer, selector, func(m interface{}) {
|
|
||||||
ret = append(ret, m.(*v1alpha1.CSINodeInfo))
|
|
||||||
})
|
|
||||||
return ret, err
|
|
||||||
}
|
|
||||||
|
|
||||||
// Get retrieves the CSINodeInfo from the index for a given name.
|
|
||||||
func (s *cSINodeInfoLister) Get(name string) (*v1alpha1.CSINodeInfo, error) {
|
|
||||||
obj, exists, err := s.indexer.GetByKey(name)
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
if !exists {
|
|
||||||
return nil, errors.NewNotFound(v1alpha1.Resource("csinodeinfo"), name)
|
|
||||||
}
|
|
||||||
return obj.(*v1alpha1.CSINodeInfo), nil
|
|
||||||
}
|
|
|
@ -1,27 +0,0 @@
|
||||||
/*
|
|
||||||
Copyright 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.
|
|
||||||
*/
|
|
||||||
|
|
||||||
// Code generated by lister-gen. DO NOT EDIT.
|
|
||||||
|
|
||||||
package v1alpha1
|
|
||||||
|
|
||||||
// CSIDriverListerExpansion allows custom methods to be added to
|
|
||||||
// CSIDriverLister.
|
|
||||||
type CSIDriverListerExpansion interface{}
|
|
||||||
|
|
||||||
// CSINodeInfoListerExpansion allows custom methods to be added to
|
|
||||||
// CSINodeInfoLister.
|
|
||||||
type CSINodeInfoListerExpansion interface{}
|
|
|
@ -1,40 +0,0 @@
|
||||||
load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test")
|
|
||||||
|
|
||||||
go_library(
|
|
||||||
name = "go_default_library",
|
|
||||||
srcs = ["crd.go"],
|
|
||||||
importmap = "k8s.io/kubernetes/vendor/k8s.io/csi-api/pkg/crd",
|
|
||||||
importpath = "k8s.io/csi-api/pkg/crd",
|
|
||||||
visibility = ["//visibility:public"],
|
|
||||||
)
|
|
||||||
|
|
||||||
go_test(
|
|
||||||
name = "go_default_test",
|
|
||||||
srcs = ["crd_test.go"],
|
|
||||||
data = [
|
|
||||||
":csi-manifests",
|
|
||||||
"//cluster/addons:addon-srcs",
|
|
||||||
],
|
|
||||||
embed = [":go_default_library"],
|
|
||||||
deps = ["//staging/src/k8s.io/apimachinery/pkg/util/diff:go_default_library"],
|
|
||||||
)
|
|
||||||
|
|
||||||
filegroup(
|
|
||||||
name = "package-srcs",
|
|
||||||
srcs = glob(["**"]),
|
|
||||||
tags = ["automanaged"],
|
|
||||||
visibility = ["//visibility:private"],
|
|
||||||
)
|
|
||||||
|
|
||||||
filegroup(
|
|
||||||
name = "csi-manifests",
|
|
||||||
srcs = glob(["manifests/**"]),
|
|
||||||
visibility = ["//visibility:public"],
|
|
||||||
)
|
|
||||||
|
|
||||||
filegroup(
|
|
||||||
name = "all-srcs",
|
|
||||||
srcs = [":package-srcs"],
|
|
||||||
tags = ["automanaged"],
|
|
||||||
visibility = ["//visibility:public"],
|
|
||||||
)
|
|
|
@ -1,12 +0,0 @@
|
||||||
# See the OWNERS docs at https://go.k8s.io/owners
|
|
||||||
|
|
||||||
# Disable inheritance as this is an api owners file
|
|
||||||
options:
|
|
||||||
no_parent_owners: true
|
|
||||||
approvers:
|
|
||||||
- api-approvers
|
|
||||||
reviewers:
|
|
||||||
- api-reviewers
|
|
||||||
- sig-storage-reviewers
|
|
||||||
labels:
|
|
||||||
- kind/api-change
|
|
|
@ -1,22 +0,0 @@
|
||||||
/*
|
|
||||||
Copyright 2018 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 crd is only for running tests to verify the manifest files
|
|
||||||
// in this package and the addons are in sync.
|
|
||||||
// The manifest file is currently manually generated, in the future, we
|
|
||||||
// should invest in tooling that will automatically generate the CRD
|
|
||||||
// manifest from the CR schema.
|
|
||||||
package crd
|
|
|
@ -1,82 +0,0 @@
|
||||||
/*
|
|
||||||
Copyright 2018 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.
|
|
||||||
*/
|
|
||||||
|
|
||||||
// These tests verify the manifest files in this package and the
|
|
||||||
// addons directory are in sync.
|
|
||||||
package crd_test
|
|
||||||
|
|
||||||
import (
|
|
||||||
"io/ioutil"
|
|
||||||
"os"
|
|
||||||
"path/filepath"
|
|
||||||
"testing"
|
|
||||||
|
|
||||||
"k8s.io/apimachinery/pkg/util/diff"
|
|
||||||
)
|
|
||||||
|
|
||||||
func TestBootstrapCRDs(t *testing.T) {
|
|
||||||
verifyCopiesAreInSync(
|
|
||||||
t,
|
|
||||||
"csidriver.yaml", /* filename */
|
|
||||||
"manifests", /* sourceOfTruthDir */
|
|
||||||
[]string{"../../../../../../cluster/addons/storage-crds"}, /* copyDirs */
|
|
||||||
)
|
|
||||||
verifyCopiesAreInSync(
|
|
||||||
t,
|
|
||||||
"csinodeinfo.yaml", /* filename */
|
|
||||||
"manifests", /* sourceOfTruthDir */
|
|
||||||
[]string{"../../../../../../cluster/addons/storage-crds"}, /* copyDirs */
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
// verifyCopiesAreInSync fails if any copies are different from source of truth.
|
|
||||||
func verifyCopiesAreInSync(t *testing.T, filename string, sourceOfTruthDir string, copyDirs []string) {
|
|
||||||
sourceOfTruthFilename := filepath.Join(sourceOfTruthDir, filename)
|
|
||||||
|
|
||||||
if len(copyDirs) <= 0 {
|
|
||||||
t.Fatalf("copyDirs is empty. There are no copies to validate.")
|
|
||||||
}
|
|
||||||
|
|
||||||
expectedYAML, err := ioutil.ReadFile(sourceOfTruthFilename)
|
|
||||||
if err != nil {
|
|
||||||
t.Fatal(err)
|
|
||||||
}
|
|
||||||
|
|
||||||
for _, copyDir := range copyDirs {
|
|
||||||
copyFilename := filepath.Join(copyDir, filename)
|
|
||||||
actualYAML, err := ioutil.ReadFile(copyFilename)
|
|
||||||
if err != nil {
|
|
||||||
t.Fatal(err)
|
|
||||||
}
|
|
||||||
|
|
||||||
if string(actualYAML) != string(expectedYAML) {
|
|
||||||
t.Errorf("Data in %q does not match source of truth in %q.", copyFilename, sourceOfTruthFilename)
|
|
||||||
|
|
||||||
const updateEnvVar = "UPDATE_CSI_CRD_FIXTURE_DATA"
|
|
||||||
if os.Getenv(updateEnvVar) == "true" {
|
|
||||||
if err := ioutil.WriteFile(copyFilename, []byte(expectedYAML), os.FileMode(0755)); err == nil {
|
|
||||||
t.Logf("Updated data in %s", copyFilename)
|
|
||||||
t.Logf("Verify the diff, commit changes, and rerun the tests")
|
|
||||||
} else {
|
|
||||||
t.Logf("Could not update data in %s: %v", copyFilename, err)
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
t.Logf("Diff between source of truth data and copy data in %s:\n-------------\n%s", copyFilename, diff.StringDiff(string(actualYAML), string(expectedYAML)))
|
|
||||||
t.Logf("If the change is expected, re-run with %s=true to update the copy data", updateEnvVar)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,28 +0,0 @@
|
||||||
apiVersion: apiextensions.k8s.io/v1beta1
|
|
||||||
kind: CustomResourceDefinition
|
|
||||||
metadata:
|
|
||||||
name: csidrivers.csi.storage.k8s.io
|
|
||||||
labels:
|
|
||||||
addonmanager.kubernetes.io/mode: Reconcile
|
|
||||||
spec:
|
|
||||||
group: csi.storage.k8s.io
|
|
||||||
names:
|
|
||||||
kind: CSIDriver
|
|
||||||
plural: csidrivers
|
|
||||||
scope: Cluster
|
|
||||||
validation:
|
|
||||||
openAPIV3Schema:
|
|
||||||
properties:
|
|
||||||
spec:
|
|
||||||
description: Specification of the CSI Driver.
|
|
||||||
properties:
|
|
||||||
attachRequired:
|
|
||||||
description: Indicates this CSI volume driver requires an attach operation,
|
|
||||||
and that Kubernetes should call attach and wait for any attach operation
|
|
||||||
to complete before proceeding to mount.
|
|
||||||
type: boolean
|
|
||||||
podInfoOnMountVersion:
|
|
||||||
description: Indicates this CSI volume driver requires additional pod
|
|
||||||
information (like podName, podUID, etc.) during mount operations.
|
|
||||||
type: string
|
|
||||||
version: v1alpha1
|
|
|
@ -1,54 +0,0 @@
|
||||||
apiVersion: apiextensions.k8s.io/v1beta1
|
|
||||||
kind: CustomResourceDefinition
|
|
||||||
metadata:
|
|
||||||
name: csinodeinfos.csi.storage.k8s.io
|
|
||||||
labels:
|
|
||||||
addonmanager.kubernetes.io/mode: Reconcile
|
|
||||||
spec:
|
|
||||||
group: csi.storage.k8s.io
|
|
||||||
names:
|
|
||||||
kind: CSINodeInfo
|
|
||||||
plural: csinodeinfos
|
|
||||||
scope: Cluster
|
|
||||||
validation:
|
|
||||||
openAPIV3Schema:
|
|
||||||
properties:
|
|
||||||
spec:
|
|
||||||
description: Specification of CSINodeInfo
|
|
||||||
properties:
|
|
||||||
drivers:
|
|
||||||
description: List of CSI drivers running on the node and their specs.
|
|
||||||
type: array
|
|
||||||
items:
|
|
||||||
properties:
|
|
||||||
name:
|
|
||||||
description: The CSI driver that this object refers to.
|
|
||||||
type: string
|
|
||||||
nodeID:
|
|
||||||
description: The node from the driver point of view.
|
|
||||||
type: string
|
|
||||||
topologyKeys:
|
|
||||||
description: List of keys supported by the driver.
|
|
||||||
items:
|
|
||||||
type: string
|
|
||||||
type: array
|
|
||||||
status:
|
|
||||||
description: Status of CSINodeInfo
|
|
||||||
properties:
|
|
||||||
drivers:
|
|
||||||
description: List of CSI drivers running on the node and their statuses.
|
|
||||||
type: array
|
|
||||||
items:
|
|
||||||
properties:
|
|
||||||
name:
|
|
||||||
description: The CSI driver that this object refers to.
|
|
||||||
type: string
|
|
||||||
available:
|
|
||||||
description: Whether the CSI driver is installed.
|
|
||||||
type: boolean
|
|
||||||
volumePluginMechanism:
|
|
||||||
description: Indicates to external components the required mechanism
|
|
||||||
to use for any in-tree plugins replaced by this driver.
|
|
||||||
pattern: in-tree|csi
|
|
||||||
type: string
|
|
||||||
version: v1alpha1
|
|
|
@ -18,9 +18,6 @@ go_test(
|
||||||
"rbac_test.go",
|
"rbac_test.go",
|
||||||
"svcaccttoken_test.go",
|
"svcaccttoken_test.go",
|
||||||
],
|
],
|
||||||
data = [
|
|
||||||
"//staging/src/k8s.io/csi-api/pkg/crd:csi-manifests",
|
|
||||||
],
|
|
||||||
tags = ["integration"],
|
tags = ["integration"],
|
||||||
deps = [
|
deps = [
|
||||||
"//cmd/kube-apiserver/app/options:go_default_library",
|
"//cmd/kube-apiserver/app/options:go_default_library",
|
||||||
|
|
|
@ -1 +0,0 @@
|
||||||
../../staging/src/k8s.io/csi-api
|
|
Loading…
Reference in New Issue