You are viewing a plain text version of this content. The canonical link for it is here.
Posted to solr-commits@lucene.apache.org by gs...@apache.org on 2008/09/19 17:07:17 UTC
svn commit: r697123 - in /lucene/solr/trunk: CHANGES.txt build.xml
common-build.xml
Author: gsingers
Date: Fri Sep 19 08:07:17 2008
New Revision: 697123
URL: http://svn.apache.org/viewvc?rev=697123&view=rev
Log:
SOLR-776: artifact signing
Modified:
lucene/solr/trunk/CHANGES.txt
lucene/solr/trunk/build.xml
lucene/solr/trunk/common-build.xml
Modified: lucene/solr/trunk/CHANGES.txt
URL: http://svn.apache.org/viewvc/lucene/solr/trunk/CHANGES.txt?rev=697123&r1=697122&r2=697123&view=diff
==============================================================================
--- lucene/solr/trunk/CHANGES.txt (original)
+++ lucene/solr/trunk/CHANGES.txt Fri Sep 19 08:07:17 2008
@@ -50,7 +50,8 @@
Build
----------------------
-
+ 1. SOLR-776: Added in ability to sign artifacts via Ant for releases (gsingers)
+
Documentation
----------------------
Modified: lucene/solr/trunk/build.xml
URL: http://svn.apache.org/viewvc/lucene/solr/trunk/build.xml?rev=697123&r1=697122&r2=697123&view=diff
==============================================================================
--- lucene/solr/trunk/build.xml (original)
+++ lucene/solr/trunk/build.xml Fri Sep 19 08:07:17 2008
@@ -712,21 +712,47 @@
<arg value="update"/>
</exec>
</target>
- <target name="prepare-release" depends="clean, svn-up, build-site, package" description="Prototype helper for Committers. Assumes gpg is in the path">
- <exec executable="gpg">
- <arg value="--armor"/>
- <arg value="--output"/>
- <arg value="${dist}/${fullnamever}.tgz.asc"/>
- <arg value="--detach-sig"/>
- <arg value="${dist}/${fullnamever}.tgz"/>
- </exec>
- <exec executable="gpg">
- <arg value="--armor"/>
- <arg value="--output"/>
- <arg value="${dist}/${fullnamever}.zip.asc"/>
- <arg value="--detach-sig"/>
- <arg value="${dist}/${fullnamever}.zip"/>
- </exec>
+
+ <target name="clean-dist-signatures">
+ <delete failonerror="false">
+ <fileset dir="${dist}">
+ <include name="**/*.asc"/>
+ </fileset>
+ </delete>
+ </target>
+ <target name="sign-artifacts" depends="clean-dist-signatures">
+ <!--<input message="Enter signature passphrase" addproperty="passphrase"/>
+ <touch file="${user.home}/.pwd.txt"/>
+ <chmod file="${user.home}/.pwd.txt" perm="600"/>
+ <echo file="${user.home}/.pwd.txt">${passphrase}</echo>-->
+ <sign-artifact input.file="${dist}/${fullnamever}.tgz" output.file="${dist}/${fullnamever}.tgz.asc"/>
+ <sign-artifact input.file="${dist}/${fullnamever}.zip" output.file="${dist}/${fullnamever}.zip.asc"/>
+
+ <!-- Maven artifacts -->
+ <sign-maven-artifacts artifact.id="solr-common"/>
+ <sign-maven-dependency-artifacts artifact.id="solr-commons-csv"/>
+ <sign-maven-artifacts artifact.id="solr-core"/>
+ <sign-maven-artifacts artifact.id="solr-dataimporthandler"/>
+ <sign-maven-dependency-artifacts artifact.id="solr-lucene-analyzers"/>
+ <sign-maven-dependency-artifacts artifact.id="solr-lucene-core"/>
+ <sign-maven-dependency-artifacts artifact.id="solr-lucene-highlighter"/>
+ <sign-maven-dependency-artifacts artifact.id="solr-lucene-queries"/>
+ <sign-maven-dependency-artifacts artifact.id="solr-lucene-snowball"/>
+ <sign-maven-dependency-artifacts artifact.id="solr-lucene-spellchecker"/>
+ <sign-maven-artifacts artifact.id="solr-solrj"/>
+
+ <!-- Thes are special since there are no jars, just poms -->
+ <sign-artifact input.file="${maven.dist.prefix}/solr-parent/${maven_version}/solr-parent-${maven_version}.pom"/>
+ <sign-artifact input.file="${maven.dist.prefix}/solr-lucene-contrib/${maven_version}/solr-lucene-contrib-${maven_version}.pom"/>
+
+ <!--<delete file="${user.home}/.pwd.txt"/>-->
+ </target>
+
+
+
+
+ <target name="prepare-release" depends="clean, svn-up, build-site, package, sign-artifacts" description="Prototype helper for Committers. Assumes gpg is in the path">
+
<tar destfile="${dist}/solr-maven.tar">
<tarfileset dir="${dist}/maven" prefix="maven"/>
</tar>
@@ -738,6 +764,14 @@
<target name="generate-maven-artifacts" depends="maven.ant.tasks-check, create-package">
<sequential>
+ <!--
+
+ !!!!!!!!!!
+ NOTE: If you add new artifacts, please make sure you also add to the sign-artifacts target
+ so that they get signed during release.
+ !!!!!!!
+ -->
+
<mkdir dir="${maven.build.dir}"/>
<mkdir dir="${maven.dist.dir}"/>
Modified: lucene/solr/trunk/common-build.xml
URL: http://svn.apache.org/viewvc/lucene/solr/trunk/common-build.xml?rev=697123&r1=697122&r2=697123&view=diff
==============================================================================
--- lucene/solr/trunk/common-build.xml (original)
+++ lucene/solr/trunk/common-build.xml Fri Sep 19 08:07:17 2008
@@ -101,6 +101,8 @@
<property name="maven.build.dir" value="${basedir}/build/maven"/>
<property name="maven.dist.dir" value="${basedir}/dist/maven"/>
+ <property name="maven.dist.prefix" value="${maven.dist.dir}/org/apache/solr"/>
+
<!-- The version suffix of the Lucene artifacts checked into "lib" -->
<property name="lucene_version" value="2.4-dev"/>
<!-- The version number to assign to the Maven artifacts. -->
@@ -267,6 +269,51 @@
</sequential>
</macrodef>
+ <macrodef name="sign-artifact" description="Signs the artifact">
+ <attribute name="input.file"/>
+ <attribute name="output.file" default="@{input.file}.asc"/>
+ <!--<attribute name="password.file" default="${user.home}/.pwd.txt"/>-->
+ <sequential>
+ <echo >Signing @{input.file} Sig File: @{output.file}</echo><!--Pass: @{password.file}-->
+
+ <exec executable="gpg" > <!--input="@{password.file}"-->
+ <arg value="--armor"/>
+ <arg value="--output"/>
+ <arg value="@{output.file}"/>
+ <arg value="--detach-sig"/>
+ <arg value="@{input.file}"/>
+ </exec>
+ </sequential>
+ </macrodef>
+
+ <!--
+ We need to sign:
+ The POM
+ The library jar
+ The sources jar
+ the javadoc jar
+ -->
+ <macrodef name="sign-maven-artifacts" description="Signs maven artifacts">
+ <attribute name="artifact.id"/>
+ <attribute name="prefix.dir" default="${maven.dist.prefix}"/>
+ <attribute name="maven.version" default="${maven_version}"/>
+ <sequential>
+ <sign-artifact input.file="@{prefix.dir}/@{artifact.id}/@{maven.version}/@{artifact.id}-@{maven.version}.jar"/>
+ <sign-artifact input.file="@{prefix.dir}/@{artifact.id}/@{maven.version}/@{artifact.id}-@{maven.version}-javadoc.jar"/>
+ <sign-artifact input.file="@{prefix.dir}/@{artifact.id}/@{maven.version}/@{artifact.id}-@{maven.version}-sources.jar"/>
+ </sequential>
+ </macrodef>
+
+ <macrodef name="sign-maven-dependency-artifacts" description="Signs maven artifacts">
+ <attribute name="artifact.id"/>
+ <attribute name="prefix.dir" default="${maven.dist.prefix}"/>
+ <attribute name="maven.version" default="${maven_version}"/>
+ <sequential>
+ <sign-artifact input.file="@{prefix.dir}/@{artifact.id}/@{maven.version}/@{artifact.id}-@{maven.version}.jar"/>
+ </sequential>
+ </macrodef>
+
+
<target name="clean-contrib"
description="Cleans all contrib modules and their tests">
<contrib-crawl target="clean"/>