Commit Graph

48 Commits

Author SHA1 Message Date
Ted Yu
871739e4df Check getNodeInfoError against nil 2020-02-06 10:57:43 -08:00
danielqsj
19fe9f8d94 replace grpc.WithDialer which is deprecated 2019-12-26 17:46:59 +08:00
Hemant Kumar
ca532c6fb2 Ensure that error is returned on NodePublish 2019-12-11 22:10:09 -05:00
Hemant Kumar
4b8e552a88 Use typed errors for special casing volume progress
Use typed errors rather than operation status for
indicating operation progress
2019-12-04 14:48:30 -05:00
Hemant Kumar
cdbd3ba5c2 Change interface of SetUp function 2019-12-02 12:09:38 -05:00
Hemant Kumar
50dbcb3e00 Make sure PodExistsInVolume does not uses uncertain volumes 2019-12-02 12:01:40 -05:00
Hemant Kumar
34a6007dfe Add code to mark volume as uncertain
Update bazel files
Add tests for volume mounts in uncertain state
2019-12-02 12:01:40 -05:00
David Zhu
802fe12803 Remove plugin watching of deprecated directory {kubelet_root_dir}/plugins and support for CSI V0 in accordance with deprecation announcement in https://v1-13.docs.kubernetes.io/docs/setup/release/notes/ 2019-11-11 11:42:58 -08:00
Ted Yu
44787fe14e Come out of loop when RPC_STAGE_UNSTAGE_VOLUME is found 2019-09-21 14:23:06 -07:00
caiweidong
45c52d1314 Fix potential panic in nodeGetVolumeStatsV1 2019-07-23 13:47:35 +08:00
David Zhu
831cd29f4e Add passthrough for MountOptions for NodeStageVolume for CSI 2019-07-16 16:17:47 -07:00
Odin Ugedal
542c335fca Remove dead code from csi_client
When removing a feature flag in
35bc5dc6b6, a few of the lines were
removed, resulting in some dead code.
2019-07-08 17:53:52 +02:00
draveness
35bc5dc6b6 feat: cleanup feature gates for KubeletPluginsWatcher 2019-06-23 16:59:36 +08:00
Kubernetes Prow Robot
fad34e404e
Merge pull request #76188 from humblec/csi-in-m
csi: Implement NodeServiceCapability_RPC_GET_VOLUME_STATS rpc call
2019-05-17 20:26:09 -07:00
Humble Chirammal
c511c90b59 csi: Implement NodeServiceCapability_RPC_GET_VOLUME_STATS rpc call
and implement Metrics Provider for CSI driver

Signed-off-by: Humble Chirammal <hchiramm@redhat.com>
2019-05-17 17:10:53 +05:30
Ted Yu
ebe499ec80 Remove variable nodeExpandSet 2019-04-30 06:44:29 -07:00
Ted Yu
565c88de14 Return early when node expansion is determined 2019-04-29 14:05:08 -07:00
Yecheng Fu
fa926ed6e0 Delay CSI client initialization 2019-03-09 13:45:03 +08:00
Hemant Kumar
a8f318779b Add CSI volume resizing tests
Add some tests for checking node expansion
Add new tests for expander
2019-03-08 09:23:18 -05:00
Hemant Kumar
63eb25eb4b Introduce feature gate for volume expansion
Update CSI library version
2019-03-08 09:21:44 -05:00
Kubernetes Prow Robot
2d956389dc
Merge pull request #73313 from pivotal-k8s/csi-drivers-list
Refactor csiDriversStore
2019-02-06 09:31:06 -08:00
Tara Gu
ad4bd8bdac Add exponential backoff for plugin registration 2019-01-29 21:13:02 -05:00
Hannes Hörl
84c46629c5 Refactor to use new csi.DriversList & csi.Driver 2019-01-25 12:23:28 +00:00
saad-ali
aa8244beb5 Modify CSI to handle both 0.3 and 1.0
Modify the CSI volume plugin to handle CSI version 0.x as well as 1.x
2018-11-21 18:37:31 -08:00
saad-ali
2b44ec5e9c Reduce csipb dependencies
Remove csipb dependency from everywhere except the CSI client in
preperation for supporting multiple CSI clients.
2018-11-21 18:37:31 -08:00
saad-ali
09d3dce38a Update CSI client to pick up CSI v1.0.0 changes 2018-11-15 16:39:59 -08:00
Davanum Srinivas
954996e231
Move from glog to klog
- Move from the old github.com/golang/glog to k8s.io/klog
- klog as explicit InitFlags() so we add them as necessary
- we update the other repositories that we vendor that made a similar
change from glog to klog
  * github.com/kubernetes/repo-infra
  * k8s.io/gengo/
  * k8s.io/kube-openapi/
  * github.com/google/cadvisor
- Entirely remove all references to glog
- Fix some tests by explicit InitFlags in their init() methods

Change-Id: I92db545ff36fcec83afe98f550c9e630098b3135
2018-11-10 07:50:31 -05:00
k8s-ci-robot
56796f3bf4
Merge pull request #67898 from NetApp/csi-mount-options
Add support for mount options to CSI drivers
2018-10-30 19:48:20 -07:00
k8s-ci-robot
322d0df3d2
Merge pull request #70053 from gman0/fix-csiclient-lock
CSI client: added missing lock when reading from csiDrivers
2018-10-23 02:08:32 -07:00
gman
571ad40fa1 CSI client: added missing lock when reading from csiDrivers 2018-10-20 22:43:17 +02:00
Hannes Hörl
6330cee9ea Add tests for csiDriverClient
As #69219 outlines the unit tests in `csi_client_test.go` where not
testing the actual implementation of the `csiDriverClient` but was
testing the fake.

To fix this, we changed the `csiDriverClient` to use a
`nodeClientCreator` which is responsible for creating a new
`NodeClient`, a real one in prod and a fake one in the tests.

The setup of the gRPC connection has been pushed into that creator. The
node client uses that connection; that's transparent to the driver
client. It's the responsibility of the driver client to close the
connection when it is done with the node client. To achieve this, we
have the node client creator return a closer which handles the
connection teardown.

In the tests we now also check if the driver client actually calls
this closer, thus closing the gRPC connection.

Closes: #69219

Co-authored-by: Rosie Bloxsom <rbloxsom@pivotal.io>
Co-authored-by: Maria Ntalla <mntalla@pivotal.io>
2018-10-15 20:55:37 +01:00
Ben Swartzlander
65d3beb820 Add support for mount options to CSI drivers 2018-10-11 13:39:19 -04:00
Xing Yang
0a14086792 Return error from NodeGetInfo
This PR checks if NodeGetInfo returns error. If so, it returns
the error. Without this change, it always returns no error (nil)
regardless of whether NodeGetInfo returns error.
2018-09-22 12:00:15 -07:00
Cheng Xing
7fa120c18c CSI plugin now calls NodeGetInfo() to get driver's node ID 2018-08-08 13:15:43 -07:00
Vladimir Vivien
5044a3d12c CSI implementation of raw block volume support 2018-06-05 16:53:56 -04:00
Serguei Bezverkhi
1c05ca5575 Adding CSI driver registration 2018-06-04 16:47:24 -04:00
Vladimir Vivien
d6d396215e CSI fix for gRPC conn leak, test updates 2018-05-31 23:05:41 -04:00
hzxuzhonghu
70e45eccf2 Replace "golang.org/x/net/context" with "context" 2018-03-22 20:57:14 +08:00
David Zhu
cbd18965fd Added MountDevice/UnmountDevice pass-through to NodeStageVolume/NodeUnstageVolume for CSI Volume Plugin. Added related unit tests. Vendored CSI Spec to HEAD 2018-02-26 14:50:32 -08:00
Serguei Bezverkhi
c8956fa93c CSI code changes 2018-02-24 16:30:17 -05:00
Serguei Bezverkhi
a6ca466859 k8s csi code change 2018-02-23 16:50:43 -05:00
Serguei Bezverkhi
ea4df51b3b Refactor k8s core csi bits for CSI Spec 0.2.0 2018-02-16 13:29:34 -05:00
Luis Pabón
4abcb12296 csi: Update version comparison model
If our supported version is still at 0.X.X, then check
also the minor number. If our supported version is >= 1.X.X
then check only the major number.

Closes #58813
2018-01-26 12:51:10 -05:00
Luis Pabón
ea31f8f7ec csi: Fix versioning error message
Closes #58092
2018-01-15 10:27:00 -08:00
linyouchong
5bc7e2212a fix accessmode mapping error 2017-12-18 17:51:38 +08:00
Vladimir Vivien
23d59cbe54 CSI - Multiple bug fixes for NodeProbe, vol data file, mount dir create
-  NodeProbe rpc before node attach
-  Teardown fix using  volume info data file stored on node
-  Pre-create the mount prior to calling nodepublish
2017-12-08 15:24:28 -05:00
Vladimir Vivien
fa519069d9 CSI - Extract volume attributes from PV annotations"
csi - code review fixes
2017-12-03 18:10:09 -05:00
Vladimir Vivien
dd08d1b489 CSI - API source code implementation
This commit tracks source code update for the CSI volume plugin implementation.
2017-11-21 20:20:58 -05:00