Skip to content

Commit

Permalink
Merge pull request #82678 from mucahitkurt/skip-multi-node-vol-availa…
Browse files Browse the repository at this point in the history
…bility-tests-for-hostpath

Skip e2e tests that require node independent volume for the drivers that don't support node independent volumes
  • Loading branch information
k8s-ci-robot committed Sep 13, 2019
2 parents 7f084f0 + f0aa13c commit c2a3f0b
Show file tree
Hide file tree
Showing 4 changed files with 30 additions and 17 deletions.
3 changes: 2 additions & 1 deletion test/e2e/storage/drivers/csi.go
Original file line number Diff line number Diff line change
Expand Up @@ -96,6 +96,7 @@ func InitHostPathCSIDriver() testsuites.TestDriver {
testsuites.CapBlock: true,
testsuites.CapPVCDataSource: true,
testsuites.CapControllerExpansion: true,
testsuites.CapSingleNodeVolume: true,
}
return initHostPathCSIDriver("csi-hostpath",
capabilities,
Expand Down Expand Up @@ -345,7 +346,7 @@ func (m *mockCSIDriver) PrepareTest(f *framework.Framework) (*testsuites.PerTest
// InitHostPathV0CSIDriver returns a variant of hostpathCSIDriver with different manifests.
func InitHostPathV0CSIDriver() testsuites.TestDriver {
return initHostPathCSIDriver("csi-hostpath-v0",
map[testsuites.Capability]bool{testsuites.CapPersistence: true, testsuites.CapMultiPODs: true},
map[testsuites.Capability]bool{testsuites.CapPersistence: true, testsuites.CapMultiPODs: true, testsuites.CapSingleNodeVolume: true},
nil, /* no volume attributes -> no ephemeral volume testing */
// Using the current set of rbac.yaml files is problematic here because they don't
// match the version of the rules that were written for the releases of external-attacher
Expand Down
35 changes: 20 additions & 15 deletions test/e2e/storage/drivers/in_tree.go
Original file line number Diff line number Diff line change
Expand Up @@ -701,8 +701,9 @@ func InitHostPathDriver() testsuites.TestDriver {
"", // Default fsType
),
Capabilities: map[testsuites.Capability]bool{
testsuites.CapPersistence: true,
testsuites.CapMultiPODs: true,
testsuites.CapPersistence: true,
testsuites.CapMultiPODs: true,
testsuites.CapSingleNodeVolume: true,
},
},
}
Expand Down Expand Up @@ -775,8 +776,9 @@ func InitHostPathSymlinkDriver() testsuites.TestDriver {
"", // Default fsType
),
Capabilities: map[testsuites.Capability]bool{
testsuites.CapPersistence: true,
testsuites.CapMultiPODs: true,
testsuites.CapPersistence: true,
testsuites.CapMultiPODs: true,
testsuites.CapSingleNodeVolume: true,
},
},
}
Expand Down Expand Up @@ -917,7 +919,8 @@ func InitEmptydirDriver() testsuites.TestDriver {
"", // Default fsType
),
Capabilities: map[testsuites.Capability]bool{
testsuites.CapExec: true,
testsuites.CapExec: true,
testsuites.CapSingleNodeVolume: true,
},
},
}
Expand Down Expand Up @@ -1677,19 +1680,21 @@ type localVolume struct {
var (
// capabilities
defaultLocalVolumeCapabilities = map[testsuites.Capability]bool{
testsuites.CapPersistence: true,
testsuites.CapFsGroup: true,
testsuites.CapBlock: false,
testsuites.CapExec: true,
testsuites.CapMultiPODs: true,
testsuites.CapPersistence: true,
testsuites.CapFsGroup: true,
testsuites.CapBlock: false,
testsuites.CapExec: true,
testsuites.CapMultiPODs: true,
testsuites.CapSingleNodeVolume: true,
}
localVolumeCapabitilies = map[utils.LocalVolumeType]map[testsuites.Capability]bool{
utils.LocalVolumeBlock: {
testsuites.CapPersistence: true,
testsuites.CapFsGroup: true,
testsuites.CapBlock: true,
testsuites.CapExec: true,
testsuites.CapMultiPODs: true,
testsuites.CapPersistence: true,
testsuites.CapFsGroup: true,
testsuites.CapBlock: true,
testsuites.CapExec: true,
testsuites.CapMultiPODs: true,
testsuites.CapSingleNodeVolume: true,
},
}
// fstype
Expand Down
6 changes: 6 additions & 0 deletions test/e2e/storage/testsuites/multivolume.go
Original file line number Diff line number Diff line change
Expand Up @@ -161,6 +161,9 @@ func (t *multiVolumeTestSuite) defineTests(driver TestDriver, pattern testpatter
defer cleanup()

// Check different-node test requirement
if l.driver.GetDriverInfo().Capabilities[CapSingleNodeVolume] {
framework.Skipf("Driver %s only supports %v -- skipping", l.driver.GetDriverInfo().Name, CapSingleNodeVolume)
}
nodes := framework.GetReadySchedulableNodesOrDie(l.cs)
if len(nodes.Items) < 2 {
framework.Skipf("Number of available nodes is less than 2 - skipping")
Expand Down Expand Up @@ -241,6 +244,9 @@ func (t *multiVolumeTestSuite) defineTests(driver TestDriver, pattern testpatter
defer cleanup()

// Check different-node test requirement
if l.driver.GetDriverInfo().Capabilities[CapSingleNodeVolume] {
framework.Skipf("Driver %s only supports %v -- skipping", l.driver.GetDriverInfo().Name, CapSingleNodeVolume)
}
nodes := framework.GetReadySchedulableNodesOrDie(l.cs)
if len(nodes.Items) < 2 {
framework.Skipf("Number of available nodes is less than 2 - skipping")
Expand Down
3 changes: 2 additions & 1 deletion test/e2e/storage/testsuites/testdriver.go
Original file line number Diff line number Diff line change
Expand Up @@ -155,7 +155,8 @@ const (
CapRWX Capability = "RWX" // support ReadWriteMany access modes
CapControllerExpansion Capability = "controllerExpansion" // support volume expansion for controller
CapNodeExpansion Capability = "nodeExpansion" // support volume expansion for node
CapVolumeLimits = "volumeLimits" // support volume limits (can be *very* slow)
CapVolumeLimits Capability = "volumeLimits" // support volume limits (can be *very* slow)
CapSingleNodeVolume Capability = "singleNodeVolume" // support volume that can run on single node (like hostpath)
)

// DriverInfo represents static information about a TestDriver.
Expand Down

0 comments on commit c2a3f0b

Please sign in to comment.