The plugin.xml File

A plug-in is defined with the plugin.xml file. The structure of this file consists of aheader element and one or morestep-type elements. Theheader identifies the plug-in. Eachstep-type element defines a step; steps are available to users in the Serana Release Automation process editor and used to construct component processes.

After the document type declaration, theplugin root element identifies the XML schema type, PluginXMLSchema_v1.xsd, which is used by all plug-ins. The following presents the basic structure of plugin.xml:

<?xml version="1.0" encoding="UTF-8"?>
<plugin xmlns="http://www.serena.com/PluginXMLSchema_v1" 
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <header>
    <identifier id="plugin_id" version="version_number" name="Plug-in Name"/>
		        <description/>
		        <tag>Plugin_type/Plugin_subtype/Plugin_name</tag>
		      </header>
		      <step-type name="Step_Name">
		        <description/>
		        <properties>
		          <property name="property_name" required="true">
		             <property-ui type="textBox" label="Driver Jar" 
		                 description="The full path to the jdbc driver jar to use." 
             default-value="${p:resource/sqlJdbc/jdbcJar}"/>
		          </property>
		        </properties>
		        <post-processing>
		          <![CDATA[
		            if (properties.get("exitCode") != 0) {
		                properties.put("Status", "Failure");
		            }
		            else {
		                properties.put("Status", "Success");
		            }
		         ]]>
		        </post-processing>
		        <command program="${path_to_tool">
		          <arg value="parameters_passed_to_tool"/>
		          <arg path="${p:jdbcJar}"/>
		          <arg file="command_to_run"/>
		          <arg file="${PLUGIN_INPUT_PROPS}"/>
		          <arg file="${PLUGIN_OUTPUT_PROPS}"/>
		        </command>
		      </step-type>
		    </plugin>