The plugin-descriptor.xml defines the sample plug-in. Refer to the following items in the example below:
Most attributes to the <plugin> element use standard values. The three exceptions are the name,version, and description attributes.
The <dependencyList> element tells you that the system plug-in, version 1.0 is required for the sample plug-in to work correctly. The system plug-in is a core part of the Sun N1 Service Provisioning System software and should always exist.
The <folder> element creates a folder in which Solaris objects can be stored.
The <hostType> element declares the global_zone host type to be referenced by the plug-in. A set of variables are associated with this host type in the varlist attribute.
The <hostSearch> element defines a set of criteria for identifying target hosts to which this plug-in can provision.
The <hostSet> element defines the subset of target hosts to which this plug-in can provision.
The first <component> element defines a component with the resource solaris/container_util.xml.
The second <component> element includes the Container component in the plug-in.
The third <component> element creates a new component type, Patch. This component type has the following characteristics.
The Patch component type will be displayed in the solaris group.
If you want to prevent a component type from appearing in the drop down menu of component types on the Component Create page, change the group value to hidden.
The backing component for the Patch component type is 1.1/components/com/sun/solaris/Patch.xml.
The <plan> element identifies the plan Container-create.xml as a part of the plug-in.
<?xml version="1.0" encoding="UTF-8"?>
<plugin name="com.sun.solaris"
description="Solaris plugin @buildtag@"
version="1.1"
vendor="Sun Microsystems Inc"
xmlns="http://www.sun.com/schema/SPS"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.sun.com/schema/SPS plugin.xsd"
schemaVersion="5.2">
<readme jarPath="readme.txt"/>
<serverPluginJAR jarPath="1.1/resources/com/sun/solaris/plugin-com.sun.solaris.jar"/>
<gui jarPath="gui/pluginUI.xml"/>
<dependencyList>
<pluginRef name="system" version="1.0"/>
</dependencyList>
<memberList>
<folder name="/com/sun/solaris" description="Solaris plugin folder"/>
<hostType name="global_zone"
description="a physical host from which partitioned
local zones can be created">
<varList>
<var name="local_zone_base_path" default="/export/zones"/>
<var name="local_zone_default_name" default=""/>
<var name="local_zone_default_filesystem" default="SPARSE"/>
<var name="local_zone_connection_type" default="RAW"/>
<var name="local_zone_port" default="1131"/>
<var name="local_zone_advanced_params" default=""/>
<var name="n1sps_cli_host" default="masterserver"/>
<var name="n1sps_cli_path"
default="/opt/SUNWn1sps/N1_Service_Provisioning_System_*/cli/bin/cr_cli"/>
</varList>
</hostType>
<hostSearch name="global_zones"
description="matches Solaris global zone hosts">
<criteriaList>
<criteria name="sys.OS" pattern="SunOS"/>
<criteria name="sys.OSVersion" pattern="5.10"/>
<criteria name="sys.hostType"
pattern="com.sun.solaris#global_zone"/>
</criteriaList>
<appTypeCriteria ra="true"/>
<physicalCriteria physical="true"/>
</hostSearch>
<hostSet name="global_zones" description="Solaris global zones">
<hostSearchRef name="global_zones"/>
</hostSet>
...
<component jarPath="1.1/components/com/sun/solaris/container_util.xml"
majorVersion="true">
<resource jarPath="1.1/resources/com/sun/solaris/container_util/"
name="/com/sun/solaris/container_util" type="DIRECTORY"
majorVersion="true"/>
</component>
<component jarPath="1.1/components/com/sun/solaris/Container.xml"
majorVersion="true"/>
<component jarPath="1.1/components/com/sun/solaris/Patch.xml"
majorVersion="true">
<componentType name="Patch" group="solaris" order="000000-000000-000001"
indentLevel="1" />
</component>
...
<plan jarPath="1.1/plans/com/sun/solaris/Container-create.xml"
majorVersion="true"/>
...
</memberList>
</plugin>