4 # The contents of this file are subject to the terms of the
5 # Common Development and Distribution License (the "License").
6 # You may not use this file except in compliance with the License.
8 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9 # or http://www.opensolaris.org/os/licensing.
10 # See the License for the specific language governing permissions
11 # and limitations under the License.
13 # When distributing Covered Code, include this CDDL HEADER in each
14 # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 # If applicable, add the following below this CDDL HEADER, with the
16 # fields enclosed by brackets "[]" replaced with your own identifying
17 # information: Portions Copyright [yyyy] [name of copyright owner]
23 # Copyright 2007 Sun Microsystems, Inc. All rights reserved.
24 # Use is subject to license terms.
27 # For every configX.cfg file there must be a corresponding stateX.cfg
28 # file. The state file both drives the operations to be performed on the
29 # dataset hierarchy which has been specified by the corresponding
30 # configX.cfg file, and also specifies the expected state of the
31 # properties after the operation has been completed.
33 # The format of the file is:
34 # <target dataset>:<command>
35 # <property source before command> <property src after command>
36 # <property source before command> <property src after command>
40 # <target dataset> - dataset upon which the <command> is to be executed. Can
41 # be any of the datasets specified in the corresponding
42 # configX.cfg file. If no command is to be executed
43 # then must be set to '-'
46 # <command> - command to be executed upon the specified dataset.
47 # Currently the only supported commands are 'inherit'
48 # or 'inherit -r'. If no command is to be executed,
49 # then must be set to '-'.
51 # <property src before command>
52 # - the 'source' (as reported in 'zfs get') for the
53 # the properties before <command> is executed. This
54 # can be 'default', 'local' or the name of a dataset
55 # from which the property is inherited. (The code
56 # automatically adds in the 'inherited from..' part
57 # of the string when doing the check.
59 # This field is for informational purposes only, to
60 # aid the user in seeing how the changes trickle down
63 # <property src after command>
64 # - the expected value of the 'source' field after the
65 # <command> has been executed on the <target dataset>.
66 # As above can be 'default', 'local', or the dataset
67 # from which the property is inherited.
69 # Two important things to note:
70 # 1) there must be a <property src..> line corresponding to each dataset
71 # line specified in the configX.cfg file.
74 # 2) There can be as many <command>/<property src> blocks as desired, but
75 # there must be at least one, and the effect of each block is cumulative
76 # (i.e. the properties are not reset back to their default values between
77 # each block. If that is desired then each block must be placed in its
78 # own state file with its own corresponding configX.cfg file).
81 # Below are two sample <command>/<property src> blocks.
83 # The first simply verifies that the properties on the top level dataset
84 # were set locally, and that the middle and bottom datasets properties
85 # were inherited from the top level pool (called TESTPOOL). Note the '-:-'
86 # which means that no command is to be executed, but simply that the
87 # properties settings are to be verified.
91 # Copyright (c) 2013 by Delphix. All rights reserved.
101 # The block below describes the expected state of the properties after
102 # an 'inherit -r' command has been run on the top level pool (called