Skip to content

Commit 2dcdb22

Browse files
author
Roman Sysoev
committed
test(vm): check TCP connection during VM migration
Signed-off-by: Roman Sysoev <[email protected]>
1 parent 7470471 commit 2dcdb22

File tree

17 files changed

+554
-0
lines changed

17 files changed

+554
-0
lines changed

tests/e2e/config/config.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -149,6 +149,7 @@ type TestData struct {
149149
VMLabelAnnotation string `yaml:"vmLabelAnnotation"`
150150
VMMigration string `yaml:"vmMigration"`
151151
VMMigrationCancel string `yaml:"vmMigrationCancel"`
152+
VMMigrationTCPSession string `yaml:"vmMigrationTCPSession"`
152153
VMEvacuation string `yaml:"vmEvacuation"`
153154
VMDiskAttachment string `yaml:"vmDiskAttachment"`
154155
VMRestoreForce string `yaml:"vmRestoreForce"`

tests/e2e/default_config.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ testData:
3131
vmLabelAnnotation: "/tmp/testdata/vm-label-annotation"
3232
vmMigration: "/tmp/testdata/vm-migration"
3333
vmMigrationCancel: "/tmp/testdata/vm-migration-cancel"
34+
vmMigrationTCPSession: "/tmp/testdata/vm-migration-tcp-session"
3435
vmEvacuation: "/tmp/testdata/vm-evacuation"
3536
vmDiskAttachment: "/tmp/testdata/vm-disk-attachment"
3637
vmRestoreForce: "/tmp/testdata/vm-restore-force"
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
#cloud-config
2+
users:
3+
- name: cloud
4+
# passwd: cloud
5+
passwd: $6$rounds=4096$vln/.aPHBOI7BMYR$bBMkqQvuGs5Gyd/1H5DP4m9HjQSy.kgrxpaGEHwkX7KEFV8BS.HZWPitAtZ2Vd8ZqIZRqmlykRCagTgPejt1i.
6+
shell: /bin/bash
7+
sudo: ALL=(ALL) NOPASSWD:ALL
8+
lock_passwd: false
9+
ssh_authorized_keys:
10+
# testcases
11+
- ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFxcXHmwaGnJ8scJaEN5RzklBPZpVSic4GdaAsKjQoeA [email protected]
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
apiVersion: kustomize.config.k8s.io/v1beta1
2+
kind: Kustomization
3+
resources:
4+
- ./vm.yaml
5+
- ./vd-root.yaml
6+
- ./vd-blank.yaml
7+
configurations:
8+
- transformer.yaml
9+
generatorOptions:
10+
disableNameSuffixHash: true
11+
secretGenerator:
12+
- files:
13+
- userData=cfg/cloudinit.yaml
14+
name: cloud-init
15+
type: provisioning.virtualization.deckhouse.io/cloud-init
Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
# https://github.com/kubernetes-sigs/kustomize/blob/master/examples/transformerconfigs/README.md#transformer-configurations
2+
3+
namespace:
4+
- kind: ClusterVirtualImage
5+
path: spec/dataSource/objectRef/namespace
6+
nameReference:
7+
- kind: VirtualImage
8+
version: v1alpha2 # optional
9+
fieldSpecs:
10+
- path: spec/dataSource/objectRef/name
11+
kind: ClusterVirtualImage
12+
- path: spec/dataSource/objectRef/name
13+
kind: VirtualImage
14+
- path: spec/dataSource/objectRef/name
15+
kind: VirtualDisk
16+
- path: spec/blockDeviceRefs/name
17+
kind: VirtualMachine
18+
- kind: ClusterVirtualImage
19+
version: v1alpha2 # optional
20+
fieldSpecs:
21+
- path: spec/dataSource/objectRef/name
22+
kind: ClusterVirtualImage
23+
- path: spec/dataSource/objectRef/name
24+
kind: VirtualImage
25+
- path: spec/dataSource/objectRef/name
26+
kind: VirtualDisk
27+
- path: spec/blockDeviceRefs/name
28+
kind: VirtualMachine
29+
- kind: VirtualDisk
30+
version: v1alpha2 # optional
31+
fieldSpecs:
32+
- path: spec/blockDeviceRefs/name
33+
kind: VirtualMachine
34+
- path: spec/blockDeviceRef/name
35+
kind: VirtualMachineBlockDeviceAttachment
36+
- kind: Secret
37+
fieldSpecs:
38+
- path: spec/provisioning/userDataRef/name
39+
kind: VirtualMachine
40+
- kind: VirtualMachineIPAddress
41+
version: v1alpha2
42+
fieldSpecs:
43+
- path: spec/virtualMachineIPAddressName
44+
kind: VirtualMachine
45+
- kind: VirtualMachine
46+
version: v1alpha2
47+
fieldSpecs:
48+
- path: spec/virtualMachineName
49+
kind: VirtualMachineBlockDeviceAttachment
50+
- kind: VirtualMachineClass
51+
version: v1alpha2
52+
fieldSpecs:
53+
- path: spec/virtualMachineClassName
54+
kind: VirtualMachine
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
apiVersion: virtualization.deckhouse.io/v1alpha2
2+
kind: VirtualDisk
3+
metadata:
4+
name: vd-attach
5+
spec:
6+
persistentVolumeClaim:
7+
storageClassName: "{{ .STORAGE_CLASS_NAME }}"
8+
size: 100Mi
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
apiVersion: virtualization.deckhouse.io/v1alpha2
2+
kind: VirtualDisk
3+
metadata:
4+
name: vd-blank
5+
spec:
6+
persistentVolumeClaim:
7+
storageClassName: "{{ .STORAGE_CLASS_NAME }}"
8+
size: 100Mi
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
apiVersion: virtualization.deckhouse.io/v1alpha2
2+
kind: VirtualDisk
3+
metadata:
4+
name: vd-root
5+
spec:
6+
persistentVolumeClaim:
7+
storageClassName: "{{ .STORAGE_CLASS_NAME }}"
8+
size: 512Mi
9+
dataSource:
10+
type: ObjectRef
11+
objectRef:
12+
kind: VirtualImage
13+
name: vi-alpine-http
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
apiVersion: virtualization.deckhouse.io/v1alpha2
2+
kind: VirtualMachine
3+
metadata:
4+
name: vm
5+
spec:
6+
bootloader: EFI
7+
virtualMachineClassName: generic
8+
cpu:
9+
cores: 1
10+
coreFraction: 5%
11+
memory:
12+
size: 256Mi
13+
disruptions:
14+
restartApprovalMode: Manual
15+
provisioning:
16+
type: UserDataRef
17+
userDataRef:
18+
kind: Secret
19+
name: cloud-init
20+
blockDeviceRefs:
21+
- kind: VirtualDisk
22+
name: vd-root
23+
- kind: VirtualDisk
24+
name: vd-blank
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
apiVersion: kustomize.config.k8s.io/v1beta1
2+
kind: Kustomization
3+
namespace: end-to-end
4+
namePrefix: pr-number-or-commit-hash-
5+
resources:
6+
- ns.yaml
7+
- vi
8+
- overlays/iperf-client
9+
- overlays/iperf-server
10+
configurations:
11+
- transformer.yaml
12+
labels:
13+
- includeSelectors: true
14+
pairs:
15+
id: pr-number-or-commit-hash
16+
testcase: vm-migration-tcp-session

0 commit comments

Comments
 (0)