You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@maven.apache.org by di...@apache.org on 2003/04/23 17:53:09 UTC

cvs commit: maven/src/plugins-build/was40 project.properties project.xml plugin.jelly .cvsignore plugin.properties

dion        2003/04/23 08:53:09

  Added:       src/plugins-build/was40/xdocs navigation.xml goals.xml
                        properties.xml
               src/plugins-build/was40 project.properties project.xml
                        plugin.jelly .cvsignore plugin.properties
  Log:
  Add WebSphere 4 plugin
  
  Revision  Changes    Path
  1.1                  maven/src/plugins-build/was40/xdocs/navigation.xml
  
  Index: navigation.xml
  ===================================================================
  <?xml version="1.0" encoding="UTF-8"?>
  
  <project name="Maven WebSphere 4.0 Plug-in">
    <title>Maven WebSphere 4.0 Plug-in</title>
    <body>
      <links>
        <item href="http://maven.apache.org/" name="Maven">
        </item>
      </links>
      <menu name="Overview">
        <item href="/goals.html" name="Goals">
        </item>
        <item href="/properties.html" name="Properties">
        </item>
      </menu>
    </body>
  </project>
  
  
  1.1                  maven/src/plugins-build/was40/xdocs/goals.xml
  
  Index: goals.xml
  ===================================================================
  <?xml version="1.0" encoding="UTF-8"?>
  
  <document>
    <properties>
      <title>Maven WebSphere 4.0 Plug-in Goals</title>
      <author email="dion@apache.org">dIon Gillard</author>
    </properties>
    <body>
      <goals>
        <goal>
          <name>was40</name>
          <description>FIXME: Default for was40 plugin</description>
        </goal>
        <goal>
          <name>was40:app-start</name>
          <description>Start enterprise application</description>
        </goal>
        <goal>
          <name>was40:app-stop</name>
          <description>Stop an enterprise application</description>
        </goal>
        <goal>
          <name>was40:deploy-ear</name>
          <description>Deploy an enterprise application</description>
        </goal>
        <goal>
          <name>was40:deploy-to-cluster</name>
          <description>Start a websphere application server</description>
        </goal>
        <goal>
          <name>was40:deploy-to-servergroup</name>
          <description>Deploy an application to a server group</description>
        </goal>
        <goal>
          <name>was40:list-node</name>
          <description>Obtain the list of nodes on the WebSphere Application Server</description>
        </goal>
        <goal>
          <name>was40:servergroup-removeclone</name>
          <description>Start a websphere application server</description>
        </goal>
        <goal>
          <name>was40:start</name>
          <description>Starts was40 Application Server</description>
        </goal>
        <goal>
          <name>was40:start-appserver</name>
          <description>Start a websphere application server</description>
        </goal>
        <goal>
          <name>was40:start-servergroup</name>
          <description>Start a websphere server gropu</description>
        </goal>
        <goal>
          <name>was40:stop</name>
          <description>Stops a websphere node</description>
        </goal>
        <goal>
          <name>was40:stop-appserver</name>
          <description>Stop a websphere application server</description>
        </goal>
        <goal>
          <name>was40:stop-servergroup</name>
          <description>Stop a websphere server group</description>
        </goal>
        <goal>
          <name>was40:undeploy-ear</name>
          <description>Remove an enterprise application</description>
        </goal>
      </goals>
    </body>
  </document>
  
  
  1.1                  maven/src/plugins-build/was40/xdocs/properties.xml
  
  Index: properties.xml
  ===================================================================
  <?xml version="1.0" encoding="UTF-8"?>
  
  <document>
    <properties>
      <title>Maven WebSphere 4.0 Plug-in Properties</title>
      <author email="kristen@multitask.com.au">Kristen Gillard</author>
    </properties>
    <body>
      <section name="Maven WebSphere 4.0 Plug-in Settings">
        <table>
          <tr>
            <th>Property</th>
            <th>Optional?</th>
            <th>Description</th>
          </tr>
          <tr>
            <td>maven.was40.node</td>
            <td>Yes</td>
            <td>
              <p>Default value is
                <code>
                </code>.</p>
            </td>
          </tr>
          <tr>
            <td>maven.was40.wscpExe</td>
            <td>Yes</td>
            <td>
              <p>Default value is
                <code>${maven.was40.bin}/wscp</code>.</p>
            </td>
          </tr>
          <tr>
            <td>maven.was40.appserver</td>
            <td>Yes</td>
            <td>
              <p>Default value is
                <code>Default Server</code>.</p>
            </td>
          </tr>
          <tr>
            <td>maven.was40.stopNode</td>
            <td>Yes</td>
            <td>
              <p>Default value is
                <code>${maven.was40.cmd.node} stop</code>.</p>
            </td>
          </tr>
          <tr>
            <td>maven.was40.cmd.serverGroup</td>
            <td>Yes</td>
            <td>
              <p>Default value is
                <code>ServerGroup</code>.</p>
            </td>
          </tr>
          <tr>
            <td>maven.was40.home</td>
            <td>Yes</td>
            <td>
              <p>Default value is
                <code>C:/WebSphere/AppServer</code>.</p>
            </td>
          </tr>
          <tr>
            <td>maven.was40.bin</td>
            <td>Yes</td>
            <td>
              <p>Default value is
                <code>${maven.was40.home}/bin</code>.</p>
            </td>
          </tr>
          <tr>
            <td>maven.was40.servergroup.listClones</td>
            <td>Yes</td>
            <td>
              <p>Default value is
                <code>${maven.was40.cmd.serverGroup} listClones /${maven.was40.cmd.serverGroup}/</code>.</p>
            </td>
          </tr>
          <tr>
            <td>maven.was40.cmd.node</td>
            <td>Yes</td>
            <td>
              <p>Default value is
                <code>Node</code>.</p>
            </td>
          </tr>
          <tr>
            <td>maven.was40.appserver.stop</td>
            <td>Yes</td>
            <td>
              <p>Default value is
                <code>${maven.was40.cmd.appserver} stop /${maven.was40.cmd.appserver}:${maven.was40.appserver}/</code>.</p>
            </td>
          </tr>
          <tr>
            <td>maven.was40.cmd.enterprise</td>
            <td>Yes</td>
            <td>
              <p>Default value is
                <code>EnterpriseApp</code>.</p>
            </td>
          </tr>
          <tr>
            <td>maven.was40.servergroup.remove</td>
            <td>Yes</td>
            <td>
              <p>Default value is
                <code>${maven.was40.cmd.serverGroup} remove /${maven.was40.cmd.serverGroup}:${maven.was40.serverGroup.name}/</code>.</p>
            </td>
          </tr>
          <tr>
            <td>maven.was40.servergroup.install</td>
            <td>Yes</td>
            <td>
              <p>Default value is
                <code>${maven.was40.cmd.enterprise} install /${maven.was40.cmd.node}:${maven.was40.node}/ ${maven.was40.enterprise.app}.ear -appname ${maven.was40.enterprise.app} -defappservers /${maven.was40.cmd.serverGroup}:${maven.was40.serverGroup.name}/</code>.</p>
            </td>
          </tr>
          <tr>
            <td>maven.was40.servergroup.start</td>
            <td>Yes</td>
            <td>
              <p>Default value is
                <code>${maven.was40.cmd.serverGroup} start /${maven.was40.cmd.serverGroup}:${maven.was40.serverGroup.name}/</code>.</p>
            </td>
          </tr>
          <tr>
            <td>maven.was40.appserver.start</td>
            <td>Yes</td>
            <td>
              <p>Default value is
                <code>${maven.was40.cmd.appserver} start /${maven.was40.cmd.appserver}:${maven.was40.appserver}/</code>.</p>
            </td>
          </tr>
          <tr>
            <td>maven.was40.serverGroup.name</td>
            <td>Yes</td>
            <td>
              <p>Default value is
                <code>
                </code>.</p>
            </td>
          </tr>
          <tr>
            <td>maven.was40.startNode</td>
            <td>Yes</td>
            <td>
              <p>Default value is
                <code>${maven.was40.bin}/startupServer</code>.</p>
            </td>
          </tr>
          <tr>
            <td>maven.was40.cmd.appserver</td>
            <td>Yes</td>
            <td>
              <p>Default value is
                <code>ApplicationServer</code>.</p>
            </td>
          </tr>
          <tr>
            <td>maven.was40.wscpArgs</td>
            <td>Yes</td>
            <td>
              <p>Default value is
                <code>-c</code>.</p>
            </td>
          </tr>
          <tr>
            <td>maven.was40.startApp</td>
            <td>Yes</td>
            <td>
              <p>Default value is
                <code>${maven.was40.cmd.enterprise} start /${maven.was40.cmd.enterprise}:${maven.was40.enterprise.app}/</code>.</p>
            </td>
          </tr>
          <tr>
            <td>maven.was40.stopApp</td>
            <td>Yes</td>
            <td>
              <p>Default value is
                <code>${maven.was40.cmd.enterprise} stop /${maven.was40.cmd.enterprise}:${maven.was40.enterprise.app}/ -force</code>.</p>
            </td>
          </tr>
          <tr>
            <td>maven.was40.servergroup.stop</td>
            <td>Yes</td>
            <td>
              <p>Default value is
                <code>${maven.was40.cmd.serverGroup} stop /${maven.was40.cmd.serverGroup}:${${maven.was40.cmd.appserver} start /${maven.was40.cmd.node}:${maven.was40.node}/${maven.was40.cmd.appserver}:${maven.was40.serverGroup.name}/</code>.</p>
            </td>
          </tr>
          <tr>
            <td>maven.was40.deployApp</td>
            <td>Yes</td>
            <td>
              <p>Default value is
                <code>${maven.was40.cmd.enterprise} install /${maven.was40.cmd.node}:${maven.was40.node}/ ${maven.was40.enterprise.app}.ear -appname ${maven.was40.enterprise.app} -defappserver /${maven.was40.cmd.node}:${maven.was40.node}/${maven.was40.cmd.appserver}:${maven.was40.appserver}/</code>.</p>
            </td>
          </tr>
          <tr>
            <td>maven.was40.listNode</td>
            <td>Yes</td>
            <td>
              <p>Default value is
                <code>${maven.was40.cmd.node} list</code>.</p>
            </td>
          </tr>
          <tr>
            <td>maven.was40.enterprise.app</td>
            <td>Yes</td>
            <td>
              <p>Default value is
                <code>EARFILE</code>.</p>
            </td>
          </tr>
          <tr>
            <td>maven.was40.servergroup.list</td>
            <td>Yes</td>
            <td>
              <p>Default value is
                <code>${maven.was40.cmd.serverGroup} list</code>.</p>
            </td>
          </tr>
          <tr>
            <td>maven.was40.servergroup.show</td>
            <td>Yes</td>
            <td>
              <p>Default value is
                <code>${maven.was40.cmd.serverGroup} show /${maven.was40.cmd.serverGroup}:${maven.was40.serverGroup.name}/</code>.</p>
            </td>
          </tr>
          <tr>
            <td>maven.was40.removeApp</td>
            <td>Yes</td>
            <td>
              <p>Default value is
                <code>${maven.was40.cmd.enterprise} remove /${maven.was40.cmd.enterprise}:${maven.was40.enterprise.app}/ -recursive</code>.</p>
            </td>
          </tr>
        </table>
      </section>
    </body>
  </document>
  
  
  1.1                  maven/src/plugins-build/was40/project.properties
  
  Index: project.properties
  ===================================================================
  maven.xdoc.date=left
  maven.xdoc.version=${pom.currentVersion}
  maven.license.licenseFile=${basedir}/../../../LICENSE.txt
  
  
  
  
  1.1                  maven/src/plugins-build/was40/project.xml
  
  Index: project.xml
  ===================================================================
  <?xml version="1.0" encoding="UTF-8"?>
  
  <project>
    <extend>${basedir}/../project.xml</extend>
    <pomVersion>3</pomVersion>
    <id>maven-was40-plugin</id>
    <name>Maven WebSphere 4.0 Plug-in</name>
    <currentVersion>1.0-SNAPSHOT</currentVersion>
    <description/>
    <shortDescription>Java Project Management Tools</shortDescription>
    <url>http://maven.apache.org/reference/plugins/was40/</url>
    <siteDirectory>/www/maven.apache.org/reference/plugins/was40/</siteDirectory>
    <repository>
      <connection>scm:cvs:pserver:anoncvs@cvs.apache.org:/home/cvspublic:maven/src/plugins-build/was40/</connection>
      <url>http://cvs.apache.org/viewcvs/maven/src/plugins-build/was40/</url>
    </repository>
    <developers>
      <developer>
        <name>Kristen Gillard</name>
        <id>giLBy</id>
        <email>kristen@multitask.com.au</email>
        <organization>Multitask Consulting</organization>
        <roles>
          <role>Developer</role>
        </roles>
      </developer>
    </developers>
  
    <dependencies>
      <dependency>
        <groupId>commons-jelly</groupId>
        <artifactId>commons-jelly-tags-util</artifactId>
        <version>20030211.141939</version>
        <url>http://jakarta.apache.org/commons/jelly/libs/util/</url>
        <properties>
          <classloader>root.maven</classloader>
        </properties>
      </dependency>
    </dependencies>
  </project>
  
  
  
  1.1                  maven/src/plugins-build/was40/plugin.jelly
  
  Index: plugin.jelly
  ===================================================================
  <?xml version="1.0"?>
  
  <project 
           xmlns:define="jelly:define"
           xmlns:j="jelly:core" 
           xmlns:u="jelly:util"
           xmlns:was40wscp="was40wscp">
  
  
    <!-- set up maven.was40.script -->
    <j:choose>
      <j:when test="${systemScope['os.name'].startsWith('Windows')}">
        <j:set var="maven.was40.script" value="${maven.was40.wscpExe}.bat"/>
        <j:set var="maven.was40.startServer.script"
          value="${maven.was40.bin}/adminserver.bat" />
      </j:when>
      <j:otherwise>
        <j:set var="maven.was40.script" value="${maven.was40.wscpExe}.sh"/>
        <j:set var="maven.was40.startServer.script"
          value="${maven.was40.startNode}.sh" />
      </j:otherwise>
    </j:choose>
  
    <!-- set up some tags to make calling wscp easier -->
    <define:taglib uri="was40wscp">
    
    	<!--
    	 ! Execute a command using the WebSphere Control Program
    	 ! @param command the wscp command to execute
    	 ! @param var (optional) a variable to set with the results of the execution
    	 !-->
      <define:tag name="exec">
          <j:if test="${empty(command)}">
            <fail>attribute command must be provided</fail>
          </j:if>
          
          <!-- delete the properties file here and recreate it -->
          <delete file="${maven.build.dir}/was40.properties" />
          <j:file name="${maven.build.dir}/was40.properties" omitXmlDeclaration="true" escapeText="false">
          wscp.hostName=${maven.was40.node}
          </j:file>
          <u:file name="${maven.build.dir}/was40.properties" var="props" />
          
          <echo>Executing '${command}' using wscp</echo>
  		
  		<exec executable="${maven.was40.script}" outputproperty="results">
  		  <arg value="-p" />
  		  <arg value="${props.canonicalPath}" />
            <arg value="${maven.was40.wscpArgs}" />
  		  <arg value="${command}" />
  		</exec>
  
          <j:if test="${empty(var)}">
            <echo>Result: ${results}</echo>
          </j:if>
          <j:if test="${!empty(var)}">
            <j:set scope="parent" var="${var}" value="${results}" />
          </j:if>
  
      </define:tag>
      
    </define:taglib>
  
    <!-- default goal -->
    <goal name="was40"
      description="Obtain the list of nodes on the WebSphere Application Server">
      <attainGoal name="was40:list-node" />
    </goal>
  
    <goal name="was40:start" 
      description="Starts was40 Application Server">
  
  	<echo>Please Wait... Starting node</echo>	
  	<exec executable="${maven.was40.startServer.script}" />
  	    
    </goal>
  
    <goal name="was40:stop" 
      description="Stops a websphere node">
  
  	<echo>Please Wait... Stopping node</echo>	
  	<was40wscp:exec command="${maven.was40.stopNode} /${maven.was40.cmd.node}:${maven.was40.node}/" />	    
    </goal>
     
    <goal name="was40:list-node" description="Obtain the list of nodes on the WebSphere Application Server">
  
  	<echo>Obtaining node name ...Please Wait.</echo>		
  	<was40wscp:exec command="${maven.was40.listNode}" />
  
  	<!-- uncomment to view results and change the above to have var="results"
  	<u:tokenize var="nodeName" delim=":">${results}</u:tokenize>
  	<u:tokenize var="node" delim="/">${nodeName[1]}</u:tokenize>
    
  	<j:set var="maven.was40.node" value="${node[0]}" />
  	<echo>variable: maven.was40.node=${maven.was40.node}</echo>
  	-->
  
    </goal>  
    
    <goal name="was40:deploy-ear" 
      description="Deploy an enterprise application">
  
  	<echo>Please Wait... Deploying enterprise application</echo>	
  	<was40wscp:exec command="${maven.was40.deployApp}" />	
    </goal>
  
    <goal name="was40:app-stop" 
     description="Stop an enterprise application">
  	<echo>Stopping enterprise application</echo>
  	<was40wscp:exec command="${maven.was40.stopApp}" />		
    </goal>	
  
    <goal name="was40:undeploy-ear" 
     description="Remove an enterprise application">
  
  	<echo>Please Wait... Removing enterprise application</echo>	
  	<was40wscp:exec command="${maven.was40.removeApp}" />	
    
    </goal>	
    
    <goal name="was40:app-start" 
     description="Start enterprise application">
  
  	<echo>Please Wait... Starting enterprise application</echo>	
  	<was40wscp:exec command="${maven.was40.startApp}" />	
    
    </goal>	  
  
    <goal name="was40:deploy-to-servergroup" 
     description="Deploy an application to a server group">
  
  	<echo>Please Wait... Deploying enterprise application to server group</echo>	
  	<was40wscp:exec command="${maven.was40.servergroup.install}" />	
    
    </goal>
    
    <goal name="was40:deploy-to-cluster"
      description="Start a websphere application server">
      
      <was40wscp:exec command="${maven.was40.servergroup.cluster}" />
    
    </goal>  
    
    <goal name="was40:start-appserver"
      description="Start a websphere application server">
  
      <was40wscp:exec command="${maven.was40.appserver.start}" />
    
    </goal>
  
    <goal name="was40:stop-appserver"
      description="Stop a websphere application server">
  
      <was40wscp:exec command="${maven.was40.appserver.stop}" />
  
    </goal>
  
    <goal name="was40:start-servergroup"
      description="Start a websphere server group">
  
      <was40wscp:exec command="${maven.was40.servergroup.start}" />
  
    </goal>
  
    <goal name="was40:stop-servergroup"
      description="Stop a websphere server group">
  
      <was40wscp:exec command="${maven.was40.servergroup.stop}" />
  
    </goal>
  
  </project>
  
  
  1.1                  maven/src/plugins-build/was40/.cvsignore
  
  Index: .cvsignore
  ===================================================================
  target
  velocity.log
  maven.log
  
  
  
  1.1                  maven/src/plugins-build/was40/plugin.properties
  
  Index: plugin.properties
  ===================================================================
  #
  # WebSphere Specific variables
  # Change these variables where applicable
  # Here we pass arguments to WSCP and execute wcsp with out being inside the command line
  # of WSCP
  #
  
  maven.was40.wscpArgs=-c
  maven.was40.home=C:/WebSphere/AppServer
  maven.was40.bin=${maven.was40.home}/bin
  maven.was40.wscpExe=${maven.was40.bin}/wscp
  maven.was40.enterprise.app=
  maven.was40.enterprise.app.name=
  maven.was40.appserver=Default\ Server
  maven.was40.serverGroup.name=BogusCity
  maven.was40.node=
  
  #
  # Repetitive commands
  #
  maven.was40.cmd.enterprise=EnterpriseApp
  maven.was40.cmd.serverGroup=ServerGroup
  maven.was40.cmd.appserver=ApplicationServer
  maven.was40.cmd.node=Node
  
  #
  # WebSphere Command Prompt commands to execute
  # Note the '^' is a DOS escape operator:  i.e: Default^ Server
  # Note the '\' is a UNIX escape operator: i.e: Default\ Server
  # Please seperate a space in any given server name by '\' operator as shown above
  #
  
  ############################### Do not put these in "Quotes" ###############################
  
  #
  # Node specific actions
  #
  
  maven.was40.listNode=${maven.was40.cmd.node} list
  maven.was40.stopNode=${maven.was40.cmd.node} stop
  maven.was40.startNode=${maven.was40.bin}/startupServer
  
  #
  # Application specific actions
  #
  
  maven.was40.deployApp=${maven.was40.cmd.enterprise} install {/${maven.was40.cmd.node}:${maven.was40.node}/} ${maven.was40.enterprise.app} -appname {${maven.was40.enterprise.app.name}} -defappserver {/${maven.was40.cmd.node}:${maven.was40.node}/${maven.was40.cmd.appserver}:${maven.was40.appserver}/}
  maven.was40.removeApp=${maven.was40.cmd.enterprise} remove {/${maven.was40.cmd.enterprise}:${maven.was40.enterprise.app.name}/} -recursive
  maven.was40.startApp=${maven.was40.cmd.enterprise} start {/${maven.was40.cmd.enterprise}:${maven.was40.enterprise.app.name}/}
  maven.was40.stopApp=${maven.was40.cmd.enterprise} stop {/${maven.was40.cmd.enterprise}:${maven.was40.enterprise.app.name}/} -force
  
  #
  # Application Server specific tasks
  #
  
  maven.was40.appserver.start=${maven.was40.cmd.appserver} start {/${maven.was40.cmd.node}:${maven.was40.node}/${maven.was40.cmd.appserver}:${maven.was40.appserver}/}
  maven.was40.appserver.stop=${maven.was40.cmd.appserver} stop {/${maven.was40.cmd.node}:${maven.was40.node}/${maven.was40.cmd.appserver}:${maven.was40.appserver}/}
  
  #
  # Server Group specific tasks
  #
  
  maven.was40.servergroup.install=${maven.was40.cmd.enterprise} install {/${maven.was40.cmd.node}:${maven.was40.node}/} ${maven.was40.enterprise.app} -appname {${maven.was40.enterprise.app.name}} -defappserver {/${maven.was40.cmd.serverGroup}:${maven.was40.serverGroup.name}/}
  maven.was40.servergroup.start=${maven.was40.cmd.serverGroup} start {/${maven.was40.cmd.serverGroup}:${maven.was40.serverGroup.name}/}
  maven.was40.servergroup.stop=${maven.was40.cmd.serverGroup} stop {/${maven.was40.cmd.serverGroup}:${maven.was40.serverGroup.name}/}
  maven.was40.servergroup.list=${maven.was40.cmd.serverGroup} list
  maven.was40.servergroup.show=${maven.was40.cmd.serverGroup} show {/${maven.was40.cmd.serverGroup}:${maven.was40.serverGroup.name}/}
  
  ############################### Do not put these in "Quotes" ###############################
  
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org