Uploaded image for project: 'Wicket'
  1. Wicket
  2. WICKET-3294

Use Apache Nexus to stage releases for voting and for release into maven central

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • None
    • site, wicket
    • None

    Description

      This issue from June 2010 was about deploying the 1.4.x-SNAPSHOT and 1.5-SNAPSHOT releases into the Apache Nexus Maven Repository: https://issues.apache.org/jira/browse/WICKET-2918

      This issue is about switching from the current release method to use the staging facilities provided through https://repository.apache.org

      There is an issue with the metadata contained in the maven central repository being out of date that this issue will hopefully resolve as a side effect: https://issues.sonatype.org/browse/MVNCENTRAL-28

      This is the apache documentation for publishing maven artifacts through repository.apache.org:
      http://www.apache.org/dev/publishing-maven-artifacts.html

      According to it that page the distribution management section in the parent org.apache:apache:8 pom contains the details for staging. So what needs to happen is that the parent pom.xml is upgraded from version 7 to version 8 and that the release profiles are adjusted so that only the <site> entry is contained in the distribution management sections.

      There are some settings mentioned that need to go into the deployers local ~/.m2/settings.xml but I am assuming that it is going to be close to what is used for the current release process.

      Then when the deploy part the release is run the jar, javadoc and source artifacts will be signed and uploaded into a staging repository. You login to the repository.apache.org page and on the left hand side you should be able to see a 'Staging Repository' link and clicking it will show a table listing the staged repositories.

      The url associated with each staged repository doesn't work for reading until it has been closed. So if you encounter a bug in the deployment part you can fix it and continue with any old artifacts just overwriting what was previously uploaded. Then within the nexus interface you right click on the row (not on the url part) and select 'close' from the options.

      Once closed the url can be used for the release vote. If the vote fails the staged repository can be dropped. If the vote succeeds then the staged repository can be promoted into a real release. At least in oss.sonatype.org within 1 hour of the promotion the artifact will be synced into the central maven repository.

      It should be possible to test out this improvement ahead of the next release by just deploying into a staged repository and then dropping it if everything is added properly.

      I will attach the modified /trunk/pom.xml and /branches/wicket-1.4.x/pom.xml versions that should let this work.

      Attachments

        1. wicket-1.4.x-pom.xml.diff
          1 kB
          Michael O'Cleirigh
        2. wicket-1.5.x-pom.xml.diff
          1 kB
          Michael O'Cleirigh
        3. release.md.diff
          7 kB
          Michael O'Cleirigh
        4. release.md-2.diff
          8 kB
          Michael O'Cleirigh

        Issue Links

          Activity

            People

              ivaynberg Igor Vaynberg
              michael.ocleirigh Michael O'Cleirigh
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: