1185029Spjd#!/bin/sh 2185029Spjd# $FreeBSD: releng/10.2/tools/regression/zfs/zpool/add/spare.t 185029 2008-11-17 20:49:29Z pjd $ 3185029Spjd 4185029Spjddir=`dirname $0` 5185029Spjd. ${dir}/../../misc.sh 6185029Spjd 7185029Spjdecho "1..31" 8185029Spjd 9185029Spjddisks_create 6 10185029Spjdnames_create 1 11185029Spjd 12185029Spjdexpect_ok ${ZPOOL} create ${name0} ${disk0} 13185029Spjdexpect_ok ${ZPOOL} add ${name0} spare ${disk1} 14185029Spjdexp=`( 15185029Spjd echo " pool: ${name0}" 16185029Spjd echo " state: ONLINE" 17185029Spjd echo " scrub: none requested" 18185029Spjd echo "config:" 19185029Spjd echo " NAME STATE READ WRITE CKSUM" 20185029Spjd echo " ${name0} ONLINE 0 0 0" 21185029Spjd echo " ${disk0} ONLINE 0 0 0" 22185029Spjd echo " spares" 23185029Spjd echo " ${disk1} AVAIL" 24185029Spjd echo "errors: No known data errors" 25185029Spjd)` 26185029Spjdexpect "${exp}" ${ZPOOL} status ${name0} 27185029Spjdexpect_ok ${ZPOOL} destroy ${name0} 28185029Spjdexpect_fl ${ZPOOL} status -x ${name0} 29185029Spjd 30185029Spjdexpect_ok ${ZPOOL} create ${name0} mirror ${disk0} ${disk1} 31185029Spjdexpect_ok ${ZPOOL} add ${name0} spare ${disk2} ${disk3} 32185029Spjdexp=`( 33185029Spjd echo " pool: ${name0}" 34185029Spjd echo " state: ONLINE" 35185029Spjd echo " scrub: none requested" 36185029Spjd echo "config:" 37185029Spjd echo " NAME STATE READ WRITE CKSUM" 38185029Spjd echo " ${name0} ONLINE 0 0 0" 39185029Spjd echo " mirror ONLINE 0 0 0" 40185029Spjd echo " ${disk0} ONLINE 0 0 0" 41185029Spjd echo " ${disk1} ONLINE 0 0 0" 42185029Spjd echo " spares" 43185029Spjd echo " ${disk2} AVAIL" 44185029Spjd echo " ${disk3} AVAIL" 45185029Spjd echo "errors: No known data errors" 46185029Spjd)` 47185029Spjdexpect "${exp}" ${ZPOOL} status ${name0} 48185029Spjdexpect_ok ${ZPOOL} destroy ${name0} 49185029Spjdexpect_fl ${ZPOOL} status -x ${name0} 50185029Spjd 51185029Spjdexpect_ok ${ZPOOL} create ${name0} raidz ${disk0} ${disk1} ${disk2} 52185029Spjdexpect_ok ${ZPOOL} add ${name0} spare ${disk3} ${disk4} 53185029Spjdexp=`( 54185029Spjd echo " pool: ${name0}" 55185029Spjd echo " state: ONLINE" 56185029Spjd echo " scrub: none requested" 57185029Spjd echo "config:" 58185029Spjd echo " NAME STATE READ WRITE CKSUM" 59185029Spjd echo " ${name0} ONLINE 0 0 0" 60185029Spjd echo " raidz1 ONLINE 0 0 0" 61185029Spjd echo " ${disk0} ONLINE 0 0 0" 62185029Spjd echo " ${disk1} ONLINE 0 0 0" 63185029Spjd echo " ${disk2} ONLINE 0 0 0" 64185029Spjd echo " spares" 65185029Spjd echo " ${disk3} AVAIL" 66185029Spjd echo " ${disk4} AVAIL" 67185029Spjd echo "errors: No known data errors" 68185029Spjd)` 69185029Spjdexpect "${exp}" ${ZPOOL} status ${name0} 70185029Spjdexpect_ok ${ZPOOL} destroy ${name0} 71185029Spjdexpect_fl ${ZPOOL} status -x ${name0} 72185029Spjd 73185029Spjdexpect_ok ${ZPOOL} create ${name0} raidz2 ${disk0} ${disk1} ${disk2} ${disk3} 74185029Spjdexpect_ok ${ZPOOL} add ${name0} spare ${disk4} ${disk5} 75185029Spjdexp=`( 76185029Spjd echo " pool: ${name0}" 77185029Spjd echo " state: ONLINE" 78185029Spjd echo " scrub: none requested" 79185029Spjd echo "config:" 80185029Spjd echo " NAME STATE READ WRITE CKSUM" 81185029Spjd echo " ${name0} ONLINE 0 0 0" 82185029Spjd echo " raidz2 ONLINE 0 0 0" 83185029Spjd echo " ${disk0} ONLINE 0 0 0" 84185029Spjd echo " ${disk1} ONLINE 0 0 0" 85185029Spjd echo " ${disk2} ONLINE 0 0 0" 86185029Spjd echo " ${disk3} ONLINE 0 0 0" 87185029Spjd echo " spares" 88185029Spjd echo " ${disk4} AVAIL" 89185029Spjd echo " ${disk5} AVAIL" 90185029Spjd echo "errors: No known data errors" 91185029Spjd)` 92185029Spjdexpect "${exp}" ${ZPOOL} status ${name0} 93185029Spjdexpect_ok ${ZPOOL} destroy ${name0} 94185029Spjdexpect_fl ${ZPOOL} status -x ${name0} 95185029Spjd 96185029Spjdexpect_ok ${ZPOOL} create ${name0} ${disk0} spare ${disk1} 97185029Spjdexpect_ok ${ZPOOL} add ${name0} spare ${disk2} ${disk3} 98185029Spjdexp=`( 99185029Spjd echo " pool: ${name0}" 100185029Spjd echo " state: ONLINE" 101185029Spjd echo " scrub: none requested" 102185029Spjd echo "config:" 103185029Spjd echo " NAME STATE READ WRITE CKSUM" 104185029Spjd echo " ${name0} ONLINE 0 0 0" 105185029Spjd echo " ${disk0} ONLINE 0 0 0" 106185029Spjd echo " spares" 107185029Spjd echo " ${disk1} AVAIL" 108185029Spjd echo " ${disk2} AVAIL" 109185029Spjd echo " ${disk3} AVAIL" 110185029Spjd echo "errors: No known data errors" 111185029Spjd)` 112185029Spjdexpect "${exp}" ${ZPOOL} status ${name0} 113185029Spjdexpect_ok ${ZPOOL} destroy ${name0} 114185029Spjdexpect_fl ${ZPOOL} status -x ${name0} 115185029Spjd 116185029Spjdexpect_ok ${ZPOOL} create ${name0} ${disk0} 117185029Spjdexpect_ok ${ZPOOL} add ${name0} spare ${disk1} ${disk2} 118185029Spjdexpect_ok ${ZPOOL} add ${name0} spare ${disk3} 119185029Spjdexp=`( 120185029Spjd echo " pool: ${name0}" 121185029Spjd echo " state: ONLINE" 122185029Spjd echo " scrub: none requested" 123185029Spjd echo "config:" 124185029Spjd echo " NAME STATE READ WRITE CKSUM" 125185029Spjd echo " ${name0} ONLINE 0 0 0" 126185029Spjd echo " ${disk0} ONLINE 0 0 0" 127185029Spjd echo " spares" 128185029Spjd echo " ${disk1} AVAIL" 129185029Spjd echo " ${disk2} AVAIL" 130185029Spjd echo " ${disk3} AVAIL" 131185029Spjd echo "errors: No known data errors" 132185029Spjd)` 133185029Spjdexpect "${exp}" ${ZPOOL} status ${name0} 134185029Spjdexpect_ok ${ZPOOL} destroy ${name0} 135185029Spjdexpect_fl ${ZPOOL} status -x ${name0} 136185029Spjd 137185029Spjddisks_destroy 138