xref: /freebsd/tests/sys/cddl/zfs/tests/interop/setup.ksh (revision 0957b409)
1#!/usr/local/bin/ksh93 -p
2#
3# CDDL HEADER START
4#
5# The contents of this file are subject to the terms of the
6# Common Development and Distribution License (the "License").
7# You may not use this file except in compliance with the License.
8#
9# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
10# or http://www.opensolaris.org/os/licensing.
11# See the License for the specific language governing permissions
12# and limitations under the License.
13#
14# When distributing Covered Code, include this CDDL HEADER in each
15# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
16# If applicable, add the following below this CDDL HEADER, with the
17# fields enclosed by brackets "[]" replaced with your own identifying
18# information: Portions Copyright [yyyy] [name of copyright owner]
19#
20# CDDL HEADER END
21#
22
23# $FreeBSD$
24
25#
26# Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
27# Use is subject to license terms.
28#
29# ident	"@(#)setup.ksh	1.5	09/06/22 SMI"
30#
31
32. $STF_SUITE/include/libtest.kshlib
33
34verify_runnable "global"
35
36case $DISK_COUNT in
370)
38	log_untested "Need at least 1 disk device for test"
39	;;
401)
41	log_note "Partitioning a single disk ($SINGLE_DISK)"
42	;;
432)
44	log_note "Partitioning a disks ($SINGLE_DISK) and ($ZFS_DISK2)"
45	;;
463)
47	log_note "Partitioning disks ($META_DISK0 $META_DISK1 $ZFS_DISK2)"
48	;;
49esac
50
51wipe_partition_table $META_DISK0
52log_must set_partition ${META_SIDE0##*s} "" $FS_SIZE $META_DISK0
53if [[ $WRAPPER == *"smi"* && $META_DISK1 == $META_DISK0 ]]; then
54	typeset i=${META_SIDE0##*s}
55	typeset cyl=$(get_endslice $META_DISK0 $i)
56	log_must set_partition ${META_SIDE1##*s} "$cyl" $FS_SIZE $META_DISK1
57else
58	log_must set_partition ${META_SIDE1##*s} "" $FS_SIZE $META_DISK1
59fi
60if [[ $WRAPPER == *"smi"* && $ZFS_DISK2 == $META_DISK1 ]]; then
61	typeset i=${META_SIDE1##*s}
62	typeset cyl=$(get_endslice $META_DISK1 $i)
63	log_must set_partition ${ZFS_SIDE2##*s} "$cyl" $FS_SIZE $ZFS_DISK2
64else
65	log_must set_partition ${ZFS_SIDE2##*s} "" $FS_SIZE $ZFS_DISK2
66fi
67
68create_pool $TESTPOOL $ZFS_SIDE2
69
70$RM -rf $TESTDIR  || log_unresolved Could not remove $TESTDIR
71$MKDIR -p $TESTDIR || log_unresolved Could not create $TESTDIR
72
73log_must $ZFS create $TESTPOOL/$TESTFS
74log_must $ZFS set mountpoint=$TESTDIR $TESTPOOL/$TESTFS
75log_must $ZFS set compression=off $TESTPOOL/$TESTFS
76
77log_note "Configuring metadb with $META_SIDE1"
78log_must $METADB -a -f -c 3 $META_SIDE1
79
80log_note "Configure $META_DEVICE_ID with $META_SIDE0"
81log_must $METAINIT $META_DEVICE_ID 1 1 $META_SIDE0
82
83log_pass
84