【发布时间】:2011-03-30 22:54:39
【问题描述】:
我当前的代码(build.xml)使我能够在成功构建时发送电子邮件,但是当失败时,什么也没有发生。通过类似于“ ........ -DrepositoryAddress=%1 -DbuildResultUUID=%2 startPublish ”的命令从 build.bat 文件调用目标(对于所有目标,按 startActivity->startPublish->mailer- >startActivity)。
现在,我还想在构建失败时收到电子邮件通知。我想 trycatch 会帮助我完成任务,但是如何?不确定它,在哪里/如何放置它(编辑它?)?我有点用过 trycatch,它给了我类似“问题:未能创建任务或键入 trycatch”的信息。当前脚本/xml 文件中需要进行哪些修改才能启用发送指示构建状态(成功或失败)的电子邮件的功能。请指导/帮助。非常感谢。
'
<target name="startActivity">
<fail message="Missing repositoryAddress" unless="repositoryAddress"/>
<fail message="Missing buildResultUUID" unless="buildResultUUID"/>
<fail message="Missing activityLabel" unless="activityLabel"/>
<!-- Replace ADMIN with your real credentials. -->
<startBuildActivity
buildResultUUID="${buildResultUUID}"
label="${activityLabel}"
autoComplete="true"
repositoryAddress="${repositoryAddress}"
userId="BuildAdmin"
password="Abc1234"/>
</target>
<target name="startPublish">
<sleep seconds="10"/>
<fail message="Missing repositoryAddress" unless="repositoryAddress"/>
<fail message="Missing buildResultUUID" unless="buildResultUUID"/>
<artifactfilePublisher repositoryAddress="${repositoryAddress}"
userId="BuildAdmin"
password="Abc1234"
buildResultUUID="${buildResultUUID}"
filePath="E:\Setup.msi"
label="Installer" />
</target>
<target name="mailer">
<property name="report" value="E:\Report.html"/>
<mail from="dmin@company.com" messagemimetype="text/html" charset="ISO-7779-1" messagefile="${report}" mailhost="HMMMM.company.com" mailport="25" tolist="admin@company.com" subject="Build status" />
</target>
<taskdef name="startBuildActivity"
classname="com.ibm.team.build.ant.task.StartBuildActivityTask" />
<taskdef name="artifactfilePublisher"
classname="com.ibm.team.build.ant.task.ArtifactFilePublisherTask" />
</project>'
【问题讨论】:
标签: unit-testing ant build build-process build-automation