You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by sc...@apache.org on 2022/06/08 20:38:21 UTC
[tomcat] branch 8.5.x updated: Add pre-release target to write build-release.properties prior to builds. When using this target along with a release, Apache ant version 1.10.2 or later is required.
This is an automated email from the ASF dual-hosted git repository.
schultz pushed a commit to branch 8.5.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git
The following commit(s) were added to refs/heads/8.5.x by this push:
new deaa16950e Add pre-release target to write build-release.properties prior to builds. When using this target along with a release, Apache ant version 1.10.2 or later is required.
deaa16950e is described below
commit deaa16950e899b665df5d589f3b1f67810e3ebdc
Author: Christopher Schultz <ch...@christopherschultz.net>
AuthorDate: Wed Jun 8 16:36:42 2022 -0400
Add pre-release target to write build-release.properties prior to builds.
When using this target along with a release, Apache ant version 1.10.2 or later is required.
---
build.xml | 53 ++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 file changed, 52 insertions(+), 1 deletion(-)
diff --git a/build.xml b/build.xml
index 800652df99..4e920afb65 100644
--- a/build.xml
+++ b/build.xml
@@ -2229,8 +2229,59 @@ skip.installer property in build.properties" />
<hashAndSign file="${tomcat.release}/v${version}/bin/${final.name}.exe" />
</target>
+ <target name="-pre-release-lone-target-check">
+ <fail message="The pre-release target must be called all on its own. Specifically, you must run 'ant release' /after/ 'and pre-release' in order to properly configure the build.">
+ <condition>
+ <not>
+ <equals arg1="${ant.project.invoked-targets}" arg2="pre-release" />
+ </not>
+ </condition>
+ </fail>
+ </target>
+
+ <target name="-ant-version-check" if="ant.tstamp.now.iso">
+ <antversion property="ant.current.version" />
+ <fail message="This build process requires ant 1.10.2 in order to use ant.tstamp.now.iso for reproducible builds, but you are running ant ${ant.current.version}.">
+ <condition>
+ <not>
+ <antversion atleast="1.10.2" />
+ </not>
+ </condition>
+ </fail>
+ </target>
+
+ <target name="-pre-release-read-asf-username" unless="release.asfusername">
+ <input message="Enter ASF username" addproperty="release.asfusername" defaultValue="${user.name}" />
+ </target>
+
+ <target name="pre-release" depends="-pre-release-lone-target-check, -pre-release-read-asf-username, -ant-version-check" description="Prepares for a release build by writing build-release.properties which contains information about the release-build environment.">
+ <tstamp>
+ <format pattern="yyyy-MM-dd'T'HH:mm:ss'Z'" property="now-readable" timezone="UTC" />
+ </tstamp>
+ <echo file="build-release.properties">
+# These ant.tstamp properties specify the build-timestamp for repeatable builds.
+ant.tstamp.now.iso=${now-readable}
+# This is the ASF user who is the Release Manager for this release.
+release.asfusername=${release.asfusername}
+# Set the version-suffix to "" (empty string) as this is not a development release.
+version.suffix=
+# Release build environment information:
+release.java.version=${java.version}
+release.java.vm.name=${java.vm.name}
+release.java.vm.version=${java.vm.version}
+release.os=${os.arch} ${os.name} ${os.version}
+release.default.file.encoding=${file.encoding}
+release.ant.version=${ant.version}
+</echo>
+ <echo file="res/maven/mvn.properties">
+asf.ldap.username=${release.asfusername}
+gpg.exec=${gpg.exec}
+maven.asf.release.deploy.version=${version}
+</echo>
+ </target>
+
<target name="release"
- depends="clean,release-init,dist-deployer,installer-sign,package-zip,package-winzip,package-tgz,package-deployer-zip,package-deployer-tgz,javadoc,package-docs-tgz,package-src-zip,package-src-tgz,package-src-jar"
+ depends="-ant-version-check,clean,release-init,dist-deployer,installer-sign,package-zip,package-winzip,package-tgz,package-deployer-zip,package-deployer-tgz,javadoc,package-docs-tgz,package-src-zip,package-src-tgz,package-src-jar"
description="Create a Tomcat packaged distribution">
<copy file="KEYS"
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org