]> source.dussan.org Git - poi.git/commitdiff
remove ant release logic (not used for our releases and dependent on libs that don...
authorPJ Fanning <fanningpj@apache.org>
Tue, 16 Jan 2024 10:15:36 +0000 (10:15 +0000)
committerPJ Fanning <fanningpj@apache.org>
Tue, 16 Jan 2024 10:15:36 +0000 (10:15 +0000)
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1915264 13f79535-47bb-0310-9956-ffa450edef68

build.xml

index 03bf696cb7d8b3bbad0bf8be5b04408da36e1fda..7d56d61f363f70f1f63ddef8d6e31a70458b4719 100644 (file)
--- a/build.xml
+++ b/build.xml
@@ -396,27 +396,6 @@ under the License.
     <!-- jars required for maven helper targets -->
     <dependency prefix="maven.ant" artifact="org.apache.maven:maven-ant-tasks:2.1.3" usage="util"/>
 
-    <!-- subclipse.tigris.org is gone - left-over is hosted at https://bintray.com/openmeetings/maven/org.tigris.subclipse.svnant -->
-    <!-- request will be forwarded to d29vzk4ow07wi7.cloudfront.net which is an Atlassian Marketplace instance -->
-    <dependency prefix="dist.svnant" artifact="org.tigris.subclipse:svnant:1.3.1" usage="util"
-        repo="https://dl.bintray.com/openmeetings/maven"/>
-
-    <!-- hosted at https://bintray.com/subclipse/maven/svnclientadapter - https://github.com/subclipse/svnclientadapter -->
-    <dependency prefix="dist.svnclientadapter-base" artifact="org.tigris.svnclientadapter:adapter-base:1.12.0" usage="util"
-        repo="https://dl.bintray.com/subclipse/maven"/>
-    <dependency prefix="dist.svnclientadapter-svnkit" artifact="org.tigris.svnclientadapter:adapter-svnkit:1.12.0" usage="util"
-        repo="https://dl.bintray.com/subclipse/maven"/>
-    <dependency prefix="dist.svnclientadapter-javahl" artifact="org.tigris.svnclientadapter:adapter-javahl:1.12.0" usage="util"
-        repo="https://dl.bintray.com/subclipse/maven"/>
-    <dependency prefix="dist.svnkit" artifact="org.tmatesoft.svnkit:svnkit:1.10.1" usage="util"/>
-    <dependency prefix="dist.svnkit-javahl16" artifact="org.tmatesoft.svnkit:svnkit-javahl16:1.10.1" usage="util"/>
-    <dependency prefix="dist.sqljet" artifact="org.tmatesoft.sqljet:sqljet:1.1.13" usage="util"/>
-    <dependency prefix="dist.antlr" artifact="org.antlr:antlr-runtime:3.5.2" usage="util"/>
-    <dependency prefix="dist.sequence-library" artifact="de.regnis.q.sequence:sequence-library:1.0.4" usage="util"/>
-    <dependency prefix="dist.lz4-java" artifact="org.lz4:lz4-java:1.7.1" usage="util"/>
-
-
-
     <propertyset id="junit.properties">
         <propertyref name="POI.testdata.path"/>
         <propertyref name="java.awt.headless"/>
@@ -921,38 +900,6 @@ under the License.
         <downloadfile src="${pdf.graphics2d.url}" dest="${pdf.graphics2d.jar}"/>
     </target>
 
-    <target name="check-svn-jars">
-        <condition property="svn.jars.present">
-            <or>
-                <and>
-                    <available file="${dist.svnant.jar}"/>
-                    <available file="${dist.svnclientadapter-base.jar}"/>
-                    <available file="${dist.svnclientadapter-svnkit.jar}"/>
-                    <available file="${dist.svnclientadapter-javahl.jar}"/>
-                    <available file="${dist.svnkit.jar}"/>
-                    <available file="${dist.svnkit-javahl16.jar}"/>
-                    <available file="${dist.sqljet.jar}"/>
-                    <available file="${dist.antlr.jar}"/>
-                    <available file="${dist.sequence-library.jar}"/>
-                    <available file="${dist.lz4-java.jar}"/>
-                </and>
-                <isset property="disconnected"/>
-            </or>
-        </condition>
-    </target>
-    <target name="fetch-svn-jars" depends="check-svn-jars" unless="svn.jars.present">
-        <!-- some jars are gone since bintray.dl is shutting down, so we started to include them in the sources for now -->
-        <copy todir="lib/util">
-            <fileset dir="lib.stored/" includes="*.jar"/>
-        </copy>
-        <downloadfile src="${dist.svnkit.url}" dest="${dist.svnkit.jar}"/>
-        <downloadfile src="${dist.svnkit-javahl16.url}" dest="${dist.svnkit-javahl16.jar}"/>
-        <downloadfile src="${dist.sqljet.url}" dest="${dist.sqljet.jar}"/>
-        <downloadfile src="${dist.antlr.url}" dest="${dist.antlr.jar}"/>
-        <downloadfile src="${dist.sequence-library.url}" dest="${dist.sequence-library.jar}"/>
-        <downloadfile src="${dist.lz4-java.url}" dest="${dist.lz4-java.jar}"/>
-    </target>
-
     <target name="check-compiled-ooxml-xsds">
         <condition property="ooxml-compiled-xsds.present">
             <and>
@@ -2458,7 +2405,7 @@ under the License.
 
     <!-- continuous integration targets -->
     <target name="jenkins"
-        depends="replaceVersion, compile, test-all, jar, javadocs, assemble, findbugs, release-notes, rat-check, forbidden-apis-check, help, fetch-svn-jars, maventask"
+        depends="replaceVersion, compile, test-all, jar, javadocs, assemble, findbugs, release-notes, rat-check, forbidden-apis-check, help, maventask"
         description="Target run by Jenkins on a continuous basis. Builds and tests POI, generates artifacts and documentation, and searches for problems."/>
 
     <target name="maventask" depends="init">
@@ -2842,273 +2789,6 @@ under the License.
         <nexus-upload artifactId="poi-scratchpad"/>
     </target>
 
-    <macrodef name="nexus-upload">
-        <attribute name="artifactId"/>
-        <sequential>
-            <local name="repo"/>
-            <property name="repo" location="build/repo/@{artifactId}"/>
-
-            <copy todir="${repo}">
-                <mappedresources>
-                    <!-- add sha-512 when nexus rules are updated (1/2) -->
-                    <fileset dir="build/dist/maven" includes="@{artifactId}/**" excludes="**/*.sha512,**/*.sha256"/>
-                    <regexpmapper from="^([^/]+)/(.*)$$" to="org/apache/poi/\1/${version.id}/\2" handledirsep="true"/>
-                </mappedresources>
-            </copy>
-
-            <local name="lastUpdated"/>
-            <tstamp>
-                <format property="lastUpdated" pattern="yyyyMMddHHmmss" timezone="UTC"/>
-            </tstamp>
-
-            <local name="metadir"/>
-            <property name="metadir" location="${repo}/org/apache/poi/@{artifactId}"/>
-
-            <echo file="${metadir}/maven-metadata.xml"><![CDATA[<?xml version="1.0" encoding="UTF-8"?>
-<metadata>
-  <groupId>org.apache.poi</groupId>
-  <artifactId>@{artifactId}</artifactId>
-  <versioning>
-    <latest>${version.id}</latest>
-    <release>${version.id}</release>
-    <versions>
-      <version>${version.id}</version>
-    </versions>
-    <lastUpdated>${lastUpdated}</lastUpdated>
-  </versioning>
-</metadata>]]></echo>
-            <fixcrlf srcdir="${metadir}" includes="maven-metadata.xml" eol="unix" eof="remove" />
-            <!-- add sha-512 when nexus rules are updated (2/2) -->
-            <!--checksum algorithm="SHA-512" fileext=".sha512" format="MD5SUM">
-                <fileset dir="${metadir}" includes="maven-metadata.xml"/>
-            </checksum-->
-            <checksum algorithm="sha1" format="MD5SUM">
-                <fileset dir="${metadir}" includes="maven-metadata.xml"/>
-            </checksum>
-            <checksum algorithm="md5" format="MD5SUM">
-                <fileset dir="${metadir}" includes="maven-metadata.xml"/>
-            </checksum>
-
-            <fixcrlf srcDir="${metadir}" includes="*.md5,*.sha1,*.sha256,*.sha512" eol="unix"/>
-
-            <downloadfile src="${dist.nexus-staging.url}" dest="${dist.nexus-staging.jar}"/>
-            <taskdef uri="antlib:org.sonatype.nexus.ant.staging" resource="org/sonatype/nexus/ant/staging/antlib.xml">
-                <classpath><pathelement path="${dist.nexus-staging.jar}"/></classpath>
-            </taskdef>
-
-            <staging:stageLocally description="@{artifactId} ${version.id}">
-                <staging:nexusStagingInfo stagingDirectory="build/nexus-stage/@{artifactId}"/>
-                <fileset dir="${repo}" />
-            </staging:stageLocally>
-
-            <!-- if this throws a "... dh keypair ..." exception, use Java 7+ for executing the task -->
-            <staging:stageRemotely description="@{artifactId} ${version.id}">
-                <staging:nexusStagingInfo stagingDirectory="build/nexus-stage/@{artifactId}">
-                    <staging:projectInfo groupId="org.apache.poi" artifactId="@{artifactId}" version="${version.id}" />
-                    <staging:connectionInfo baseUrl="https://repository.apache.org/">
-                        <staging:authentication username="${settings.apache-id.username}" password="${settings.apache-id.password}" />
-                    </staging:connectionInfo>
-                </staging:nexusStagingInfo>
-            </staging:stageRemotely>
-        </sequential>
-    </macrodef>
-
-    <target name="-init-svn" depends="init,fetch-svn-jars,load-maven-server-settings">
-        <!-- JAVA_HOME needs to point to a JRE/JDK7+, otherwise the svn/https connection throws a "Could not generate DH keypair"-->
-        <fail message="Environment needs to point to Java 8+">
-            <condition>
-                <or>
-                    <equals arg1="${ant.java.version}" arg2="1.7"/>
-                    <equals arg1="${ant.java.version}" arg2="1.6"/>
-                    <equals arg1="${ant.java.version}" arg2="1.5"/>
-                </or>
-            </condition>
-        </fail>
-
-        <path id="path.svnant">
-            <pathelement location="${dist.svnant.jar}"/>
-            <pathelement location="${dist.svnclientadapter-base.jar}"/>
-            <pathelement location="${dist.svnclientadapter-svnkit.jar}"/>
-            <pathelement location="${dist.svnclientadapter-javahl.jar}"/>
-            <pathelement location="${dist.svnkit.jar}"/>
-            <pathelement location="${dist.svnkit-javahl16.jar}"/>
-            <pathelement location="${dist.sqljet.jar}"/>
-            <pathelement location="${dist.antlr.jar}"/>
-            <pathelement location="${dist.sequence-library.jar}"/>
-            <pathelement location="${dist.lz4-java.jar}"/>
-        </path>
-        <taskdef resource="org/tigris/subversion/svnant/svnantlib.xml" classpathref="path.svnant"/>
-
-        <svnSetting
-            svnkit="true"
-            javahl="false"
-            username="${settings.apache-id.username}"
-            password="${settings.apache-id.password}"
-            id="svn.settings"
-        />
-    </target>
-
-    <target name="release-prep0" depends="-init-svn" description="check to make sure the release tag doesn't exist yet">
-        <!-- verify that svn username/password are valid ... -->
-        <fail message="Unable to connect to SVN repo. Verify apache-id username and password. If these are correct, change the release-prep0 target to check over http, which would indicate a problem with your https setup.">
-            <condition>
-                <not><svnExists refid="svn.settings" target="https://svn.apache.org/repos/asf/poi/"/></not>
-            </condition>
-        </fail>
-
-        <!-- verify that the release tag that we're about to create in release-prep1 does not already exist (no overwriting tags!) -->
-        <fail message="Cannot create release tag. https://svn.apache.org/repos/asf/poi/tags/${RELEASE_TAG} already exists. Verify the requested release version (${version.id}).">
-            <condition>
-                <svnExists refid="svn.settings" target="https://svn.apache.org/repos/asf/poi/tags/${RELEASE_TAG}/"/>
-            </condition>
-        </fail>
-    </target>
-
-    <!-- experimental release preparation ... tbd. ... -->
-    <target name="release-prep1" depends="-init-svn,release-prep0" description="update the documentation and create the svn tag - needs Java7+">
-        <local name="tstamp_rel"/>
-        <local name="tstamp_next"/>
-        <local name="rel_next"/>
-        <tstamp>
-            <format property="tstamp_rel" pattern="yyyy-MM-dd" offset="7" unit="day"/>
-            <format property="tstamp_next" pattern="yyyy-MM" offset="3" unit="month"/>
-        </tstamp>
-
-        <taskdef name="NextRelease" classname="NextRelease" classpath="poi-excelant/build/poi-ant-contrib"/>
-        <NextRelease property="rel_next"/>
-
-        <antcall target="-update-build.xml">
-            <param name="version_id" value="${version.id}"/>
-        </antcall>
-
-        <replaceregexp byline="true">
-            <regexp pattern="&lt;release.*date=&quot;.*\?\?&quot;&gt;"/>
-            <substitution expression="&lt;!-- release version=&quot;${rel_next}&quot; date=&quot;${tstamp_next}-??&quot;&gt;&#10;    &lt;/release --&gt;&#10;&#10;    &lt;release version=&quot;${version.id}&quot; date=&quot;${tstamp_rel}&quot;&gt;"/>
-            <fileset dir="src/documentation/content/xdocs">
-              <include name="changes.xml"/>
-            </fileset>
-        </replaceregexp>
-
-        <fixcrlf srcdir="." includes="src/documentation/content/xdocs/changes.xml" eol="unix" eof="remove" />
-
-        <!-- can't combine updating and pinning of the documentation ... so we need two commits -->
-        <!-- (revision)properties can't be set and read within one svn block -->
-        <echo message="updating build.xml and changes.xml"/>
-        <exec command="svn ci --username ${settings.apache-id.username} --password ${settings.apache-id.password} -m 'release prepare for ${version.id} - updating build.xml and changes.xml' build.xml src/documentation/content/xdocs/changes.xml"/>
-        <svn refid="svn.settings">
-            <!--<commit message="release prepare for ${version.id} - updating build.xml and changes.xml" recurse="false">
-                <fileset dir="." includes="build.xml,src/documentation/content/xdocs/changes.xml"/>
-            </commit>-->
-            <update dir="." recurse="true"/>
-            <status path="." revisionProperty="svn_version1"/>
-        </svn>
-        <echo message="pin documentation - release ${svn_version1}"/>
-        <exec command="svn ci --username ${settings.apache-id.username} --password ${settings.apache-id.password} -m 'release prepare for ${version.id} - pin documentation' src"/>
-        <svn refid="svn.settings">
-            <propset path="src" name="svn:externals" value="documentation -r${svn_version1} https://svn.apache.org/repos/asf/poi/site/src/documentation"/>
-<!--            <commit message="release prepare for ${version.id} - pin documentation" dir="src" recurse="false"/>-->
-            <update dir="." recurse="true"/>
-            <status path="." revisionProperty="svn_version2"/>
-        </svn>
-        <echo message="create release tag"/>
-        <svn refid="svn.settings">
-            <copy
-                srcUrl="https://svn.apache.org/repos/asf/poi/trunk"
-                destUrl="https://svn.apache.org/repos/asf/poi/tags/${RELEASE_TAG}"
-                message="tag r${svn_version2} as ${version.id}"/>
-        </svn>
-
-        <!-- update build.xml to the next snapshot version -->
-        <antcall target="-update-build.xml">
-            <param name="version_id" value="${rel_next}"/>
-        </antcall>
-
-        <!-- unpin documentation and commit next snapshot version -->
-        <svn refid="svn.settings">
-            <update dir="." recurse="true"/>
-            <propset path="src" name="svn:externals" value="documentation https://svn.apache.org/repos/asf/poi/site/src/documentation"/>
-            <!--<commit message="prepare for ${rel_next}" recurse="false">
-                <fileset dir="." includes="build.xml"/>
-                <dirset dir="src"/>
-            </commit>-->
-        </svn>
-        <exec command="svn ci --username ${settings.apache-id.username} --password ${settings.apache-id.password} -m 'prepare for ${rel_next}' build.xml src poi*"/>
-
-        <mkdir dir="build/release"/>
-
-        <svn refid="svn.settings">
-            <checkout url="https://svn.apache.org/repos/asf/poi/tags/${RELEASE_TAG}" destPath="build/release" ignoreExternals="false"/>
-        </svn>
-    </target>
-
-    <target name="release-prep2" depends="init" description="compile the freshly checked out svn tag and upload it to the nexus - needs a JDK6">
-        <!-- JAVA_HOME needs to point to a JDK8, otherwise the ant invocation is failing on a missing javac -->
-        <fail message="Environment needs to point to a Java 8 JDK">
-            <condition>
-                <not><equals arg1="${ant.java.version}" arg2="1.8"/></not>
-            </condition>
-        </fail>
-
-        <local name="DSTAMP"/>
-        <tstamp>
-            <format property="DSTAMP" pattern="yyyyMMdd" offset="7" unit="day"/>
-        </tstamp>
-
-        <ant dir="build/release" inheritAll="false" inheritRefs="false" useNativeBasedir="true">
-            <property name="DSTAMP" value="${DSTAMP}"/>
-            <target name="dist" />
-        </ant>
-    </target>
-
-    <target name="release-prep3" depends="-init-svn" description="write the dist to the release candidate repo - needs Java7+">
-        <ant dir="build/release" inheritAll="false" inheritRefs="false" useNativeBasedir="true">
-            <target name="dist-nexus" />
-        </ant>
-
-        <svn refid="svn.settings">
-            <import path="build/release/build/dist"
-                url="https://dist.apache.org/repos/dist/dev/poi"
-                newEntry="${version.id}-${release.rc}"
-                message="release candidate POI ${version.id}"/>
-        </svn>
-    </target>
-
-    <target name="release-finish" description="write the dist to the release candidate repo - needs Java7+">
-        <!--svn refid="svn.settings">
-            <update dir="." recurse="true"/>
-        </svn-->
-        <local name="rel_prev"/>
-        <local name="file_date"/>
-        <local name="file_date_iso"/>
-
-        <tstamp>
-            <!-- usually overwritten by a command line argument -->
-            <!-- for convenience this is kept in the same format as in the release-prep call  -->
-            <format property="file_date" pattern="yyyyMMdd" locale="US"/>
-        </tstamp>
-
-
-        <taskdef name="NextRelease" classname="NextRelease" classpath="poi-excelant/build/poi-ant-contrib"/>
-        <NextRelease property="rel_prev" increment="-1"/>
-
-        <!-- we don't simply generate a new iso file date with tstamp,
-            but potentially use the date given as an argument to ant -->
-        <loadresource property="file_date_iso">
-            <string>${file_date}</string>
-            <filterchain>
-                <replaceregex pattern="([0-9]{4})([0-9]{2})([0-9]{2})" replace="\1-\2-\3"/>
-            </filterchain>
-        </loadresource>
-
-        <replaceregexp file="build.gradle" match="( +version += +)'[^']+'" replace="\1'${version.id}'"/>
-        <replaceregexp file="poi-examples/src/main/groovy/build.gradle" match="( *compile 'org.apache.poi:[^0-9]+)([0-9.]+)'" replace="\1${rel_prev}'" byline="true"/>
-        <replaceregexp file="poi-examples/src/main/scala/build.sbt" match='( *org.apache.poi.* ")[0-9.]+(.+)' replace="\1${rel_prev}\2" byline="true"/>
-        <replaceregexp file="osgi/pom.xml" match="version>${rel_prev}[^&lt;]+" replace="version>${version.id}"/>
-        <replaceregexp file="doap_POI.rdf" match="&lt;release&gt;" replace="&lt;release&gt;&#10;      &lt;Version&gt;&#10;        &lt;name&gt;Apache POI ${rel_prev}&lt;/name&gt;&#10;        &lt;created&gt;${file_date_iso}&lt;/created&gt;&#10;        &lt;revision&gt;${rel_prev}&lt;/revision&gt;&#10;      &lt;/Version&gt;&#10;    &lt;/release&gt;&#10;    &lt;release&gt;"/>
-    </target>
-
-
-
     <target name="-update-build.xml">
         <replaceregexp byline="true">
             <regexp pattern="(&lt;property name=&quot;version.id&quot; value=&quot;)[^&quot;]+(&quot;/>)"/>