Here you will find information on how to set up various tools
and configurations needed when releasing Apache UIMA™ artifacts.
First, be sure you've done the general
one-time-setup.
The rest of the setup is taken from various other sources around Apache
(links below).
-
Settings.xml
file:
Create and/or update your Maven settings.xml file (located where your local repo is).
Follow these instructions (but
ignore the last line about needing to be a member of group apcvs
and maven
).
Use Maven's
password encryption capabilities to encrypt your LDAP password, used to log on to
the server for uploading things to the Apache Nexus Repositories (both SNAPSHOTs and Staging).
Your settings file should not contain your GPG passphrase, to avoid the security
risk inherent in having this in a file stored on your machine. Instead, it should have lines
like these:
<gpg.useagent>true</gpg.useagent>
<!--gpg.passphrase></gpg.passphrase--> <!-- don't put passphrase in file -->
These lines go in your settings.xml file, inside a <profile> that is active when the signing is needed
(you can just make it active always, too), inside a <properties> element, like so:
<properties>
<gpg.useagent>true</gpg.useagent>
...
</properties>
Here is a sample settings.xml profile:
<settings xmlns="https://maven.apache.org/POM/4.0.0"
xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="https://maven.apache.org/POM/4.0.0
https://maven.apache.org/xsd/settings-1.0.0.xsd">
<profiles>
<profile>
<id>local-build-configuration</id>
<!-- Use <activeProfiles>
<activeProfile>local-build-configuration</activeProfile>
</activeProfiles>
outside of the <profile> element. See example at bottom.
<properties>
<uima-maven-build-eclipse-home>C:/p/eclipse/3.5/eclipse</uima-maven-build-eclipse-home>
<uimaWebsiteDistributionUrl>file:///c:/a/uimaWebsite/</uimaWebsiteDistributionUrl>
<gpg.useagent>true</gpg.useagent>
</properties>
</profile>
</profiles>
<!-- activeProfiles - a list of profiles that are active for all builds -->
<activeProfiles>
<activeProfile>local-build-configuration</activeProfile>
</activeProfiles>
</settings>
-
Create (if you haven't already) your GPG keys; see
Making GPG Keys.
The UIMA project KEYS file is stored in SVN in the trunk/uima-website/docs/KEYS file.
Please add your exported public key to the bottom of this file, and commit the change.
Also, checkout and update the KEYS file at the top level of our release distribution, located
at https://dist.apache.org/repos/dist/release/uima/KEYS.
- You need to have a recent GPG client installed;
the recent ones support the capability to have a window pop up
when
the passphrase is needed - so you never need to put the passphrase into a file. And,
they remember this, so if you're signing a bunch of things, you only need to put in the
passphrase once (it forgets/resets after a few minutes).
I've found https://www.gpg4win.org/
has this kind of support, for Windows XP.
See the main gpg site
https://www.gnupg.org/ for references
to other implementations.
-
You need a current version of the SVN client, Subversion (1.6) installed and on your shell's path.
See https://subversion.apache.org/
At least one person has had success using the client from Collabnet on Windows.
- You need Java 1.5. (Our builds should be done with 1.5 to catch any accidental use of 1.6-only
methods).
- Set the environmental variable
MAVEN_OPTS
to "-Xmx800m -XX:MaxPermSize=256m"
(these may be too large, but they currently work).
- Download and install Maven 3.0-beta-1 (or later), and set it up to be on the PATH.