Whamcloud - gitweb
LU-5423 tests: add version check to sanity-sec test 4
[fs/lustre-release.git] / lustre / tests / sanity-sec.sh
old mode 100644 (file)
new mode 100755 (executable)
index 020a735..03e3712
@@ -292,6 +292,13 @@ run_test 3 "rootsquash ============================="
 # as for remote client, the groups of the specified uid on MDT
 # will be obtained by upcall /sbin/l_getidentity and used.
 test_4() {
+       local server_version=$(lustre_version_code $SINGLEMDS)
+
+       [[ $server_version -ge $(version_code 2.6.93) ]] ||
+       [[ $server_version -ge $(version_code 2.5.35) &&
+          $server_version -lt $(version_code 2.5.50) ]] ||
+               { skip "Need MDS version at least 2.6.93 or 2.5.35"; return; }
+
        if [ "$CLIENT_TYPE" = "remote" ]; then
                do_facet $SINGLEMDS "echo '* 0 rmtown' > $PERM_CONF"
                do_facet $SINGLEMDS "lctl set_param -n $IDENTITY_FLUSH=-1"
@@ -628,8 +635,8 @@ test_7() {
        local rc
 
        remote_mgs_nodsh && skip "remote MGS with nodsh" && return
-       [ $(lustre_version_code $SINGLEMGS) -lt $(version_code 2.5.53) ] &&
-               skip "No nodemap on $(get_lustre_version) MGS, need 2.5.53+" &&
+       [ $(lustre_version_code mgs) -lt $(version_code 2.5.53) ] &&
+               skip "No nodemap on $(lustre_build_version mgs) MGS < 2.5.53" &&
                return
 
        create_nodemaps
@@ -648,8 +655,8 @@ test_8() {
        local rc
 
        remote_mgs_nodsh && skip "remote MGS with nodsh" && return
-       [ $(lustre_version_code $SINGLEMGS) -lt $(version_code 2.5.53) ] &&
-               skip "No nodemap on $(get_lustre_version) MGS, need 2.5.53+" &&
+       [ $(lustre_version_code mgs) -lt $(version_code 2.5.53) ] &&
+               skip "No nodemap on $(lustre_build_version mgs) MGS < 2.5.53" &&
                return
 
        # Set up nodemaps
@@ -679,8 +686,8 @@ test_9() {
        local rc
 
        remote_mgs_nodsh && skip "remote MGS with nodsh" && return
-       [ $(lustre_version_code $SINGLEMGS) -lt $(version_code 2.5.53) ] &&
-               skip "No nodemap on $(get_lustre_version) MGS, need 2.5.53+" &&
+       [ $(lustre_version_code mgs) -lt $(version_code 2.5.53) ] &&
+               skip "No nodemap on $(lustre_build_version mgs) MGS < 2.5.53" &&
                return
 
        rc=0
@@ -717,8 +724,8 @@ test_10() {
        local rc
 
        remote_mgs_nodsh && skip "remote MGS with nodsh" && return
-       [ $(lustre_version_code $SINGLEMGS) -lt $(version_code 2.5.53) ] &&
-               skip "No nodemap on $(get_lustre_version) MGS, need 2.5.53+" &&
+       [ $(lustre_version_code mgs) -lt $(version_code 2.5.53) ] &&
+               skip "No nodemap on $(lustre_build_version mgs) MGS < 2.5.53" &&
                return
 
        rc=0
@@ -764,8 +771,8 @@ test_11() {
        local rc
 
        remote_mgs_nodsh && skip "remote MGS with nodsh" && return
-       [ $(lustre_version_code $SINGLEMGS) -lt $(version_code 2.5.53) ] &&
-               skip "No nodemap on $(get_lustre_version) MGS, need 2.5.53+" &&
+       [ $(lustre_version_code mgs) -lt $(version_code 2.5.53) ] &&
+               skip "No nodemap on $(lustre_build_version mgs) MGS < 2.5.53" &&
                return
 
        rc=0
@@ -794,8 +801,8 @@ test_12() {
        local rc
 
        remote_mgs_nodsh && skip "remote MGS with nodsh" && return
-       [ $(lustre_version_code $SINGLEMGS) -lt $(version_code 2.5.53) ] &&
-               skip "No nodemap on $(get_lustre_version) MGS, need 2.5.53+" &&
+       [ $(lustre_version_code mgs) -lt $(version_code 2.5.53) ] &&
+               skip "No nodemap on $(lustre_build_version mgs) MGS < 2.5.53" &&
                return
 
        rc=0
@@ -832,8 +839,8 @@ test_13() {
        local rc
 
        remote_mgs_nodsh && skip "remote MGS with nodsh" && return
-       [ $(lustre_version_code $SINGLEMGS) -lt $(version_code 2.5.53) ] &&
-               skip "No nodemap on $(get_lustre_version) MGS, need 2.5.53+" &&
+       [ $(lustre_version_code mgs) -lt $(version_code 2.5.53) ] &&
+               skip "No nodemap on $(lustre_build_version mgs) MGS < 2.5.53" &&
                return
 
        rc=0
@@ -875,8 +882,8 @@ test_14() {
        local rc
 
        remote_mgs_nodsh && skip "remote MGS with nodsh" && return
-       [ $(lustre_version_code $SINGLEMGS) -lt $(version_code 2.5.53) ] &&
-               skip "No nodemap on $(get_lustre_version) MGS, need 2.5.53+" &&
+       [ $(lustre_version_code mgs) -lt $(version_code 2.5.53) ] &&
+               skip "No nodemap on $(lustre_build_version mgs) MGS < 2.5.53" &&
                return
 
        rc=0
@@ -910,8 +917,8 @@ test_15() {
        local rc
 
        remote_mgs_nodsh && skip "remote MGS with nodsh" && return
-       [ $(lustre_version_code $SINGLEMGS) -lt $(version_code 2.5.53) ] &&
-               skip "No nodemap on $(get_lustre_version) MGS, need 2.5.53+" &&
+       [ $(lustre_version_code mgs) -lt $(version_code 2.5.53) ] &&
+               skip "No nodemap on $(lustre_build_version mgs) MGS < 2.5.53" &&
                return
 
        rc=0
@@ -1238,8 +1245,8 @@ test_fops() {
 
 nodemap_version_check () {
        remote_mgs_nodsh && skip "remote MGS with nodsh" && return 1
-       [ $(lustre_version_code $SINGLEMGS) -lt $(version_code 2.6.90) ] &&
-               skip "Skip test on $(get_lustre_version) MGS, need 2.6.90+" &&
+       [ $(lustre_version_code mgs) -lt $(version_code 2.5.53) ] &&
+               skip "No nodemap on $(lustre_build_version mgs) MGS < 2.5.53" &&
                return 1
        return 0
 }
@@ -1273,6 +1280,7 @@ nodemap_test_setup() {
 }
 
 nodemap_test_cleanup() {
+       trap 0
        delete_fops_nodemaps
        rc=$?
        [[ $rc != 0 ]] && error "removing fops nodemaps failed $rc"
@@ -1301,6 +1309,7 @@ test_16() {
        nodemap_version_check || return 0
        nodemap_test_setup 0
 
+       trap nodemap_test_cleanup EXIT
        test_fops all_off
        nodemap_test_cleanup
 }
@@ -1310,6 +1319,7 @@ test_17() {
        nodemap_version_check || return 0
        nodemap_test_setup
 
+       trap nodemap_test_cleanup EXIT
        nodemap_clients_admin_trusted 0 1
        test_fops trusted_noadmin 1
        nodemap_test_cleanup
@@ -1319,6 +1329,8 @@ run_test 17 "test nodemap trusted_noadmin fileops"
 test_18() {
        nodemap_version_check || return 0
        nodemap_test_setup
+
+       trap nodemap_test_cleanup EXIT
        nodemap_clients_admin_trusted 0 0
        test_fops mapped_noadmin 1
        nodemap_test_cleanup
@@ -1328,6 +1340,8 @@ run_test 18 "test nodemap mapped_noadmin fileops"
 test_19() {
        nodemap_version_check || return 0
        nodemap_test_setup
+
+       trap nodemap_test_cleanup EXIT
        nodemap_clients_admin_trusted 1 1
        test_fops trusted_admin 1
        nodemap_test_cleanup
@@ -1337,6 +1351,8 @@ run_test 19 "test nodemap trusted_admin fileops"
 test_20() {
        nodemap_version_check || return 0
        nodemap_test_setup
+
+       trap nodemap_test_cleanup EXIT
        nodemap_clients_admin_trusted 1 0
        test_fops mapped_admin 1
        nodemap_test_cleanup
@@ -1346,6 +1362,8 @@ run_test 20 "test nodemap mapped_admin fileops"
 test_21() {
        nodemap_version_check || return 0
        nodemap_test_setup
+
+       trap nodemap_test_cleanup EXIT
        local x=1
        local i=0
        for client in $clients; do
@@ -1368,6 +1386,8 @@ run_test 21 "test nodemap mapped_trusted_noadmin fileops"
 test_22() {
        nodemap_version_check || return 0
        nodemap_test_setup
+
+       trap nodemap_test_cleanup EXIT
        local x=1
        local i=0
        for client in $clients; do
@@ -1453,6 +1473,7 @@ test_23() {
        nodemap_version_check || return 0
        nodemap_test_setup
 
+       trap nodemap_test_cleanup EXIT
        # 1 trusted cluster, 1 mapped cluster
        local unmapped_fs=$((IDBASE+0))
        local unmapped_c1=$((IDBASE+5))