You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@nutch.apache.org by "Chris A. Mattmann (JIRA)" <ji...@apache.org> on 2010/10/28 15:56:28 UTC

[jira] Issue Comment Edited: (NUTCH-825) Publish nutch artifacts to central maven repository

    [ https://issues.apache.org/jira/browse/NUTCH-825?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12925811#action_12925811 ] 

Chris A. Mattmann edited comment on NUTCH-825 at 10/28/10 9:55 AM:
-------------------------------------------------------------------

- fix committed to trunk in r1028294. The fix includes the following ant targets:

{code}release{code}
Builds the -javadoc.jar, -sources.jar and artfiact.jar to deploy to Apache Nexus.

{code}deploy{code}
Deploys the 3 release artifacts by signing them, checkusmming them, and then pushing them to the Apache Nexus staging repository. After that, the release manager should follow the Nexus process to close the staging repository, and then to release it if everything looks well.

These changes require the release manager to do the following things:

1. create an apache-release profile in their $HOME/.m2/settings.xml file. It should contain the following information:

{code}
<settings>
   <servers>
    <!-- To publish a snapshot of some part of Maven -->
    <server>
      <id>apache.snapshots.https</id>
      <username>username</username>
      <password>password</password>
    </server>
    <!-- To publish a website of some part of Maven -->
    <server>
      <id>apache.website</id>
      <username>username</username>
      <filePermissions>664</filePermissions>
      <directoryPermissions>775</directoryPermissions>
    </server>
    <!-- To stage a release of some part of Maven -->
    <server>
      <id>apache.releases.https</id>
      <username>username</username>
      <password>password</password>
    </server>
  ...
  </servers>
  <profiles>
      <profile>
        <id>apache-release</id>
        <properties>
          <gpg.passphrase>passphrase</gpg.passphrase>
        </properties>
      </profile>
  ..
 </profiles>
</settings>
{code}

2. Install the Maven Ant tasks plugin in your $ANT_HOME/lib directory. You can get the plugin here: http://maven.apache.org/ant-tasks/index.html

Note, publishing to Apache Nexus doesn't mean you are automatically publishing to Maven Central. Maven Central syncs from Nexus (repository.apache.org) on some regular interval so Central will pick up the syncs, but at a later date/time usually.

Additionally: I didn't change the build to use Maven, so those Ant guys out there can sleep soundly :) I needed to add the pom.xml and Maven ant tasks to integrate Maven's easy publishing ability to Maven Central into our Ant build, using the Sonatype guide here: https://docs.sonatype.org/display/Repository/Sonatype+OSS+Maven+Repository+Usage+Guide


      was (Author: chrismattmann):
    - fix committed to trunk in r1028294. The fix includes the following ant targets:

{code}release{code}
Builds the -javadoc.jar, -sources.jar and artfiact.jar to deploy to Apache Nexus.

{code}deploy{code}
Deploys the 3 release artifacts by signing them, checkusmming them, and then pushing them to the Apache Nexus staging repository. After that, the release manager should follow the Nexus process to close the staging repository, and then to release it if everything looks well.

These changes require the release manager to do the following things:

1. create an apache-release profile in their $HOME/.m2/settings.xml file. It should contain the following information:

{code}
<settings>
   <servers>
    <!-- To publish a snapshot of some part of Maven -->
    <server>
      <id>apache.snapshots.https</id>
      <username>username</username>
      <password>password</password>
    </server>
    <!-- To publish a website of some part of Maven -->
    <server>
      <id>apache.website</id>
      <username>username</username>
      <filePermissions>664</filePermissions>
      <directoryPermissions>775</directoryPermissions>
    </server>
    <!-- To stage a release of some part of Maven -->
    <server>
      <id>apache.releases.https</id>
      <username>username</username>
      <password>password</password>
    </server>
  ...
  </servers>
  <profiles>
      <profile>
        <id>apache-release</id>
        <properties>
          <gpg.passphrase>passphrase</gpg.passphrase>
        </properties>
      </profile>
  ..
 </profiles>
</settings>

2. Install the Maven Ant tasks plugin in your $ANT_HOME/lib directory. You can get the plugin here: http://maven.apache.org/ant-tasks/index.html

Note, publishing to Apache Nexus doesn't mean you are automatically publishing to Maven Central. Maven Central syncs from Nexus (repository.apache.org) on some regular interval so Central will pick up the syncs, but at a later date/time usually.

Additionally: I didn't change the build to use Maven, so those Ant guys out there can sleep soundly :) I needed to add the pom.xml and Maven ant tasks to integrate Maven's easy publishing ability to Maven Central into our Ant build, using the Sonatype guide here: https://docs.sonatype.org/display/Repository/Sonatype+OSS+Maven+Repository+Usage+Guide

  
> Publish nutch artifacts to central maven repository
> ---------------------------------------------------
>
>                 Key: NUTCH-825
>                 URL: https://issues.apache.org/jira/browse/NUTCH-825
>             Project: Nutch
>          Issue Type: New Feature
>            Reporter: Enis Soztutar
>            Assignee: Chris A. Mattmann
>             Fix For: 2.0
>
>
> As per the discussion at NUTCH-821, publishing nutch artifacts to maven will be nice. NUTCH-821 already introduces dependency management with ivy. As for the remaining, ant task for generating pom files should be developed, and artifacts should be published to maven repo by a committer after a release. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.