Uploaded image for project: 'Nuxeo Platform'
  1. Nuxeo Platform
  2. NXP-21007

The packages release script must be able to reuse release values from other packages

    XMLWordPrintable

    Details

    • Type: New Feature
    • Status: Resolved
    • Priority: Critical
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 8.10
    • Component/s: Dev Tools
    • Upgrade notes:
      Hide

      The marketplace.ini file can now use Python variables interpolation.
      More parameters are dumped in the release log by scripts/release.py.
      New option "-d" in scripts/release_mp.py for the "default configuration".

      Show
      The marketplace.ini file can now use Python variables interpolation. More parameters are dumped in the release log by scripts/release.py. New option "-d" in scripts/release_mp.py for the "default configuration".
    • Sprint:
      DevOps-13

      Description

      When releasing diff-pictures, we need to know the release values of diff and dam.
      Needed changes:

      • add a -d option to release_mp.py for reading the default values coming from the release-nuxeo.log file produced by release.py
      • export current SNAPSHOT value
      • in release_mp.py, store release values per package and pass the resulting dictionary to each call of release.py per package, using it to interpolate variables
      • allow maintenance_version to use auto-increment-policy values instead of an explicit version
      • add auto_major_no_zero to match Nuxeo LTS policy

      Current

      current marketplace.ini extract
      [DEFAULT]
      other_versions = 8.10-SNAPSHOT/TAG/9.1-SNAPSHOT
      branch = master
      tag = auto
      next_snapshot = auto
      maintenance_version = auto
      mp_to_upload = marketplace/target/marketplace*.zip
      skipTests = False
      skipITs = False
      auto_increment_policy = auto_patch
      
      [marketplace-diff]
      mp_to_upload = marketplace/target/nuxeo-diff*.zip
      #next_snapshot = 1.7.0-SNAPSHOT
      #maintenance_version = 1.6.6-SNAPSHOT
      
      [marketplace-dam]
      #next_snapshot = 6.2.0-SNAPSHOT
      #maintenance_version = 6.1.5-SNAPSHOT
      
      [marketplace-diff-pictures]
      mp_to_upload = marketplace/target/nuxeo-diff-pictures*.zip
      #next_snapshot = 1.1.0-SNAPSHOT
      #maintenance_version = 1.0.3-SNAPSHOT
      #depends on marketplace-diff 1.7.3 and marketplace-dam 6.2.3
      other_versions = 8.10-SNAPSHOT/TAG/9.1-SNAPSHOT,1.7.3-SNAPSHOT/1.7.3/1.8.0-SNAPSHOT,6.2.3-SNAPSHOT/6.2.3/6.3.0-SNAPSHOT
      
      current package release
      wget $MARKETPLACE_INI -O $WORKSPACE/marketplace.ini
      sed -i "s/TAG/$TAG/" $WORKSPACE/marketplace.ini
      sed -i "s/is_final=True/is_final=$FINAL/" nuxeo/scripts/release_mp.py
      $> ./scripts/release_mp.py clone -m file://$WORKSPACE/marketplace.ini
      

      Expected for datebased release

      unchanged release-nuxeo.log extract
      BRANCH=master
      SNAPSHOT=8.10-SNAPSHOT
      TAG=8.10-I20161114_0126
      NEXT_SNAPSHOT=8.10-SNAPSHOT
      FINAL=False
      
      expected marketplace.ini extract
      [DEFAULT]
      other_versions = %nuxeo-snapshot%/%nuxeo-tag%/%nuxeo-next-snapshot%
      branch = %nuxeo-branch%
      tag = auto
      next_snapshot = auto
      maintenance_version = auto
      final=%nuxeo-final%
      mp_to_upload = marketplace/target/marketplace*.zip
      skipTests = False
      skipITs = False
      auto_increment_policy = auto_patch
      
      [marketplace-diff]
      mp_to_upload = marketplace/target/nuxeo-diff*.zip
      
      [marketplace-dam]
      
      [marketplace-diff-pictures]
      mp_to_upload = marketplace/target/nuxeo-diff-pictures*.zip
      #depends on marketplace-diff and marketplace-dam
      other_versions = %nuxeo-snapshot%/%nuxeo-tag%/%nuxeo-next-snapshot%,\
                       %marketplace-diff-snapshot%/%marketplace-diff-tag%/%marketplace-diff-next-snapshot%,\
                       %marketplace-dam-snapshot%/%marketplace-dam-tag%/%marketplace-dam-next-snapshot%
      
      expected package release
      $> ./scripts/release_mp.py clone -m $MARKETPLACE_INI -d $WORKSPACE/release-nuxeo.log
      

      Expected for final release (LTS for instance)

      unchanged release-nuxeo.log extract
      BRANCH=master
      SNAPSHOT=8.10-SNAPSHOT
      TAG=8.10
      NEXT_SNAPSHOT=9.1-SNAPSHOT
      MAINTENANCE=8.10-HF01-SNAPSHOT
      FINAL=True
      AUTO_INCREMENT_POLICY=auto_major
      
      expected marketplace.ini extract
      [DEFAULT]
      other_versions = %nuxeo-snapshot%/%nuxeo-tag%/%nuxeo-next-snapshot%
      branch = %nuxeo-branch%
      tag = auto
      next_snapshot = auto
      maintenance_version = auto_patch
      final=%nuxeo-final%
      mp_to_upload = marketplace/target/marketplace*.zip
      skipTests = False
      skipITs = False
      auto_increment_policy = auto_minor
      
      [marketplace-diff]
      mp_to_upload = marketplace/target/nuxeo-diff*.zip
      
      [marketplace-dam]
      
      [marketplace-diff-pictures]
      mp_to_upload = marketplace/target/nuxeo-diff-pictures*.zip
      #depends on marketplace-diff and marketplace-dam
      other_versions = %nuxeo-snapshot%/%nuxeo-tag%/%nuxeo-next-snapshot%,\
                       %marketplace-diff-snapshot%/%marketplace-diff-tag%/%marketplace-diff-next-snapshot%,\
                       %marketplace-dam-snapshot%/%marketplace-dam-tag%/%marketplace-dam-next-snapshot%
      
      expected package release
      $> ./scripts/release_mp.py clone -m $MARKETPLACE_INI -d $WORKSPACE/release-nuxeo.log
      

        Attachments

          Issue Links

            Activity

              People

              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: