blob: 675790332f402af32698565354a54b98b70042f7 [file] [log] [blame]
<?xml version="1.0"?>
<!--
Copyright (c) 2017, 2018 Eike Stepper (Loehne, Germany) and others.
All rights reserved. This program and the accompanying materials
are made available under the terms of the Eclipse Public License v1.0
which accompanies this distribution, and is available at
http://www.eclipse.org/legal/epl-v10.html
Contributors:
Eike Stepper - initial API and implementation
-->
<project name="build-info" default="build-info">
<property file="ant.properties" />
<property environment="env" />
<delete>
<fileset dir="${env.WORKSPACE}">
<include name="build-info.properties"/>
<include name="build-info.xml"/>
</fileset>
</delete>
<taskdef resource="net/sf/antcontrib/antlib.xml">
<classpath>
<pathelement location="lib/ant-contrib-1.0b3.jar" />
</classpath>
</taskdef>
<target name="build-info">
<!-- build.trigger -->
<if>
<not>
<isset property="build.trigger" />
</not>
<then>
<xmlproperty keeproot="false">
<url url="${env.BUILD_URL}/api/xml?tree=actions[causes[shortDescription]]" />
</xmlproperty>
<loadresource property="build.trigger">
<propertyresource name="action.cause.shortDescription" />
<filterchain>
<replaceregex pattern="^Triggered by an " replace="" />
<replaceregex pattern="^Triggered by " replace="" />
<replaceregex pattern="^Started by an " replace="" />
<replaceregex pattern="^Started by " replace="" />
<replaceregex pattern="^Gerrit: .*" replace="gerrit" />
</filterchain>
</loadresource>
</then>
</if>
<!-- build.type -->
<if>
<equals arg1="${env.BUILD_TYPE}" arg2="&lt;default&gt;" />
<then>
<condition property="build.type" value="${weekly}" else="N">
<equals arg1="${build.trigger}" arg2="timer" />
</condition>
</then>
<else>
<property name="build.type" value="${env.BUILD_TYPE}" />
</else>
</if>
<!-- build.sign -->
<if>
<equals arg1="${build.type}" arg2="N" />
<then>
<property name="build.sign" value="false" />
<delete file="${env.WORKSPACE}/signing.marker" failonerror="false" />
</then>
<else>
<property name="build.sign" value="true" />
<touch file="${env.WORKSPACE}/signing.marker" />
</else>
</if>
<!-- build.qualifier -->
<property name="build.qualifier.date" value="${env.BUILD_TIMESTAMP}" />
<property name="build.qualifier" value="${build.type}${build.qualifier.date}" />
<property name="build.version" value="v${build.qualifier.date}" />
<!-- build-info.xml -->
<echoxml file="${env.WORKSPACE}/build-info.xml">
<build stream="${stream}"
branch="${branch}"
train="${train}"
eclipse="${eclipse}"
emf="${emf}"
type="${build.type}"
timestamp="${build.qualifier.date}"
qualifier="${build.qualifier}"
trigger="${build.trigger}"
hudson="${env.HUDSON_URL}"
revision="${env.GIT_COMMIT}"
job="${env.JOB_NAME}"
number="${env.BUILD_NUMBER}" />
</echoxml>
<!-- build-info.properties -->
<echoproperties prefix="build." destfile="${env.WORKSPACE}/build-info.properties" />
<!-- Echo -->
<echo message="stream = ${stream}" />
<echo message="branch = ${branch}" />
<echo message="train = ${train}" />
<echo message="build.type = ${build.type}" />
<echo message="build.sign = ${build.sign}" />
<echo message="build.trigger = ${build.trigger}" />
<echo message="build.qualifier = ${build.qualifier}" />
</target>
</project>