Comment 8 for bug 1182154

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to config (master)

Reviewed: https://review.openstack.org/31875
Committed: http://github.com/openstack-infra/config/commit/a5d1508fd8a09c1d5660cf6c33f296aa3b263b46
Submitter: Jenkins
Branch: master

commit a5d1508fd8a09c1d5660cf6c33f296aa3b263b46
Author: zaro0508 <email address hidden>
Date: Wed Jun 12 14:26:41 2013 -0700

    make maven versioning and deployment workflow similiar to python

    This commit fixes bug 1182154

    The maven workflow for versioning and deployment is at odds with how
    we like to do it. For versioning, our convention is to get info
    from SCM to set the project build versions. For deployments
    to remote repositories we prefer to use curl instead of mvn deploy
    due to maven security vulnerabilities. Our python builds
    have already been setup to set package versions from SCM and
    deploy to pypi using curl so this commit is to make
    maven versioning and deployments similiar our python
    versioning and deployment workflow.

    This commit does the following:

    Setup a project version string as an environement variable
    so we can pass it to maven builds. The version string is
    retrieved from information in git. This makes the build versioning
    workflow similar to how we build python packages.

      This setup expects a variable called '$project-version' in
      the root 'version' element (i.e. <version>${project-version}</version>)
      of the maven project's pom.xml file.

      For general (throw away CI) builds we do the following:
        1. generate a package 'myplugin.hpi' with version '1.3.0.4.a0bc21f'
           in the MANIFEST.MF file. The '4' is the number of commits since
           last tag.
        2. publish 'myplugin-1.3.0.4.a0bc21f.hpi' to tarballs.o.o

      For release builds we do the following:
        1. generate a package 'myplugin.hpi' with version '1.3.1'
         in the MANIFEST.MF file.
        2. publish 'myplugin-1.3.1.hpi' to tarballs.o.o
        3. publish 'myplugin-1.3.1.hpi' to repo.jenkins-ci.org

    Passes the jenkins credentials from hiera to the pypi slave so
    we can use it to deploy released plugins to repo.jenkins-ci.org

    Creates a generic jenkinsci-upload job that will deploy
    released jenkins plugin artifacts to a remote repository with
    user credentials from hiera. It will use the same curl deployment
    method as the pypi-upload job.

    Change-Id: If1306523a28da94ee970d96b7a788ca116348de7