Commit Graph

2762 Commits

Author SHA1 Message Date
Kubernetes Prow Robot
b01ac96bd4 Merge pull request #84770 from mikedanese/uuid
remove github.com/pborman/uuid
2019-11-05 08:47:05 -08:00
Kubernetes Prow Robot
1488460cd2 Merge pull request #84605 from andyzhangx/byok
add azure disk encryption(SSE+CMK) support
2019-11-04 23:16:52 -08:00
Mike Danese
a4ca9e6c93 migrate callers to g/g/uuid 2019-11-04 23:15:29 -08:00
Kubernetes Prow Robot
1d1385af91 Merge pull request #83474 from msau42/topology-ga
CSI Topology ga
2019-11-04 15:28:27 -08:00
Kubernetes Prow Robot
08410cbf06 Merge pull request #84365 from codenrhoden/rm-mount-container
Remove Alpha feature MountContainers
2019-11-03 21:29:41 -08:00
Kubernetes Prow Robot
ed5b038313 Merge pull request #84218 from cofyc/fix74552
Support local filesystem volume with block source reconstruction and add related e2e tests
2019-10-31 21:53:36 -07:00
andyzhangx
f10d44bad2 feat: add azure disk encryption(SSE+CMK) support 2019-10-31 13:24:43 +00:00
Yecheng Fu
0fd4cbcac4 log the reconstructed device and add break 2019-10-31 21:09:13 +08:00
David Zhu
3575720154 Add davidz627 as owner of pkg/volume/csi 2019-10-30 13:35:44 -07: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
Michelle Au
fb6dfeb718 Convert attach-detach controller to use v1.CSINode 2019-10-28 13:41:13 -07:00
Michelle Au
d27fa9d890 Kubelet creates v1.CSINode 2019-10-28 13:41:13 -07:00
Michelle Au
8f6ab81cd4 Move feature gate to GA 2019-10-28 13:41:13 -07:00
Yecheng Fu
36a54399a6 support local volume with block source reconstruction 2019-10-28 10:34:57 +08:00
Kubernetes Prow Robot
24ae4d6718 Merge pull request #84173 from cofyc/fix83693
Support local volume block mode reconstruction
2019-10-25 19:23:23 -07:00
Kubernetes Prow Robot
cb0f80efe7 Merge pull request #84321 from cduchesne/csi-detach-timeout
CSI: modify detach timeout to match attach timeout
2019-10-25 09:54:13 -07:00
Kubernetes Prow Robot
cbf1e2d360 Merge pull request #82794 from ingvagabund/fake-clientset-enforce-exact-much-for-get
Require exact match when calling Get method within fake clientset
2019-10-25 09:53:39 -07:00
Travis Rhoden
2e054a4f4c Remove Alpha feature Mount Containers
The alpha feature for mount containers is unused, and is
superseded by CSI. By removing it, we can remove a lot of unnecessary
code, and also clean up the mount library even more before moving it out
of tree.
2019-10-25 09:25:13 -06:00
Kubernetes Prow Robot
8c1ffb59e3 Merge pull request #84083 from ZP-AlwaysWin/dev02
cleanup util code
2019-10-24 09:49:23 -07:00
Ted Yu
e8bd5c7785 Add event for pvc in case node expansion fails 2019-10-24 09:11:01 -07:00
Chris Duchesne
b4e0f1b8f8 modify detach timeout to be csiTimeout 2019-10-24 07:53:16 -07:00
Kubernetes Prow Robot
900c0cf0b6 Merge pull request #84137 from cwdsuzhou/Octo/add_success_events
Add an event to pvc when node expand successfully
2019-10-24 07:33:15 -07:00
Jan Chaloupka
d32c76fc03 Require exact match when calling Get method within fake clientset
`Get` method within the fake clientset returns an object that would not be normally returned when using the real clientset. Reproducer:

```go
package main

import (
	v1 "k8s.io/api/core/v1"
	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
	"k8s.io/client-go/kubernetes/fake"
)

func main () {
	cm := &v1.ConfigMap{
		ObjectMeta: metav1.ObjectMeta{Namespace: metav1.NamespaceSystem, Name: "cm"},
		}

	client := fake.NewSimpleClientset(cm)
	obj, err := client.CoreV1().ConfigMaps("").Get("", metav1.GetOptions{})
	if err != nil {
		panic(err)
	}
	fmt.Printf("obj: %#v\n", obj)
}
```

stored under `test.go` of `github.com/kubernetes/kubernetes` (master HEAD) root directory and ran:

```sh
$ go run test.go
obj: &v1.ConfigMap{TypeMeta:v1.TypeMeta{Kind:"", APIVersion:""}, ObjectMeta:v1.ObjectMeta{Name:"cm", GenerateName:"", Namespace:"kube-system", SelfLink:"", UID:"", ResourceVersion:"", Generation:0, CreationTimestamp:v1.Time{Time:time.Time{wall:0x0, ext:0, loc:(*time.Location)(nil)}}, DeletionTimestamp:(*v1.Time)(nil), DeletionGracePeriodSeconds:(*int64)(nil), Labels:map[string]string(nil), Annotations:map[string]string(nil), OwnerReferences:[]v1.OwnerReference(nil), Finalizers:[]string(nil), ClusterName:"", ManagedFields:[]v1.ManagedFieldsEntry(nil)}, Data:map[string]string(nil), BinaryData:map[string][]uint8(nil)}
```

As you can see fake clientset with a "test" configmap is created. When getting the object through the clientset back, I intentionally set the object name to an empty string. I would expect to get an error saying config map "" was not found. However, I get "test" configmap instead.

Reason for that is inside implementation of `filterByNamespaceAndName` private function:
```go
func filterByNamespaceAndName(objs []runtime.Object, ns, name string) ([]runtime.Object, error) {
	var res []runtime.Object

	for _, obj := range objs {
		acc, err := meta.Accessor(obj)
		if err != nil {
			return nil, err
		}
		if ns != "" && acc.GetNamespace() != ns {
			continue
		}
		if name != "" && acc.GetName() != name {
			continue
		}
		res = append(res, obj)
	}

	return res, nil
}
```

When `name` is empty, `name != "" && acc.GetName() != name` condition is false and thus `obj` is consider as a fit.

[1] https://github.com/kubernetes/client-go/blob/master/testing/fixture.go#L481-L493
2019-10-24 14:41:48 +02:00
ZP-AlwaysWin
9ca7888acc remove the extra space added 2019-10-24 17:17:31 +08:00
Yecheng Fu
46b1e264dc support local volume block mode reconstruction 2019-10-23 19:32:15 +08:00
Kubernetes Prow Robot
18cef954a1 Merge pull request #83591 from jingxu97/Oct/cache
Flush data cache during unmount device for GCE-PD in Windows
2019-10-21 21:11:36 -07:00
caiweidong
909be01bd6 Add an event to pvc when node expand successfully 2019-10-21 11:33:46 +08:00
Kubernetes Prow Robot
fa99d4068b Merge pull request #83466 from wongma7/block-reconstruct
Fix AWS block volume reconstruction to be like file
2019-10-17 03:18:51 -07:00
Matthew Wong
82786ff720 Fix AWS block volume reconstruction to be like file 2019-10-16 14:27:57 -07:00
Jing Xu
1636b2b452 Flush data cache during unmount device for GCE-PD in Windows
This PR fixes the issue mentioned in #83590 for GCE-PD. It uses
WriteVolumeCache API to writes the file system cache to disk during
UnmountDevice in Windows. Linux does not need to explicitly flush cache
because unmount will automatically sync the disk which also flush the
cache.

Change-Id: Ife2745c92b8c0446e79a52e9f9ec7851d2f6b90d
2019-10-16 10:12:35 -07:00
Kubernetes Prow Robot
0a08798b9a Merge pull request #75588 from smileusd/rbd_info
fix rbd info when return warning information
2019-10-15 16:32:09 -07:00
Kubernetes Prow Robot
245189b8a1 Merge pull request #83747 from JohnStrunk/csi-fsgroup-fix
Improve efficiency of csiMountMgr.GetAttributes
2019-10-15 07:11:52 -07:00
Bob Killen
6e68d80013 Prune inactive owners from pkg/volume/* OWNERS files. 2019-10-13 08:44:11 -04:00
John Strunk
55881f2fc4 Improve efficiency of csiMountMgr.GetAttributes
GetAttributes is called repeatedly while setting the fsGroup of a
volume. Previously, it recalculated whether SELinux was supported during
each call. This resulted in volume.SetVolumeOwnership taking a long
time, delaying pod startup for high file count volumes.

This change checks the SELinux status once, right after node publish,
allowing GetAttributes to simply build and return a struct.

Signed-off-by: John Strunk <jstrunk@redhat.com>
2019-10-10 13:51:50 -04:00
Kubernetes Prow Robot
8098bae921 Merge pull request #83451 from jsafrane/block-reconstruct
Fix block volume reconstruction
2019-10-08 03:45:18 -07:00
Kubernetes Prow Robot
24424e26d1 Merge pull request #83104 from zouyee/gfs
IP validates if a string is a valid IP address
2019-10-07 03:13:08 -07:00
Kubernetes Prow Robot
00458855e4 Merge pull request #78411 from qingsenLi/k8s-190528
spelling error 'doen't'
2019-10-05 17:27:11 -07:00
Jan Safranek
1c8c861009 Reconstruct block PV name in all volume plugins
The PV name is often necessary to build correct symlink paths
/var/lib/kubelet/pods/{podUid}}/{DefaultKubeletVolumeDevicesDirName}/{escapeQualifiedPluginName}/{PV name}
2019-10-04 15:49:49 +02:00
David Zhu
223ef76db5 Dedupe logging for PD SetUpAt and added a slow SetVolumeOwnership warning 2019-10-03 11:10:20 -07:00
zouyee
599fa5583e IP validates if a string is a valid IP address
Signed-off-by: Zou Nengren <zouyee1989@gmail.com>
2019-10-02 08:55:08 +08:00
David Zhu
8970ec8fa7 Revert "Bugfix: remove PV dir when umount raw block device" 2019-10-01 15:14:35 -07:00
Kubernetes Prow Robot
b89220f9ca Merge pull request #80420 from cwdsuzhou/July/mergeAttachDetachCommonFunc
Merge attach and detach common func
2019-09-30 13:08:46 -07:00
caiweidong
a890bf1175 Merge attach and detach common func 2019-09-30 17:36:14 +08:00
Kubernetes Prow Robot
14e5adfc85 Merge pull request #82683 from davidz627/fix/translationStruct
Refactor CSI Translation Library into a struct that is injected into various components to simplify unit testing
2019-09-29 10:11:37 -07: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
Kubernetes Prow Robot
cd95e57c71 Merge pull request #83071 from chendotjs/bytes-equal
replace bytes.Compare() with bytes.Equal()
2019-09-27 09:57:36 -07:00
Kubernetes Prow Robot
a392897dec Merge pull request #79784 from cwdsuzhou/July/RemoveDeviceVolumeDir
Bugfix: remove PV dir when umount raw block device
2019-09-27 02:03:36 -07:00
chenyaqi01
66be69bb0e replace bytes.Compare() with bytes.Equal() 2019-09-27 10:08:49 +08:00
Kubernetes Prow Robot
67d750bb28 Merge pull request #81916 from hwdef/fix-typo-pkg
fix typo in pkg
2019-09-26 08:35:24 -07:00
caiweidong
f30a549eb8 Bugfix: remove PV dir when umount raw block device 2019-09-26 19:46:42 +08:00