Uploaded image for project: 'UY'
  1. UY
  2. UY-638

Automate Unity release


    • Type: Task
    • Status: Done
    • Priority: Medium
    • Resolution: Done
    • Affects Version/s: None
    • Fix Version/s: v2.3.0
    • Labels:
    • Story Points:


      Assembla ticket #647 | Author Krzysztof Benedyczak | Created on 19 Sep 2017 15:35

      The task is to prepare Jenkins configuration which should be triggered manually only.
      The build should:

      1. Merge dev -> master
      2. Tag and deploy the main code on master branch (mvn release:prepare && mvn release:perform)
      3. Deploy the documentation: on the tagged version mvn clean package site && mvn site:deploy
      4. Build the final packages from tag, including RPM (testing skipped at this stage)
      5. Perform an update on the testbed to the final packages:
        1. use tar.gz version for this process
        2. old version should be preserved and the new one installed in a directory next to it (with released version number in folder name)
        3. new version should be reconfigured to use the same configuration as the previous one (most likely a shared config directory)
        4. old version stopped, new started
        5. new version should be checked with some test REST calls
      6. Upload the final packages to SF to a new folder
      7. Merge master -> dev
      8. In dev: update branch version to the next minor/major number, leaving master at default (next revision): mvn versions:set -DgenerateBackupPoms=false -DnewVersion=1.X.0-SNAPSHOT
      9. In dev: Update the documentation module version in pom to the snapshot version from dev branch

      Important point to resolve: update to the new version on testbed can reasonably fail if there were mandatory configuration changes. Until we automatic support config migration this must be somehow taken into account. Perfectly: possibility to resume the release process after manual fixing of configs for the new version.

      If possible the released version (parameter to mvn release:prepare should be settable in build parameters.

      Finally the https://app.assembla.com/spaces/unity-public/wiki/Release_process needs to be updated with the new process.




            • Assignee:
              piotrpiernik Piotr Piernik
              golbi Krzysztof Benedyczak
            • Votes:
              0 Vote for this issue
              2 Start watching this issue


              • Created: