@@ -446,12 +446,14 @@ func handle() error {
446446 // hence we use the main.Version utils to parse and compare GKE managed cluster versions.
447447 // For clusters deployed on GCE, use the apimachinery version utils (which supports non-gke based semantic versioning).
448448 testParams .clusterVersion = mustGetKubeClusterVersion ()
449+ klog .Infof ("kubernetes cluster server version: %s" , testParams .clusterVersion )
449450 switch testParams .deploymentStrategy {
450451 case "gce" :
451452 testParams .testSkip = generateGCETestSkip (testParams )
452453 case "gke" :
453- testParams .testSkip = generateGKETestSkip (testParams )
454454 testParams .nodeVersion = * gkeNodeVersion
455+ testParams .testSkip = generateGKETestSkip (testParams )
456+
455457 default :
456458 return fmt .Errorf ("Unknown deployment strategy %s" , testParams .deploymentStrategy )
457459 }
@@ -514,6 +516,9 @@ func generateGCETestSkip(testParams *testParameters) string {
514516 if v .LessThan (apimachineryversion .MustParseSemantic ("1.17.0" )) {
515517 skipString = skipString + "|VolumeSnapshotDataSource"
516518 }
519+ if v .LessThan (apimachineryversion .MustParseSemantic ("1.20.0" )) {
520+ skipString = skipString + "|fsgroupchangepolicy"
521+ }
517522 if testParams .platform == "windows" {
518523 skipString = skipString + "|\\ [LinuxOnly\\ ]"
519524 }
@@ -523,6 +528,10 @@ func generateGCETestSkip(testParams *testParameters) string {
523528func generateGKETestSkip (testParams * testParameters ) string {
524529 skipString := "\\ [Disruptive\\ ]|\\ [Serial\\ ]"
525530 curVer := mustParseVersion (testParams .clusterVersion )
531+ var nodeVer * version
532+ if testParams .nodeVersion != "" {
533+ nodeVer = mustParseVersion (testParams .nodeVersion )
534+ }
526535
527536 // "volumeMode should not mount / map unused volumes in a pod" tests a
528537 // (https://github.com/kubernetes/kubernetes/pull/81163)
@@ -531,6 +540,11 @@ func generateGKETestSkip(testParams *testParameters) string {
531540 skipString = skipString + "|volumeMode\\ sshould\\ snot\\ smount\\ s/\\ smap\\ sunused\\ svolumes\\ sin\\ sa\\ spod"
532541 }
533542
543+ // Check master and node version to skip Pod FsgroupChangePolicy test suite.
544+ if curVer .lessThan (mustParseVersion ("1.20.0" )) || (nodeVer != nil && nodeVer .lessThan (mustParseVersion ("1.20.0" ))) {
545+ skipString = skipString + "|fsgroupchangepolicy"
546+ }
547+
534548 // For GKE deployed PD CSI driver, resizer sidecar is enabled in 1.16.8-gke.3
535549 if (testParams .useGKEManagedDriver && curVer .lessThan (mustParseVersion ("1.16.8-gke.3" ))) ||
536550 (! testParams .useGKEManagedDriver && curVer .lessThan (mustParseVersion ("1.16.0" ))) {
@@ -542,6 +556,7 @@ func generateGKETestSkip(testParams *testParameters) string {
542556 (! testParams .useGKEManagedDriver && (* curVer ).lessThan (mustParseVersion ("1.17.0" ))) {
543557 skipString = skipString + "|VolumeSnapshotDataSource"
544558 }
559+
545560 return skipString
546561}
547562
0 commit comments