Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "Automated Builds"

Line 1: Line 1:
The build scripts located in org.eclipse.higgins.auto project (commiters.psf anonymous.psf) performs automated builds of Higgins components on Eclipse build server (build.eclipse.org).
+
The build scripts located in org.eclipse.higgins.auto project ([http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.higgins/builds/org.eclipse.higgins.auto/committer.psf?root=Technology_Project&view=co commiters.psf] [http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.higgins/builds/org.eclipse.higgins.auto/anonymous.psf?root=Technology_Project&view=co anonymous.psf]) performs automated builds of Higgins components on Eclipse build server (build.eclipse.org).
  
 
Right now in order to add new component to the list of the components been build by automated builds it is necessary to perform two tasks:
 
Right now in order to add new component to the list of the components been build by automated builds it is necessary to perform two tasks:

Revision as of 12:35, 3 August 2007

The build scripts located in org.eclipse.higgins.auto project (commiters.psf anonymous.psf) performs automated builds of Higgins components on Eclipse build server (build.eclipse.org).

Right now in order to add new component to the list of the components been build by automated builds it is necessary to perform two tasks:

  • 1.Create dependencies.xml file in the root folder of adding project.
  • 2.Add description of new component to runtime/project.xml file from org.eclipse.higgins.auto project.


Dependencies.xml file.

new

The purpose of dependencies.xml file is to provide information on required projects and libraries.

Current build scripts uses dependencies.xml file with the structure below but it will be changed soon in order to simplify and allow to generate it from Eclipse IDE.

<?xml version="1.0" encoding="UTF-8"?>
	<dependencies id="org.eclipse.higgins.icard.provider.cardspace.common">
		<projects>
			<project>
			<!-- same as for build list file -->
				<id>org.eclipse.higgins.icard</id>
				<version>HEAD</version>
				<repositoryLocation>
					:pserver:anonymous@dev.eclipse.org:/cvsroot/technology
				</repositoryLocation>
				<password></password>
				<path>
					org.eclipse.higgins/plugins/org.eclipse.higgins.icard
				</path>
			</project>
			<project>
				<id>org.eclipse.higgins.registry</id>
				<version>HEAD</version>
				<repositoryLocation>
					:pserver:anonymous@dev.eclipse.org:/cvsroot/technology
				</repositoryLocation>
				<password></password>
				<path>
					org.eclipse.higgins/plugins/org.eclipse.higgins.registry
				</path>
			</project>
		</projects>
		<remoteLibs>
		<!-- libs that should be downloaded to the project -->
			<libraries>
				<!-- pace in project where *.jar or *.zip libs should be stored-->
				<location>lib</location>
					<!-- URL where library is available -->
				<url>
					http://shangrila.parityinc.net:8888/projects_deps/commons-logging-1.1.jar
				</url>
				<url>
					http://shangrila.parityinc.net:8888/projects_deps/serializer.jar
				</url>
			</libraries>
			<libraries>
				<location>lib1</location>
				<url>
					http://shangrila.parityinc.net:8888/projects_deps/commons-logging-1.1.jar
				</url>
			</libraries>
		</remoteLibs>
	</dependencies>


Description of a component in the runtime/project.xml file.


Description of a component describes which targets to run from the component’s build file and a location where build results will be placed for downloads.

Right now it also contains information on where to get the component but soon this information will be moved to some “global repository”.

Below is an example of currently used description of a component .

<buildProject>
<!-- project identifier-->
	<id>org.eclipse.higgins.hbx</id>
	<!-- CVS version tag -->
	<version>HEAD</version>
	<!-- repository identification string -->
	<repositoryLocation>
		:pserver:anonymous@dev.eclipse.org:/cvsroot/technology
	</repositoryLocation>
	<!-- password -->
	<password></password>
	<!-- path from CVS root to the project location -->
	<path>org.eclipse.higgins/app/firefox/bx/XPCom</path>
	<!-- path from webHome to plase build -->
	<pathFromWebHome>hbx</pathFromWebHome>
	<!-- path from webHome to place updates (optional) update don't happen if not exists-->
	<updatePath>hbx/update</updatePath>
	<!-- prevent source zip (optional) ignored if contains false -->
	<noSource></noSource>
	<!-- prevent publish, don't creates index.html (optional) ignored if contains false -->
	<noPublish />
	<!-- targets to run --> 
	<targetToRun>xpi</targetToRun>
	<targetToRun>jar</targetToRun>
</buildProject>

Helper targets.


Helper target calls after execution of target from projects build.xml file to ${finishDir}. Helper target can contain some transformation (for example: zip task). In current version of auto builder implemented helper targets for {plugin, jar, javadoc, xpi} targets. To add possibility of new target execution need add new target with name «on_<newTargetToRunName>» witch will move results of newTargetToRunName execution to ${finishDir}with ziping or some other transformation (if necessary).

Back to the top