From a1755ee2765f3d1c9c26d51a49ad63d133932710 Mon Sep 17 00:00:00 2001 From: Niels de Vos Date: Thu, 1 Jan 2015 13:15:45 +0100 Subject: glusterfsd: add "print-netgroups" and "print-exports" command NFS now has the ability to use a separate file for "netgroups" and "exports". An administrator should have the ability to check the validity of the files before applying the configuration. The "glusterfsd" command now has the following additional arguments that can be used to check the configuration: --print-netgroups: Validate the netgroups file and print it out --print-exports: Validate the exports file and print it out BUG: 1143880 Change-Id: I24c40d50110d49d8290f9fd916742f7e4d0df85f URL: http://www.gluster.org/community/documentation/index.php/Features/Exports_Netgroups_Authentication Original-author: Shreyas Siravara CC: Richard Wareing CC: Jiffin Tony Thottan Signed-off-by: Niels de Vos Reviewed-on: http://review.gluster.org/9365 Reviewed-by: Vijay Bellur Tested-by: Vijay Bellur --- tests/basic/netgroup_parsing.t | 50 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 tests/basic/netgroup_parsing.t (limited to 'tests/basic/netgroup_parsing.t') diff --git a/tests/basic/netgroup_parsing.t b/tests/basic/netgroup_parsing.t new file mode 100644 index 0000000000..73a69c44ce --- /dev/null +++ b/tests/basic/netgroup_parsing.t @@ -0,0 +1,50 @@ +#!/bin/bash + +. $(dirname $0)/../include.rc +. $(dirname $0)/../volume.rc + +NG_FILES=$(dirname $0)/../configfiles +cleanup; + +function test_ng_1 () +{ + glusterfsd --print-netgroups $1 | sed -n 1p +} + +function test_ng_2 () +{ + glusterfsd --print-netgroups $1 | sed -n 2p +} + +function test_ng_3 () +{ + glusterfsd --print-netgroups $1 | sed -n 3p +} + +function test_bad_ng () +{ + glusterfsd --print-netgroups $1 2>&1 | sed -n 1p +} + +function test_large_file () +{ + # The build system needs this path for the test to pass. + # This is an important test because this file is ~1800 lines + # longs and is a "real-world" netgroups file. + glusterfsd --print-netgroups ~/opsfiles/storage/netgroup/netgroup | sed -n 1p +} + +function test_empty_ng () +{ + glusterfsd --print-netgroups $1 2>&1 | sed -n 2p +} + +EXPECT_KEYWORD "ng2 (dev1763.prn2.example.com,,)" test_ng_1 $NG_FILES/netgroups +EXPECT_KEYWORD "ng1 ng2 (dev1763.prn2.example.com,,)" test_ng_2 $NG_FILES/netgroups +EXPECT_KEYWORD "asdf ng1 ng2 (dev1763.prn2.example.com,,)" test_ng_3 $NG_FILES/netgroups +# TODO: get a real-world large netgroup file +#EXPECT_KEYWORD "wikipedia001.07.prn1 (wikipedia003.prn1.example.com,,)(wikipedia002.prn1.example.com,,)(wikipedia001.prn1.example.com,,)" test_large_file +EXPECT_KEYWORD "Parse error" test_bad_ng $NG_FILES/bad_netgroups +EXPECT_KEYWORD "No netgroups were specified except for the parent" test_empty_ng $NG_FILES/bad_netgroups + +cleanup; -- cgit