Commit Graph

150 Commits

Author SHA1 Message Date
Mike Danese
3aa59f7f30 generated: run refactor 2020-02-07 18:16:47 -08: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
309c6f863a Handle the case of remounts correctly 2019-12-02 12:09:38 -05:00
Hemant Kumar
5feea93163 Rename MarkVolumeMountedOpts to MarkVolumeOpts
Also remove VolumeNotMounted state
2019-12-02 12:09:38 -05:00
Hemant Kumar
cdbd3ba5c2 Change interface of SetUp function 2019-12-02 12:09:38 -05:00
Hemant Kumar
db9ac38592 Change signature of MountDevice function and remove MountDeviceWithStatusTracking 2019-12-02 12:09:38 -05:00
Hemant Kumar
321e99367a Add code to handle Setup With Status tracking 2019-12-02 12:09:38 -05:00
Hemant Kumar
dc9e64c31e Implement return status codes 2019-12-02 12:02:27 -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
Hemant Kumar
a795f3de88 Add code for introducing uncertain state of mounts
Add a comment about volumestate
2019-12-02 11:57:40 -05:00
Kubernetes Prow Robot
372ebd24f5
Merge pull request #83098 from ddebroy/disable-intree
CSI Migration phase 2: disable probing of in-tree plugins
2019-11-14 20:51:42 -08:00
Deep Debroy
129f15328b Disable in-tree plugins migrated to CSI
Signed-off-by: Deep Debroy <ddebroy@docker.com>
2019-11-14 17:28:21 -08:00
Masaki Kimura
a275026ad4 Split CustomBlockVolumeMapper and CustomBlockVolumeUnmapper
- Move SetUpDevice to BlockVolumeStager
  - Move MapPodDevice to BlockVolumePublisher
  - Move TearDownDevice to BlockVolumeUnstager
  - Move UnmapPodDevice to BlockVolumeUnpublisher
  - Implement BlockVolumePublisher only in local and csi plugin
  - Implement BlockVolumeUnstager only in fc, iscsi, rbd, and csi plugin
  - Implement BlockVolumeStager and BlockVolumeUnpublisher only in csi plugin
2019-11-14 22:01:19 +00:00
Masaki Kimura
f363a03f0b Refactor BlockVolumeMapper and BlockVolumeUnmapper interface
- Rename MapDevice to MapPodDevice in BlockVolumeMapper
- Add UnmapPodDevice in BlockVolumeUnmapper (This will be used by csi driver later)
- Add CustomBlockVolumeMapper and CustomBlockVolumeUnmapper interface
- Move SetUpDevice and MapPodDevice to CustomBlockVolumeMapper
- Move TearDownDevice and UnmapPodDevice to CustomBlockVolumeUnmapper
- Implement CustomBlockVolumeMapper only in local and csi plugin
- Implement CustomBlockVolumeUnmapper only in fc, iscsi, rbd, and csi plugin
- Change MapPodDevice to return path and SetUpDevice not to return path
2019-11-14 22:01:11 +00:00
Masaki Kimura
aee875a855 Fix error messages in operation_generator.go 2019-11-14 15:58:27 +00:00
Masaki Kimura
8a159d7253 Move MapBlockVolume call to operation_generator and add UnmapBlockVolume 2019-11-14 15:58:26 +00:00
Masaki Kimura
68be3947b8 Make descriptor lock per pod and release it per pod
This change is needed to avoid unmapVolumeFunc for one pod blocked,
when the lock for the same volume is taken for another pod.
2019-11-14 15:58:26 +00:00
Masaki Kimura
2ecdc5e8d1 Change globalMapPath to bind mount from symlink
This change is needed to make descriptor lock per pod, in the next commit.
If losetup is called for symlink, path in the output for losetup is resolved,
as a result, we can't distinguish which path the lock is taken.
2019-11-14 15:58:26 +00:00
Kubernetes Prow Robot
a45917008f
Merge pull request #84301 from yutedz/pvc-expand-fail
Add event for pvc in case node expansion fails
2019-10-28 14:09:29 -07:00
Ted Yu
e8bd5c7785 Add event for pvc in case node expansion fails 2019-10-24 09:11:01 -07:00
caiweidong
909be01bd6 Add an event to pvc when node expand successfully 2019-10-21 11:33:46 +08:00
David Zhu
92cb06a2e7 Refactor CSI Translation Library into a struct that is injected into various components to simplify unit testing in future 2019-09-27 12:59:53 -07:00
draveness
2c0d6053fa feat: remove PersistentLocalVolumes feature gates 2019-09-09 08:10:27 +08:00
Travis Rhoden
935c23f2ad
Move HostUtil to pkg/volume/util/hostutil
This patch moves the HostUtil functionality from the util/mount package
to the volume/util/hostutil package.

All `*NewHostUtil*` calls are changed to return concrete types instead
of interfaces.

All callers are changed to use the `*NewHostUtil*` methods instead of
directly instantiating the concrete types.
2019-08-30 10:14:42 -06:00
Kubernetes Prow Robot
f105fef3d5
Merge pull request #81429 from huffmanca/resize_block_volume
Enables resizing of block volumes.
2019-08-23 17:59:05 -07:00
Christian Huffman
7a4cdf5ab2 Included resizing for CSI-based block volumes.
Perform a no-op when volume is of type raw block

Fix bug with checking volume mounts for readonly
2019-08-22 15:45:57 -04:00
Travis Rhoden
a7830a2c6e
mv HasMountRefs from mount pkg to vol/util
HasMountRefs is only used internal to K8s and should not be moved out
with the mount package. move it to pkg/volume/util instead.
2019-08-21 14:53:34 -06:00
David Zhu
290a7f12ce Add migration shim for VerifyVolumesAreAttached and BulkVolumeVerify 2019-07-23 12:57:47 -07:00
David Zhu
93d6356d2f Fixes mount/unmount paths for migrated inline volumes. Some minor fixes for GCE specific inline migrated volumes 2019-07-11 11:51:43 -07:00
Travis Rhoden
be7da5052f Refactor pkg/util/mount to be more reusable
This patch refactors pkg/util/mount to be more usable outside of
Kubernetes. This is done by refactoring mount.Interface to only contain
methods that are not K8s specific. Methods that are not relevant to
basic mount activities but still have OS-specific implementations are
now found in a mount.HostUtils interface.
2019-06-14 09:35:18 -06:00
Kubernetes Prow Robot
518f16636f
Merge pull request #78593 from RobertKrawitz/ephemeral-storage-quota-cleanup
Ephemeral storage quota cleanup
2019-06-14 05:33:18 -07:00
Kubernetes Prow Robot
333081e79c
Merge pull request #78595 from gnufied/fix-aws-dangling-volumes
Add dangling volume as uncertain
2019-06-06 16:47:59 -07:00
Hemant Kumar
7bcebe98bb Add dangling volume as uncertain 2019-06-06 15:25:10 -04:00
Hemant Kumar
0f62e3fbe8 Make language of error msgs and func names consistent: ExpandVolumeInUse
change feature flag
Fix the e2e test for online and offline expansion
2019-06-03 12:26:56 -04:00
Kubernetes Prow Robot
b7fa33ec15
Merge pull request #77703 from ddebroy/inline-mig-1
API changes to support migration of inline in-tree volumes to CSI
2019-05-31 12:23:19 -07:00
Robert Krawitz
bf1f0fa5d9 Remove pod UID from volumeMount, we can get it elsewhere 2019-05-31 14:25:01 -04:00
Kubernetes Prow Robot
cf76868b34
Merge pull request #66928 from RobertKrawitz/ephemeral-storage-quota-exp
Ephemeral storage monitoring via filesystem quotas
2019-05-30 20:44:26 -07:00
Deep Debroy
de7be9d613 Populate InlineVolumeSpec in CSI attacher and translation library
Signed-off-by: Deep Debroy <ddebroy@docker.com>
2019-05-30 09:35:22 +00:00
Robert Krawitz
448e0c44c6 Apply quotas via syscalls using cgo. 2019-05-29 15:12:28 -04:00
Robert Krawitz
5b97b2860d Change fsGroup to mounterArgs in volume.SetUp() to allow for future extension. 2019-05-29 15:12:28 -04:00
Hemant Kumar
7563b4d01b Address comments about retry in online resizing block 2019-05-29 11:01:45 -04:00
Hemant Kumar
33b95ebddb add some tests for expand controller
Update bazel file
2019-05-20 10:55:23 -04:00
Matthew Wong
c16a555654 Use workqueue model in expand controller
Add a test for patch creation
2019-05-14 16:42:06 -04:00
Kubernetes Prow Robot
9e52832c52
Merge pull request #77317 from gnufied/fix-block-volume-resizing
Fix block volume expansion
2019-05-01 20:42:56 -07:00
Kubernetes Prow Robot
b5c34d0c43
Merge pull request #74734 from codenrhoden/move-mountspath
Move MountsInGlobalPDPath from mount pkg to volume
2019-05-01 17:28:18 -07:00
Hemant Kumar
0eb68c5a22 Fix blockvolume expansion 2019-05-01 18:25:54 -04:00
David Zhu
1271237d23 Add migration metrics checking to all test suites 2019-05-01 11:24:03 -07:00
Travis Rhoden
78d109e201 Always use filepath.Join instead of path.Join
This patch cleans up pkg/util/mount/* and pkg/util/volume/* to always
use filepath.Join instead of path.Join. filepath.Join is preferred
because path.Join can have issues on Windows.
2019-04-29 09:56:05 -06:00
David Zhu
213cc99ead Operation generator migration metric fixes and test metrics retrieval code 2019-04-25 16:27:45 -07:00
Kubernetes Prow Robot
88992ba185
Merge pull request #75986 from mucahitkurt/improvement/reduce-event-spam-for-GenerateAttachVolumeFunc
Reduce event spam for function GenerateAttachVolumeFunc
2019-04-24 18:12:44 -07:00