Print this page
7290 ZFS test suite needs to control what utilities it can run
Reviewed by: Dan Kimmel <dan.kimmel@delphix.com>
Reviewed by: Matthew Ahrens <mahrens@delphix.com>
| Split |
Close |
| Expand all |
| Collapse all |
--- old/usr/src/test/zfs-tests/tests/functional/bootfs/bootfs_006_pos.ksh
+++ new/usr/src/test/zfs-tests/tests/functional/bootfs/bootfs_006_pos.ksh
1 1 #!/usr/bin/ksh -p
2 2 #
3 3 # CDDL HEADER START
4 4 #
5 5 # The contents of this file are subject to the terms of the
6 6 # Common Development and Distribution License (the "License").
7 7 # You may not use this file except in compliance with the License.
8 8 #
9 9 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
10 10 # or http://www.opensolaris.org/os/licensing.
11 11 # See the License for the specific language governing permissions
12 12 # and limitations under the License.
13 13 #
14 14 # When distributing Covered Code, include this CDDL HEADER in each
15 15 # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
16 16 # If applicable, add the following below this CDDL HEADER, with the
17 17 # fields enclosed by brackets "[]" replaced with your own identifying
18 18 # information: Portions Copyright [yyyy] [name of copyright owner]
|
↓ open down ↓ |
18 lines elided |
↑ open up ↑ |
19 19 #
20 20 # CDDL HEADER END
21 21 #
22 22
23 23 #
24 24 # Copyright 2008 Sun Microsystems, Inc. All rights reserved.
25 25 # Use is subject to license terms.
26 26 #
27 27
28 28 #
29 -# Copyright (c) 2012, 2015 by Delphix. All rights reserved.
29 +# Copyright (c) 2012, 2016 by Delphix. All rights reserved.
30 30 #
31 31
32 32 . $STF_SUITE/include/libtest.shlib
33 33
34 34 #
35 35 # DESCRIPTION:
36 36 #
37 37 # Pools of correct vdev types accept boot property
38 38 #
39 39 # STRATEGY:
40 40 # 1. create pools of each vdev type (raid, raidz, raidz2, mirror + hotspares)
41 41 # 2. verify we can set bootfs on each pool type according to design
42 42 #
43 43
44 44 verify_runnable "global"
45 45
46 46
47 -$ZPOOL set 2>&1 | $GREP bootfs > /dev/null
47 +zpool set 2>&1 | grep bootfs > /dev/null
48 48 if [ $? -ne 0 ]
49 49 then
50 50 log_unsupported "bootfs pool property not supported on this release."
51 51 fi
52 52
53 53 VDEV1=/bootfs_006_pos_a.$$.dat
54 54 VDEV2=/bootfs_006_pos_b.$$.dat
55 55 VDEV3=/bootfs_006_pos_c.$$.dat
56 56 VDEV4=/bootfs_006_pos_d.$$.dat
57 57
58 58 function verify_bootfs { # $POOL
59 59 POOL=$1
60 - log_must $ZFS create $POOL/$TESTFS
60 + log_must zfs create $POOL/$TESTFS
61 61
62 - log_must $ZPOOL set bootfs=$POOL/$TESTFS $POOL
63 - VAL=$($ZPOOL get bootfs $POOL | $TAIL -1 | $AWK '{print $3}' )
62 + log_must zpool set bootfs=$POOL/$TESTFS $POOL
63 + VAL=$(zpool get bootfs $POOL | tail -1 | awk '{print $3}' )
64 64 if [ $VAL != "$POOL/$TESTFS" ]
65 65 then
66 - log_must $ZPOOL status -v $POOL
66 + log_must zpool status -v $POOL
67 67 log_fail \
68 68 "set/get failed on $POOL - expected $VAL == $POOL/$TESTFS"
69 69 fi
70 - log_must $ZPOOL destroy $POOL
70 + log_must zpool destroy $POOL
71 71 }
72 72
73 73 function verify_no_bootfs { # $POOL
74 74 POOL=$1
75 - log_must $ZFS create $POOL/$TESTFS
76 - log_mustnot $ZPOOL set bootfs=$POOL/$TESTFS $POOL
77 - VAL=$($ZPOOL get bootfs $POOL | $TAIL -1 | $AWK '{print $3}' )
75 + log_must zfs create $POOL/$TESTFS
76 + log_mustnot zpool set bootfs=$POOL/$TESTFS $POOL
77 + VAL=$(zpool get bootfs $POOL | tail -1 | awk '{print $3}' )
78 78 if [ $VAL == "$POOL/$TESTFS" ]
79 79 then
80 - log_must $ZPOOL status -v $POOL
80 + log_must zpool status -v $POOL
81 81 log_fail "set/get unexpectedly failed $VAL != $POOL/$TESTFS"
82 82 fi
83 - log_must $ZPOOL destroy $POOL
83 + log_must zpool destroy $POOL
84 84 }
85 85
86 86 function cleanup {
87 87 if poolexists $TESTPOOL
88 88 then
89 - log_must $ZPOOL destroy $TESTPOOL
89 + log_must zpool destroy $TESTPOOL
90 90 fi
91 - log_must $RM $VDEV1 $VDEV2 $VDEV3 $VDEV4
91 + log_must rm $VDEV1 $VDEV2 $VDEV3 $VDEV4
92 92 }
93 93
94 94 log_assert "Pools of correct vdev types accept boot property"
95 95
96 96
97 97
98 98 log_onexit cleanup
99 -log_must $MKFILE $MINVDEVSIZE $VDEV1 $VDEV2 $VDEV3 $VDEV4
99 +log_must mkfile $MINVDEVSIZE $VDEV1 $VDEV2 $VDEV3 $VDEV4
100 100
101 101
102 102 ## the following configurations are supported bootable pools
103 103
104 104 # normal
105 -log_must $ZPOOL create $TESTPOOL $VDEV1
105 +log_must zpool create $TESTPOOL $VDEV1
106 106 verify_bootfs $TESTPOOL
107 107
108 108 # normal + hotspare
109 -log_must $ZPOOL create $TESTPOOL $VDEV1 spare $VDEV2
109 +log_must zpool create $TESTPOOL $VDEV1 spare $VDEV2
110 110 verify_bootfs $TESTPOOL
111 111
112 112 # mirror
113 -log_must $ZPOOL create $TESTPOOL mirror $VDEV1 $VDEV2
113 +log_must zpool create $TESTPOOL mirror $VDEV1 $VDEV2
114 114 verify_bootfs $TESTPOOL
115 115
116 116 # mirror + hotspare
117 -log_must $ZPOOL create $TESTPOOL mirror $VDEV1 $VDEV2 spare $VDEV3
117 +log_must zpool create $TESTPOOL mirror $VDEV1 $VDEV2 spare $VDEV3
118 118 verify_bootfs $TESTPOOL
119 119
120 120 ## the following configurations are not supported as bootable pools
121 121
122 122 # stripe
123 -log_must $ZPOOL create $TESTPOOL $VDEV1 $VDEV2
123 +log_must zpool create $TESTPOOL $VDEV1 $VDEV2
124 124 verify_no_bootfs $TESTPOOL
125 125
126 126 # stripe + hotspare
127 -log_must $ZPOOL create $TESTPOOL $VDEV1 $VDEV2 spare $VDEV3
127 +log_must zpool create $TESTPOOL $VDEV1 $VDEV2 spare $VDEV3
128 128 verify_no_bootfs $TESTPOOL
129 129
130 130 # raidz
131 -log_must $ZPOOL create $TESTPOOL raidz $VDEV1 $VDEV2
131 +log_must zpool create $TESTPOOL raidz $VDEV1 $VDEV2
132 132 verify_no_bootfs $TESTPOOL
133 133
134 134 # raidz + hotspare
135 -log_must $ZPOOL create $TESTPOOL raidz $VDEV1 $VDEV2 spare $VDEV3
135 +log_must zpool create $TESTPOOL raidz $VDEV1 $VDEV2 spare $VDEV3
136 136 verify_no_bootfs $TESTPOOL
137 137
138 138 # raidz2
139 -log_must $ZPOOL create $TESTPOOL raidz2 $VDEV1 $VDEV2 $VDEV3
139 +log_must zpool create $TESTPOOL raidz2 $VDEV1 $VDEV2 $VDEV3
140 140 verify_no_bootfs $TESTPOOL
141 141
142 142 # raidz2 + hotspare
143 -log_must $ZPOOL create $TESTPOOL raidz2 $VDEV1 $VDEV2 $VDEV3 spare $VDEV4
143 +log_must zpool create $TESTPOOL raidz2 $VDEV1 $VDEV2 $VDEV3 spare $VDEV4
144 144 verify_no_bootfs $TESTPOOL
145 145
146 146 log_pass "Pools of correct vdev types accept boot property"
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX