xref: /freebsd/tests/sys/cddl/zfs/tests/interop/setup.ksh (revision d0b2dbfa)
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#
24# Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
25# Use is subject to license terms.
26#
27# ident	"@(#)setup.ksh	1.5	09/06/22 SMI"
28#
29
30. $STF_SUITE/include/libtest.kshlib
31
32verify_runnable "global"
33
34case $DISK_COUNT in
350)
36	log_untested "Need at least 1 disk device for test"
37	;;
381)
39	log_note "Partitioning a single disk ($SINGLE_DISK)"
40	;;
412)
42	log_note "Partitioning a disks ($SINGLE_DISK) and ($ZFS_DISK2)"
43	;;
443)
45	log_note "Partitioning disks ($META_DISK0 $META_DISK1 $ZFS_DISK2)"
46	;;
47esac
48
49wipe_partition_table $META_DISK0
50log_must set_partition ${META_SIDE0##*s} "" $FS_SIZE $META_DISK0
51if [[ $WRAPPER == *"smi"* && $META_DISK1 == $META_DISK0 ]]; then
52	typeset i=${META_SIDE0##*s}
53	typeset cyl=$(get_endslice $META_DISK0 $i)
54	log_must set_partition ${META_SIDE1##*s} "$cyl" $FS_SIZE $META_DISK1
55else
56	log_must set_partition ${META_SIDE1##*s} "" $FS_SIZE $META_DISK1
57fi
58if [[ $WRAPPER == *"smi"* && $ZFS_DISK2 == $META_DISK1 ]]; then
59	typeset i=${META_SIDE1##*s}
60	typeset cyl=$(get_endslice $META_DISK1 $i)
61	log_must set_partition ${ZFS_SIDE2##*s} "$cyl" $FS_SIZE $ZFS_DISK2
62else
63	log_must set_partition ${ZFS_SIDE2##*s} "" $FS_SIZE $ZFS_DISK2
64fi
65
66create_pool $TESTPOOL $ZFS_SIDE2
67
68$RM -rf $TESTDIR  || log_unresolved Could not remove $TESTDIR
69$MKDIR -p $TESTDIR || log_unresolved Could not create $TESTDIR
70
71log_must $ZFS create $TESTPOOL/$TESTFS
72log_must $ZFS set mountpoint=$TESTDIR $TESTPOOL/$TESTFS
73log_must $ZFS set compression=off $TESTPOOL/$TESTFS
74
75log_note "Configuring metadb with $META_SIDE1"
76log_must $METADB -a -f -c 3 $META_SIDE1
77
78log_note "Configure $META_DEVICE_ID with $META_SIDE0"
79log_must $METAINIT $META_DEVICE_ID 1 1 $META_SIDE0
80
81log_pass
82