1 /*
2  * CDDL HEADER START
3  *
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.
7  *
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.
12  *
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]
18  *
19  * CDDL HEADER END
20  */
21 
22 /*
23  * Copyright (c) 2004, 2010, Oracle and/or its affiliates. All rights reserved.
24  */
25 
26 
27 #include "svccfg.h"
28 #include "svccfg_grammar.h"
29 
30 struct help_message help_messages[] = {
31 	{ SCC_VALIDATE, "validate [file | fmri]\n\n"
32 "Validate a manifest file without changing the repository.\n"
33 "Validate an instance FMRI against the template specifications."
34 	},
35 	{ SCC_IMPORT, "import [-p outfile] [-V] paths...\n\n"
36 "Import manifests into the repository.  paths can be one or more\n"
37 "manifest files or directories.  If directories are specified, they\n"
38 "will be searched for files with a .xml extension.  If -p is specified,\n"
39 "a progress message will be written to outfile as each manifest is\n"
40 "imported.  With -V force strict adherence to the template specifications."
41 	},
42 	{ SCC_EXPORT, "export [-a] {service | pattern} [> file]\n\n"
43 "Print a manifest for service to file, or standard output if not specified."
44 	},
45 	{ SCC_ARCHIVE, "archive [-a] [> file]\n\n"
46 "Print an archive to file, or standard output if not specified."
47 	},
48 	{ SCC_RESTORE, "restore file\n\n"
49 "Restore the contents of a previously-generated archive."
50 	},
51 	{ SCC_APPLY, "apply file\n\nApply a profile." },
52 	{ SCC_EXTRACT, "extract [> file]\n\n"
53 "Print a profile to file, or standard output if not specified." },
54 	{ SCC_REPOSITORY, "repository file\n\nSet the repository to modify." },
55 	{ SCC_INVENTORY, "inventory file\n\n"
56 		"Print the services and instances contained in a manifest."
57 	},
58 	{ SCC_SET, "set [-vV]\n\n"
59 "Without arguments, display current options.  Otherwise set the given options."
60 	},
61 	{ SCC_END, "end\n\nStop processing and exit." },
62 	{ SCC_HELP, "help [command]\n\nDisplay help." },
63 	{ SCC_LIST, "list [glob_pattern]\n\n"
64 		"List children of the currently selected entity."
65 	},
66 	{ SCC_ADD, "add name\n\n"
67 		"Add a new child entity to the currently selected entity."
68 	},
69 	{ SCC_DELETE, "delete [-f] {name | fmri | pattern}\n\n"
70 "Delete the named child entity or the one indicated by fmri.  With -f, delete\n"
71 "running services.\n"
72 	},
73 	{ SCC_SELECT, "select {name | fmri | pattern}\n\n"
74 		"Select the named child entity or the one indicated by fmri."
75 	},
76 	{ SCC_UNSELECT, "unselect\n\n"
77 		"Select the parent of the currently selected entity."
78 	},
79 	{ SCC_LISTPG, "listpg [glob_pattern]\n\n"
80 		"List property groups of the currently selected entity."
81 	},
82 	{ SCC_ADDPG, "addpg name type [P]\n\n"
83 		"Add a new property group to the currently selected entity."
84 	},
85 	{ SCC_DELPG, "delpg name\n\n"
86 "Delete the named property group from the currently selected entity."
87 	},
88 	{ SCC_DELHASH, "delhash [-d] manifest\n\n"
89 "Delete the named manifest hash entry (from smf/manifest).\n"
90 "With -d, manifest file doesn't need to exist."
91 	},
92 	{ SCC_CLEANUP, "cleanup\n\n"
93 "Cleanup any service or instances that no longer have manifest files that\n"
94 "support the services or instances in /lib/svc/manifest or /var/svc/manifest."
95 	},
96 	{ SCC_LISTPROP, "listprop [glob_pattern]\n\n"
97 "List property groups and properties of the currently selected entity."
98 	},
99 	{ SCC_SETPROP,
100 		"\tsetprop pg/name = [type:] value\n"
101 		"\tsetprop pg/name = [type:] ([value...])\n\n"
102 "Set the pg/name property of the currently selected entity.  Values may be\n"
103 "enclosed in double-quotes.  Value lists may span multiple lines."
104 	},
105 	{ SCC_DELPROP, "delprop pg/name\n\n"
106 		"Delete the pg/name property of the currently selected entity."
107 	},
108 	{ SCC_EDITPROP, "editprop\n\n"
109 "Invoke $EDITOR to edit the properties of the currently selected entity."
110 	},
111 	{ SCC_DESCRIBE, "describe [-v] [-t] [propertygroup/property]\n\n"
112 "Describe the current properties.  With -v, describe verbosely.  With -t,\n"
113 "show only template data, not current properties."
114 	},
115 	{ SCC_ADDPROPVALUE, "addpropvalue pg/name [type:] value\n\n"
116 "Add the given value to the named property."
117 	},
118 	{ SCC_DELPROPVALUE, "delpropvalue pg/name glob_pattern\n\n"
119 "Delete all values matching the glob pattern fron the given property."
120 	},
121 	{ SCC_SETENV, "setenv [-s | -i | -m method] NAME value\n\n"
122 "Set an environment variable for the given service, instance, or method "
123 "context."
124 	},
125 	{ SCC_UNSETENV, "unsetenv [-s | -i | -m method] NAME value\n\n"
126 "Unset an environment variable for the given service, instance, or method "
127 "context."
128 	},
129 	{ SCC_LISTSNAP, "listsnap\n\n"
130 		"List snapshots of the currently selected instance."
131 	},
132 	{ SCC_SELECTSNAP, "selectsnap [snapshot]\n\n"
133 "Select a snapshot of the currently selected instance, or the Editing\n"
134 "snapshot by default."
135 	},
136 	{ SCC_REVERT, "revert [snapshot]\n\n"
137 "Change the properties of the currently selected instance and its ancestors\n"
138 "to those in a snapshot, or the currently selected snapshot by default."
139 	},
140 	{ SCC_REFRESH, "refresh\n\n"
141 "Commit the values from the current configuration to the running\n"
142 "snapshot, making them available for use by the currently selected\n"
143 "instance.  If the repository subcommand has not been used to select\n"
144 "a repository, inform the instance's restarter to re-read the updated\n"
145 "configuration."
146 	},
147 	{ SCC_DELNOTIFY, "delnotify <[-g] tset | class>\n\n"
148 "Delete the existing notification parameters for the specified class or\n"
149 "transition set. If the -g option is used, the notification parameters in\n"
150 "svc:/system/svc/global:default are deleted.\n"
151 	},
152 	{ SCC_LISTNOTIFY, "listnotify <[-g] tset | class>\n\n"
153 "Display the existing notification parameters for the specified class or\n"
154 "transition set. If the -g option is used, the notification parameters in\n"
155 "svc:/system/svc/global:default are displayed.\n"
156 	},
157 	{ SCC_SETNOTIFY,
158 "setnotify {[-g] tset | class} <notification parameters> ...\n\n"
159 "Set notification parameters for the specified class or transition set.\n"
160 "If the -g option is used, the notification parameters are set in\n"
161 "svc:/system/svc/global:default.\n"
162 "This command overwrites existing notification parameters."
163 	},
164 	{ 0, NULL }
165 };
166