e2e: add -is-openshift option to disable certain checks

On OpenShift it is not possible for the Rook toolbox to get the metrics
from Kubelet (without additional configuration). By passing
-is-openshift, the metrics are not checked, and the e2e suite does not
fail on that particular piece.

Signed-off-by: Niels de Vos <ndevos@redhat.com>
This commit is contained in:
Niels de Vos 2022-04-07 17:42:48 +02:00 committed by mergify[bot]
parent 92866f46fd
commit 5bc8584b02
3 changed files with 4 additions and 1 deletions

View File

@ -102,6 +102,7 @@ are available while running tests:
| timeout | Panic test binary after duration d (default 0, timeout disabled) | | timeout | Panic test binary after duration d (default 0, timeout disabled) |
| v | Verbose: print additional output | | v | Verbose: print additional output |
| filesystem | Name of the CephFS filesystem (default: "myfs") | | filesystem | Name of the CephFS filesystem (default: "myfs") |
| is-openshift | Run in OpenShift compatibility mode, skips certain new feature tests |
## E2E for snapshot ## E2E for snapshot

View File

@ -44,6 +44,7 @@ func init() {
flag.StringVar(&cephCSINamespace, "cephcsi-namespace", defaultNs, "namespace in which cephcsi deployed") flag.StringVar(&cephCSINamespace, "cephcsi-namespace", defaultNs, "namespace in which cephcsi deployed")
flag.StringVar(&rookNamespace, "rook-namespace", "rook-ceph", "namespace in which rook is deployed") flag.StringVar(&rookNamespace, "rook-namespace", "rook-ceph", "namespace in which rook is deployed")
flag.StringVar(&fileSystemName, "filesystem", "myfs", "CephFS filesystem to use") flag.StringVar(&fileSystemName, "filesystem", "myfs", "CephFS filesystem to use")
flag.BoolVar(&isOpenShift, "is-openshift", false, "disables certain checks on OpenShift")
setDefaultKubeconfig() setDefaultKubeconfig()
// Register framework flags, then handle flags // Register framework flags, then handle flags

View File

@ -78,6 +78,7 @@ var (
rookNamespace string rookNamespace string
radosNamespace string radosNamespace string
poll = 2 * time.Second poll = 2 * time.Second
isOpenShift bool
) )
func getMons(ns string, c kubernetes.Interface) ([]string, error) { func getMons(ns string, c kubernetes.Interface) ([]string, error) {
@ -404,7 +405,7 @@ func validateNormalUserPVCAccess(pvcPath string, f *framework.Framework) error {
if pvc.Spec.VolumeMode != nil { if pvc.Spec.VolumeMode != nil {
isBlockMode = (*pvc.Spec.VolumeMode == v1.PersistentVolumeBlock) isBlockMode = (*pvc.Spec.VolumeMode == v1.PersistentVolumeBlock)
} }
if !isBlockMode || k8sVersionGreaterEquals(f.ClientSet, 1, 22) { if (!isBlockMode || k8sVersionGreaterEquals(f.ClientSet, 1, 22)) && !isOpenShift {
err = getMetricsForPVC(f, pvc, deployTimeout) err = getMetricsForPVC(f, pvc, deployTimeout)
if err != nil { if err != nil {
return err return err