1. Configure Release Environment

Apache release

  • Configure file prepare.sh by setting your local GPG fingerprint localUser={YOUR_VALUE}

Maven release

As result, you should have the following files in the folder {USER_HOME}/.m2:

  • settings-security.xml file should contain the following content:
    <settingsSecurity>
        <master>{YOUR_MASTER_PASSWORD}</master>
    </settingsSecurity>
    
  • settings.xml file should contain the following content:
    <server>
      <id>apache.snapshots.https</id>
      <username>YOUR_APACHE_USERNAME</username>
      <password>{YOUR_APACHE_PASSWORD}</password>
    </server>
    
    <server>
      <id>apache.releases.https</id>
      <username>YOUR_APACHE_USERNAME</username>
      <password>{YOUR_APACHE_PASSWORD}</password>
    </server>
    
    <profiles>
        <profile>
            <id>gpg</id>
            <activation>
                <activeByDefault>true</activeByDefault>
            </activation>
            <properties>
                <gpg.executable>gpg2</gpg.executable>
                <gpg.passphrase>YOUR_GPG2_PASSPHRASE</gpg.passphrase>
                <gpg.keyname>YOUR_GPG2_KEY_ID</gpg.keyname>
            </properties>
        </profile>
    </profiles>
    
    Note: encrypted passwords must be in curly brackets.

2. Make Apache Release

Note that pom.xml scm tag should contain actual tag name. For example, if version is 0.5.0 and tag name is v0.5.0 following pom scm section should be:

<scm>
    <url>https://github.com/apache/incubator-nlpcraft.git</url>
    <connection>scm:git:ssh://git@github.com/apache/incubator-nlpcraft.git</connection>
    <developerConnection>scm:git:ssh://git@github.com/apache/incubator-nlpcraft.git</developerConnection>
    <!-- Set actual tag name here -->
    <tag>v0.5.0</tag>
</scm>

The following pom.xml files should be updates:

  • nlpcraft/pom.xml
  • nlpcraft-stanford/pom.xml
  • pom.xml

3. Make Maven Release